Vbscript 在OpenOffice上的调用

来源:互联网 发布:android 移动网络 编辑:程序博客网 时间:2024/05/21 13:54

首先看了一篇入门

链接地址: http://dns2.ocean-pioneer.com/wordpress/docum/openoffice_automatic.pdf

根据入门琢磨了一些内容 留档.


'初始化对象管理对象Set oSM = CreateObject("com.sun.star.ServiceManager")'openoffice的桌面管理对象Set oDesktop = oSM.createInstance("com.sun.star.frame.Desktop")Dim aArgs()'打开excel 电子表格      scalc Excel   swriter wordSet oDoc = oDesktop.loadComponentFromURL("file:///c:/a.xls","_blank",0,aArgs)'取第一页Set oSheet = oDoc.getSheets().getByIndex(0)'sheet的页数oDoc.getSheets().getCount'遍历mNames = oDoc.getSheets().getElementNamesFor i=LBound(mNames) To UBound(mNames)'   MsgBox mNames(i)Next'这个是查看某个对象下面所有的方法和属性'可以再OpenOffice 里面的宏里面调试'MsgBox oDesktop.DBG_Properties'MsgBox oDesktop.DBG_methods'赋值Call oSheet.getCellByPosition(0,0).SetValue(11111)Call oSheet.getCellByPosition(1,1).SetString("11111")'取值oSheet.getCellByPosition(0,0).getValueoSheet.getCellByPosition(1,1).getString'赋值 取值的另外的方法'oSheet.getCellRangeByName("A3").Value = "444"'MsgBox oSheet.getCellRangeByName("A3").ValueSet dispatcher = oSM.createInstance("com.sun.star.frame.DispatchHelper")Set document = oDesktop.CurrentComponent.CurrentController.Frame'选中单元格Call oDesktop.CurrentComponent.CurrentController.select(oSheet.getCellRangeByName("A1"))'超链接dim args2(5)Set args2(0) = MakePropertyValue("Hyperlink.Text","C:\\a.txt")Set args2(1) = MakePropertyValue("Hyperlink.URL","Songs")Set args2(2) = MakePropertyValue("Hyperlink.Target","")Set args2(3) = MakePropertyValue("Hyperlink.Name","")Set args2(4) = MakePropertyValue("Hyperlink.Type",1)Call dispatcher.executeDispatch(document, ".uno:SetHyperlink", "", 0, args2)'修改字体Dim t1(2)Set t1(0) = MakePropertyValue("FontHeight.Height",14)Call dispatcher.executeDispatch(document,".uno:FontHeight","",0,t1)'保存文件Dim args1(1)Set args1(0) = MakePropertyValue("URL","file:///C:/a11132.xls")Set args1(1) = MakePropertyValue("FilterName","MS Excel 97")Call dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1)Function MakePropertyValue(cName,cValue)    Dim oPropertyValue    Dim oSM    Set oSM = CreateObject("com.sun.star.ServiceManager")    Set oPropertyValue = oSM.Bridge_GetStruct("com.sun.star.beans.PropertyValue")    oPropertyValue.Name = cName    oPropertyValue.Value = cValue    Set MakePropertyValue = oPropertyValueEnd Function





0 0
原创粉丝点击