PB OLE控制EXCEL的全面认识

合集下载

利用Excel进行数据表的权限控制和保护

利用Excel进行数据表的权限控制和保护

利用Excel进行数据表的权限控制和保护在进行数据处理和管理工作时,我们经常需要对Excel数据表进行权限控制和保护。

Excel提供了一些功能,可以帮助我们确保数据的安全性并限制用户对数据表的访问和修改。

本文将介绍如何利用Excel进行数据表的权限控制和保护。

1. 设置工作表密码首先,我们可以为Excel工作表设置密码,以限制用户对工作表的访问。

打开Excel文件后,选择需要保护的工作表,然后点击“工具”菜单中的“保护”选项,再选择“工作表”选项。

在弹出的对话框中,输入所需的密码并确认。

设置密码后,只有输入正确密码的人才能打开和编辑该工作表。

2. 限制单元格的编辑权限除了整个工作表的保护,我们还可以对单元格进行权限控制,以限制用户对特定单元格的编辑。

选中需要限制权限的单元格或区域,然后点击“格式”菜单中的“单元格”选项。

在弹出的对话框中,切换到“保护”标签页,并勾选“锁定”选项。

然后,点击“工具”菜单中的“保护”选项,再选择“工作表”选项来保护工作表。

此时,已设置为锁定的单元格将无法编辑。

3. 分配不同的用户权限如果需要给不同的用户分配不同的权限,我们可以利用Excel的“保护工作表”功能。

选择需要分配权限的工作表后,点击“工具”菜单中的“保护”选项,然后选择“保护工作表”。

在弹出的对话框中,可以设置不同的选项来控制用户对工作表的权限,例如允许用户进行筛选、排序、插入或删除行列等操作。

4. 隐藏和保护公式当涉及到包含敏感数据的公式时,我们可能需要隐藏和保护这些公式,以确保数据的安全性。

选中包含公式的单元格或区域后,点击“格式”菜单中的“单元格”选项,在弹出的对话框中切换到“保护”标签页,并取消勾选“锁定”选项。

然后,点击“工具”菜单中的“保护”选项,再选择“工作表”选项来保护工作表。

5. 导出和共享受保护的数据表在完成数据表的权限控制和保护后,我们可以选择将受保护的数据表导出或共享给其他人。

点击“文件”菜单中的“另存为”选项,在弹出的对话框中选择保存的位置和文件格式,然后点击“保存”。

PB操作Excel文件

PB操作Excel文件

PB调用EXCEL的操作不失为一种好的报表输出方式2009-05-15 23:17 928人阅读评论(0) 收藏举报对于较为中国化的报表,虽然后dw这个坚强后盾,但是也难不住繁复疲劳的应对。

不过我们可以知道,数据的输出,都是居于table的栏位或者计算字段。

只是很多统计的模式和展现模式不同。

我在一年前作完一个系统,可是客户几乎隔三差五有新的东东要输出报表。

终于我发现。

让客户先在excel里弄好,然后再写程序来输出也是一个不错的方法。

关键是,客户给的东西不必要再进自己的系统,所以数据不会发生什么问题。

如果本身软件有任何问题,那能从excel里的写的结果很容易看得出来。

虽然写excel表格要花很多时间,但是减少了输入导入和输出的一些麻烦。

转载excel操作大全:powerbuilder操作excel命令大全(例子的有些地方不对!)2006-12-04 16:431.创建Excel对象eole=CREATEOBJEC T(′Excel.application′)2.添加新工作簿eole.Workbooks.add3.设置第3个工作表为激活工作表eole.Worksheets(″sheet3″).Activate4.打开指定工作簿eole.Workbooks.Open(″c:/temp/ll.xls″)5.显示Excel窗口eole.visible=.t.6.更改Excel标题栏eole.Caption=″VFP应用程序调用Microsoft Excel″7.给单元格赋值eole.cells(1,4).value=XM(XM为数据库字段名)8.设置指定列的宽度(单位:字符个数)eole.ActiveSheet.Columns(1).ColumnWidth=59.设置指定行的高度(单位:磅)eole.ActiveSheet.Rows(1).RowHeight=1/0.035(设定行高为1厘米,1磅=0.035厘米)10.在第18行之前插入分页符eole.Worksheets(″Sheet1″).Rows(18).P ageBreak=111.在第4列之前删除分页符eole.ActiveSheet.Columns(4).PageBreak=012.指定边框线宽度(Borders参数如下)ole.ActiveSheet.Range(″b3:d3″).Borders(2).Weight=313.设置四个边框线条的类型eole.ActiveSheet.Range(″b3:d3″).Borders(2).LineStyle=1(其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线)14.设置页眉eole.ActiveSheet.PageSetup.CenterHeader=″报表1″15.设置页脚eole.ActiveSheet.PageSetup.CenterFooter=″第&P页″16.设置页眉到顶端边距为2厘米eole.ActiveSheet.PageSetup.HeaderMargin=2/0.03517.设置页脚到底边距为3厘米eole.ActiveSheet.PageSetup.FooterMargin=3/0.03518.设置顶边距为2厘米eole.ActiveSheet.PageSetup.TopMargin=2/0.035 19.设置底边距为4厘米eole.ActiveSheet.PageSetup.BottomMargin=4/0.035 20.设置左边距为2厘米veole.ActiveSheet.PageSetup.LeftMargin=2/0.035 21.设置右边距为2厘米eole.ActiveSheet.PageSetup.RightMargin=2/0.035 22.设置页面水平居中eole.ActiveSheet.PageSetup.CenterHorizontally=.t. 23.设置页面垂直居中eole.ActiveSheet.PageSetup.CenterVertically=.t. 24.设置页面纸张大小(1-窄行8 5 11 39-宽行14 11) eole.ActiveSheet.PageSetup.PaperSize=125.打印单元格网线eole.ActiveSheet.PageSetup.PrintGridlines=.t.26.拷贝整个工作表edRange.Copy27.拷贝指定区域eole.ActiveSheet.Range(″A1:E2″).Copy28.粘贴eole.WorkSheet(″Sheet2″).Range(″A1″).PasteSpecial 29.在第2行之前插入一行eole.ActiveSheet.Rows(2).Insert30.在第2列之前插入一列eole.ActiveSheet.Columns(2).Insert31.设置字体eole.ActiveSheet.Cells(2,1)=″黑体″32.设置字体大小eole.ActiveSheet.Cells(1,1).Font.Size=25 33.设置字体为斜体eole.ActiveSheet.Cells(1,1).Font.Italic=.t. 34.设置整列字体为粗体eole.ActiveSheet.Columns(1).Font.Bold=.t. 35.清除单元格公式eole.ActiveSheet.Cells(1,4).ClearContents 36.打印预览工作表eole.ActiveSheet.PrintPreview37.打印输出工作表eole.ActiveSheet.PrintOut38.工作表另为eole.ActiveWorkbook.SaveAs(″c:/temp/22.xls″) 39.放弃存盘eole.ActiveWorkbook.saved=.t.40.关闭工作簿eole.Workbooks.close41.退出Exceleole.quit42 合并string worksheet,beginRowcol,EndRowColMyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol ":" EndRowCol).Select MyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol ":" EndRowCol).Merge43 sheet改名MyOLE.ActiveWorkBook.Sheets(olename).selectMyOLE.ActiveWorkBook.Sheets(olename).name=newnameMyOLE=Create OLEObjectConnectErr=MyOLE.ConnectToNewObject ("excel.Application")MyOLE.visible=false//打开指定的XLS文件激活workbooksMyOLE.application.workbooks.Open (FilePath)//对XLS文件进行了改动以后,在关闭该文件时是否需要向用户提出警告。

PB对excel的操作

PB对excel的操作

Pb中对Excel文件的应用Oleobject ole_object//建立OLE对象ole_object=create oleobject//创建对象integer li_retli_ret=ole_object.connecttoobject( " ", "Excel.Application ")//建立连接if li_ret <> 0 then//如果Excel还没有打开,则新建。

li_ret=ole_object.ConnectToNewObject( "Excel.Application ")if li_ret <> 0thenmessagebox( "OLE错误", "OLE无法连接!错误号:"+string(li_ret))returnend ifole_object.Visible=trueend ifpointer oldpointer//设置鼠标oldpointer=setpointer(HourGlass!)ole_object.Workbooks.Add//新建工作薄ole_object.Application.DisplayAlerts=False//关闭警告消息对话框,防止提示ole_object.Application.Workbooks.Open(as_exccccccccccccccccccccccccccccccccccel_filename)/ /打开Excel文件//ole_object.Application.ActiveWorkbook.SaveAs(as_text_filename,-4158)//把打开的Excel文件另存为//Text文件,第二参数表示数据以制表符TAB分隔ole_object.Application.Quit()//退出Excelole_object.activeworkbook.saved=true//放弃存盘ole_object.workbooks.close//关闭工作簿ole_object.Cells(1,1).Value=reptitleole_object.Range( 'A1 ').Selectole_object.Selection.Font.Size=24ole_object.selection.HorizontalAlignment=3//水平对齐方式:ole_object.Range( 'A1: '+f_columname(ll_colnum)+ '1 ').Selectole_object.Range( 'A1: '+f_columname(ll_colnum)+ '1 ').Mergeole_object.Columns(i).ColumnWidth=ld_widthole_object.Columns(i).HorizontalAlignment=3ole_object.Columns(i).Borders.LineStyle=1ole_object.Columns(i).Font.Bold=Trueole_object.cells(i,j).NumberFormat= "@ "ole_object.cells(i,j).Font.Bold=falseole_object.cells(i,j).value=ls_valueOLE_edRange.Rows.CountSheets.Add基本操作:Ole_object.Workbooks.add//新建一个Excel文件Ole_object.Workbooks.Open( "FileName ")//打开一个已存在Excel文件Ole_object.ActiveWorkBook.Sheets( "SheetName ").Select//选择文件中一个工作表Ole_object.Application.Run( "MacroName ")//运行宏Ole_object.Application.Visible=TRUE//Excel文件可见Ole_object.Application.ScreenUpdating=true//设置可见属性②格式设置Ole_object.ActiveSheet.Columns( "A:U ").AutoFit//列宽自动调整Ole_object.ActiveSheet.Columns( "A:Z ").ColumnWidth=6.75//列宽Ole_object.ActiveSheet.Rows( "1:100 ").RowHeight=12//行高Ole_object.Application.StandardFont= "ArialNarrow ";//设置字体Ole_object.Application.StandardFontSize= "8 "//设置字号Ole_object.ActiveSheet.Font.Size= "8 "//设置字号Ole_object.ActiveSheet.Font.Bold=True//粗体Ole_object.ActiveSheet.Font.Italic=True//斜体Ole_object.ActiveSheet.Font.Underline=True//下划线Ole_object.ActiveSheet.Font.StrikeThrough=True//删除线Ole_object.ActiveSheet.HorizontalAlignment=3//水平:4靠右;3居中;2靠左Ole_object.ActiveSheet.VerticalAlignment=2//垂直:3靠下;2居中;1靠上Ole_object.ActiveSheet.cells(2,1).f =‟黑体‟//设置字体Ole_object.ActiveSheet.cells(2,1).font.size=25//设置字体大小③工作区域操作:Ole_object.ActiveSheet.Range( "A1:Z10 ").Property=value//设置一个工作区域内的属性值Ole_object.ActiveSheet.Range( "A1:Z10 ").Merge//合并单元格Ole_object.ActiveSheet.Range( "A1:Z10 ").WrapText=False//自动换行禁止Ole_object.ActiveSheet.Range( "A1:Z10 ").Borders(b_type).Weight=i_val//b_type:1左边界;2右边界;3上边界;4下边界;5左上倾斜;6右上倾斜(以上为对单元格的操作)7左边界;8上边界;9下边界;10右边界;11内部垂直边界;12内部水平边界(以上为对区域的操作)//i_val:0无边界线;然后1,2,3。

PB的OLE编程

PB的OLE编程

PB的OLE编程技术OLE,全称Object Linking and Embedding,即对象链接和嵌入技术,是Windows系统中允许应用程序共享数据和程序功能的一种标准的便利方法。

在PowerBuilder中,在窗口画板上,可以放置OLE控件,把Windows系统内注册的OLE 对象嵌入到界面中,该控件是被嵌入的对象的容器,用户能激活该OLE对象,调出产生它的原始服务程序,可视化编辑修改。

也能用编程的方法,在内存中创建对象,连接到服务程序,调用相应功能,设置对象的各种属性。

这种方法不可视地操作对象,发送命令,并不需要在窗口中放置一个OLE控制,叫做“OLE自动化”。

在这种情况下,还可以设置服务程序的可视属性为“True”,让服务程序显示在用户面前。

在PowerBuilder中,OLEObject对象类型是专门用于“OLE自动化”的。

OLEObject是个动态对象类型,这意味着编译器会接受这个对象的任何属性、方法和参数列表,PowerBuilder不知道你调用的属性和方法是否有效,而是把它留给服务程序自己去判断,如果确实没有,就会在运行的时候报错。

使用OLEObject对象变量编程,少不了如下四步:1.声明变量,创建对象OLEObject myoleobjectmyoleobject = CREATE OLEObject2.连接到某个具体的OLE对象myoleobject.ConnectToObject … 或者myo leobject.ConnectToNewObject …3.利用OLE服务器的属性和方法操作该对象myoleobject.property = … /* 属性 */myoleobject.function(…) /* 方法 */4.断开和OLE对象的连接,销毁对象,释放内存。

myoleobject.Quit()myoleobject.DisconnectObject()Destroy myoleobject这种用编程的方法操作OLE对象,应用非常普遍。

PB中操作Excel的技巧集

PB中操作Excel的技巧集

PB中操作Excel的技巧集eole=CREATEOBJECT("Excel.application")2.添加新工作簿eole.Workbooks.add3.设置第3个工作表为激活工作表eole.Worksheets("sheet3").Activate4.打开指定工作簿eole.Workbooks.Open("c:\temp\ll.xls")5.显示Excel窗口eole.visible=True6.更改Excel标题栏eole.Caption=″VFP应用程序调用Microsoft Excel″7.给单元格赋值eole.cells(1,4).value=XM(XM为数据库字段名)8.设置指定列的宽度(单位:字符个数)eole.ActiveSheet.Columns(1).ColumnWidth=59.设置指定行的高度(单位:磅)eole.ActiveSheet.Rows(1).RowHeight=1/0.035 (设定行高为1厘米,1磅=0.035厘米)10.在第18行之前插入分页符e ole.Worksheets(″Sheet1″).Rows(18).PageBreak=111.在第4列之前删除分页符eole.ActiveSheet.Columns(4).PageBreak=012.指定边框线宽度(Borders参数如下)ole.ActiveSheet.Range(″b3:d3″).Borders(2).Weight=313.设置四个边框线条的类型eole.ActiveSheet.Range(″b3:d3″).Borders(2).LineStyle=1(其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线)14.设置页眉eole.ActiveSheet.PageSetup.CenterHeader=″报表1″15.设置页脚eole.ActiveSheet.PageSetup.CenterFooter=″第&P页″16.设置页眉到顶端边距为2厘米eole.ActiveSheet.PageSetup.HeaderMargin=2/0.03517.设置页脚到底边距为3厘米eole.ActiveSheet.PageSetup.FooterMargin=3/0.03518.设置顶边距为2厘米eole.ActiveSheet.PageSetup.TopMargin=2/0.03519.设置底边距为4厘米eole.ActiveSheet.PageSetup.BottomMargin=4/0.03520.设置左边距为2厘米eole.ActiveSheet.PageSetup.LeftMargin=2/0.03521.设置右边距为2厘米eole.ActiveSheet.PageSetup.RightMargin=2/0.03522.设置页面水平居中eole.ActiveSheet.PageSetup.CenterHorizontally=True23.设置页面垂直居中eole.ActiveSheet.PageSetup.CenterVertically=True24.设置页面纸张大小(1-窄行8 5 11 39-宽行14 11)eole.ActiveSheet.PageSetup.PaperSize=125.打印单元格网线eole.ActiveSheet.PageSetup.PrintGridlines=True26.拷贝整个工作表edRange.Copy27.拷贝指定区域eole.ActiveSheet.Range(″A1:E2″).Copy28.粘贴eole.WorkSheet(″Sheet2″).Range(″A1″).PasteSpecial29.在第2行之前插入一行eole.ActiveSheet.Rows(2).Insert30.在第2列之前插入一列eole.ActiveSheet.Columns(2).Insert31.设置字体eole.ActiveSheet.Cells(2,1)=″黑体″32.设置字体大小eole.ActiveSheet.Cells(1,1).Font.Size=2533.设置字体为斜体eole.ActiveSheet.Cells(1,1).Font.Italic=True34.设置整列字体为粗体eole.ActiveSheet.Columns(1).Font.Bold=True35.清除单元格公式eole.ActiveSheet.Cells(1,4).ClearContents36.打印预览工作表方法一:eole.ActiveSheet.PrintPreview方法二:eole.ExecuteExcel4Macro("PRINT(1,,,1,,TRUE,,,,,,1,,,TRUE,,FALSE)") 37.打印输出工作表方法一:eole.ActiveSheet.PrintOut方法二:eole.ExecuteExcel4Macro("PRINT(1,,,1,,,,,,,,1,,,TRUE,,FALSE)") 38.工作表另为eole.ActiveWorkbook.SaveAs(″c:\temp\22.xls″)39.放弃存盘eole.ActiveWorkbook.saved=True40.关闭工作簿eole.Workbooks.close41.退出Exceleole.quit42. 合并string worksheet, beginRowcol, EndRowColMyOLE.ActiveWorkBook.Sheets(worksheet).Range( BeginRowCol+": "+EndRowCol).SelectMyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol+":"+ EndRowCol).Merge43. sheet改名MyOLE.ActiveWorkBook.Sheets(olename).selectMyOLE.ActiveWorkBook.Sheets(olename).name=newname44. 举例MyOLE=Create OLEObjectConnectErr = MyOLE.ConnectToNewObject ("excel.Application") MyOLE.visible=false//打开指定的XLS文件激活workbooksMyOLE.application.workbooks.Open (FilePath)//对XLS文件进行了改动以后,在关闭该文件时是否需要向用户提出警告。

在PowerBuilder中通过OLE实现复杂的Excel报表

在PowerBuilder中通过OLE实现复杂的Excel报表

[ ywo d ] o e B i e ; h E T e x e rp r A tmai c n lg Ke r s P w r u d r T e l OL ; h c le ot uo t nt h oo y E ; o e
0 引 言
在 很 多 情 况 下 , 件 开 发 人 员 设 计 数 据 库 应 用 系统 时 , 软 免 不 了要 求 系 统 自动 且 快 速 生 成 大 量 相 关 报 表 , 常 采 用 的 技 术 通 是 使 用 Auo d软 件 , 多个 表格 批 量 生 成 到 一 个 C tCa 将 AD 图 形
软件 2 t 0 2年第 3 卷 第 5期 3
S F WAR 0T E
国际 I T传媒品牌
在P w r ule 中通 过O E o eB i r d L 实现 复杂 的E c l ̄ x e: 表 J : l
王 兰 春
( 州 师范学 院计 算机 科学 与技 术 系 山西 忻州 0 40 ) 忻 3 00
t eE c l e o t h o g h x e p r t r u h OLE . E c n e to n x e o r l e . eVB l n u g o wr e E c l a a a d g n r t n E c l r OL o n c i n a d E c l n P we Bu i r Us A g a et i x e t , n e e a ea x e i d a t d i e t r g , rmi g a d meh d o e ai n fl so a e p i n n t o f p rto . o
合 少 量 报 表 生 成 并输 出情 况 的 可 行 方 法 。

PB控制EXCEL的全面认识要点

PB控制EXCEL的全面认识要点

PB OLE控制EXCEL的全面认识 1.创建Excel对象eole=CREATEOBJECT(′Excel.application′ 2.添加新工作簿eole.Workbooks.add 3.设置第3个工作表为激活工作表eole.Worksheets(″sheet3″.Activate 4.打开指定工作簿eole.Workbooks.Open(″c:\temp\ll.xls″ 5.显示Excel窗口eole.visible=.t. 6.更改Excel标题栏eole.Caption=″VFP应用程序调用Microsoft Excel″ 7.给单元格赋值eole.cells(1,4.value=XM(XM为数据库字段名 8.设置指定列的宽度(单位:字符个数eole.ActiveSheet.Columns(1.ColumnWidth=5 9.设置指定行的高度(单位:磅eole.ActiveSheet.Rows(1.RowHeight=1/0.035 (设定行高为1厘米,1磅=0.035厘米 10.在第18行之前插入分页符eole.Worksheets(″Sheet1″.Rows(18.PageBreak=1 11.在第4列之前删除分页符eole.ActiveSheet.Columns(4.PageBreak=0 12.指定边框线宽度(Borders参数如下ole.ActiveSheet.Range(″b3:d3″.Borders(2.Weight=3 13.设置四个边框线条的类型eole.ActiveSheet.Range(″b3:d3″.Borders(2.LineStyle=1 (其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线 14.设置页眉eole.ActiveSheet.PageSetup.CenterHeader=″报表1″ 15.设置页脚eole.ActiveSheet.PageSetup.CenterFooter=″第&P页″ 16.设置页眉到顶端边距为2厘米eole.ActiveSheet.PageSetup.HeaderMargin=2/0.035 17.设置页脚到底边距为3厘米eole.ActiveSheet.PageSetup.FooterMargin=3/0.03518.设置顶边距为2厘米eole.ActiveSheet.PageSetup.TopMargin=2/0.035 19.设置底边距为4厘米eole.ActiveSheet.PageSetup.BottomMargin=4/0.035 20.设置左边距为2厘米veole.ActiveSheet.PageSetup.LeftMargin=2/0.035 21.设置右边距为2厘米eole.ActiveSheet.PageSetup.RightMargin=2/0.035 22.设置页面水平居中eole.ActiveSheet.PageSetup.CenterHorizontally=.t. 23.设置页面垂直居中eole.ActiveSheet.PageSetup.CenterVertically=.t.24.设置页面纸张大小(1-窄行-宽行eole.ActiveSheet.PageSetup.PaperSize=1 25.打印单元格网线eole.ActiveSheet.PageSetup.PrintGridlines=.t. 26.拷贝整个工作表edRange.Copy 27.拷贝指定区域eole.ActiveSheet.Range(″A1:E2″.Copy 28.粘贴eole.WorkSheet(″Sheet2″.Range(″A1″.Pa steSpecial 29.在第2行之前插入一行eole.ActiveSheet.Rows(2.Insert 30.在第2列之前插入一列eole.ActiveSheet.Columns(2.Insert 31.设置字体eole.ActiveSheet.Cells(2,=″黑体″ 32.设置字体大小eole.ActiveSheet.Cells(1,1.Font.Size=25 33.设置字体为斜体eole.ActiveSheet.Cells(1,1.Font.Italic=.t. 34.设置整列字体为粗体eole.ActiveSheet.Columns(1.Font.Bold=.t. 35.清除单元格公式eole.ActiveSheet.Cells(1,4.ClearContents 36.打印预览工作表eole.ActiveSheet.PrintPreview 37.打印输出工作表eole.ActiveSheet.PrintOut 38.工作表另为eole.Acti veWorkbook.SaveAs(″c:\temp\22.xls″ 39.放弃存盘eole.ActiveWorkbook.saved=.t. 40.关闭工作簿eole.Workbooks.close 41.退出Excel eole.quit 42 合并 string worksheet,beginRowcol,EndRowCol MyOLE.ActiveWorkBook.Sheets(worksheet.Range(BeginRowCol+":"+EndRowCol.Sele ctMyOLE.ActiveWorkBook.Sheets(worksheet.Range(BeginRowCol+":"+EndRowCol.Mer ge 43 sheet改名 MyOLE.ActiveWorkBook.Sheets(olename.selectMyOLE.ActiveWorkBook.Sheets(=newname MyOLE=Create OLEObject ConnectErr=MyOLE.ConnectToNewObject ("excel.Application" MyOLE.visible=false //打开指定的XLS文件激活workbooks MyOLE.application.workbooks.Open (FilePath //对XLS文件进行了改动以后,在关闭该文件时是否需要向用户提出警告。

PB的OLE编程

PB的OLE编程

PB的OLE编程技术OLE,全称Object Linking and Embedding,即对象链接和嵌入技术,是Windows系统中允许应用程序共享数据和程序功能的一种标准的便利方法。

在PowerBuilder中,在窗口画板上,可以放置OLE控件,把Windows系统内注册的OLE 对象嵌入到界面中,该控件是被嵌入的对象的容器,用户能激活该OLE对象,调出产生它的原始服务程序,可视化编辑修改。

也能用编程的方法,在内存中创建对象,连接到服务程序,调用相应功能,设置对象的各种属性。

这种方法不可视地操作对象,发送命令,并不需要在窗口中放置一个OLE控制,叫做“OLE自动化”。

在这种情况下,还可以设置服务程序的可视属性为“True”,让服务程序显示在用户面前。

在PowerBuilder中,OLEObject对象类型是专门用于“OLE自动化”的。

OLEObject是个动态对象类型,这意味着编译器会接受这个对象的任何属性、方法和参数列表,PowerBuilder不知道你调用的属性和方法是否有效,而是把它留给服务程序自己去判断,如果确实没有,就会在运行的时候报错。

使用OLEObject对象变量编程,少不了如下四步:1.声明变量,创建对象OLEObject myoleobjectmyoleobject = CREATE OLEObject2.连接到某个具体的OLE对象myoleobject.ConnectToObject … 或者myo leobject.ConnectToNewObject …3.利用OLE服务器的属性和方法操作该对象myoleobject.property = … /* 属性 */myoleobject.function(…) /* 方法 */4.断开和OLE对象的连接,销毁对象,释放内存。

myoleobject.Quit()myoleobject.DisconnectObject()Destroy myoleobject这种用编程的方法操作OLE对象,应用非常普遍。

PB控制EXCEL的全面认识

PB控制EXCEL的全面认识
8.设置指定列的宽度(单位:字符个数) eole.ActiveSheet.Columns(1).ColumnWidth=5
9.设置指定行的高度(单位:磅) eole.ActiveSheet.Rows(1).RowHeight=1/0.035 (设定行高为1厘米,1磅=0.035厘米)
32.设置字体大小 eole.ActiveSheet.Cells(1,1).Font.Size=25
33.设置字体为斜体 eole.ActiveSheet.Cells(1,1).Font.Italic=.t.
34.设置整列字体为粗体 eole.ActiveSheet.Columns(1).Font.Bold=.t.
20.设置左边距为2厘米 veole.ActiveSheet.PageSetup.LeftMargin=2/0.035
21.设置右边距为2厘米 eole.ActiveSheet.PageSetup.RightMargin=2/0.035
22.设置页面水平居中 eole.ActiveSheet.PageSetup.CenterHorizontally=.t.
39.放弃存盘 eole.ActiveWorkbook.saved=.t.
40.关闭工作簿 eole.Workbooks.close
41.退出Excel eole.quit
42 合并 string worksheet,beginRowcol,EndRowCol MyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol+":"+EndRowCol).Select MyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol+":"+EndRowCol).Merge 43 sheet改名 MyOLE.ActiveWorkBook.Sheets(olename).select MyOLE.ActiveWorkBook.Sheets(olename).name=newname MyOLE=Create OLEObject ConnectErr=MyOLE.ConnectToNewObject ("excel.Application") MyOLE.visible=false //打开指定的XLS文件激活workbooks MyOLE.application.workbooks.Open (FilePath) //对XLS文件进行了改动以后,在关闭该文件时是否需要向用户提出警告。 MyOLE.Application.DisplayAlerts = False if isnull(MyOLE) then return -1 ; if ConnectErr <0 then choose case ConnectErr case -1 messagebox('错误提示','无效的调用') case -2 messagebox('错误提示','类名没发现') case -3 messagebox('错误提示','对象不能创建') case -4 messagebox('错误提示','文件不能连接') case -5 messagebox('错误提示','不能连接现在的对象') case -6 messagebox('错误提示','文件无效') case -7 messagebox("错误提示","文件不存在或已经打开") case -8 messagebox("错误提示","服务器不能装载选择的文件") case -9 messagebox("错误提示","其他错误") end choose return -1 end if PB控制也一样的的.

PB中如何实现对EXCEL的操作?

PB中如何实现对EXCEL的操作?

PB中如何实现对EXCEL的操作?问:本人以曾是用VFP 编程的,曾编过VFP&EXCLE的应用如:Myexcel=createobject('EXCEL.APPLICATION')MYEXCEL.VISIBLE=.f.MYEXCEL.WORKBOOKS.ADDO1=MYEXCEL.ACTIVEWORKBOOK.SHEETS(1)='IN'o1.CELLS(1,2).VALUE='abc'又如:excel=createobject('excel.application')EXCEL.VISIBLE=.T.ExcelFile="D:\MYDOCU~1\DC1999\DC_MDT.XLS"if not file(ExcelFile)wait wind 'no file:'+excelfilereturnendifexcel.workbooks.open(ExcelFile)请问如何用PB实现象上述VFP 的应用,好让我能将资料放到一个电子表格答:差不多,给个代码:方法一:OLEObject ExcelServerinteger ExcelOKExcelServer = CREATE OLEObjectExcelOK =ExcelServer.ConnectToNewObject( "excel.application" ) ExcelServer.Workbooks.Open("c:\book.xls") ExcelServer.ActiveWorkBook.Sheets("Sheet2").Select ExcelServer.ActiveSheet.Cells(1,1).value = "书名" ExcelServer.Application.Visible = TRUE方法二:先启动excel文件long handle_1handle_1 = OpenChannel("Excel", "c:\book.xls")//建立与EXCEL的通道setremote("r1c1","书号","excel"," c:\book.xls") setremote("r1c2","书名","excel"," c:\book.xls")//更改某一行或某一列的值,同时关闭通道closechannel(handle_1,handle(parent))。

PB全面控制Excel

PB全面控制Excel

PB全⾯控制ExcelPB下全⾯控制Excel红⾊部分未验证Excel对象控制创建Excel对象 OLEObjectExcelServerExcelServer=CreateOLEObject 连接ExcelExcelServer.ConnectToObject("","Excel.Application")//如果Excel还没有打开,则新建。

ExcelServer.ConnectToNewObject("Excel.Application")返回值Integer,0正常,负值为错误码断开连接Excel ExcelServer.DisconnectObject() 打开指定⼯作簿 ExcelServer.WorkBooks.Open("c:\temp\ll.xls") 添加新⼯作簿ExcelServer.WorkBooks.Add 关闭⼯作簿 ExcelServer.WorkBooks.Close 添加新的⼯作表ExcelServer.Sheets.Add 激活⼯作表“sheet3”ExcelServer.ActiveWorkBook.Sheets("sheet3").Select ⼯作表改名="课程表" 显⽰Excel窗⼝ExcelServer.Application.Visible=True 更改Excel标题栏 ExcelServer.Caption="PB应⽤程序调⽤MicrosoftExcel" ⼯作表另为 ExcelServer.ActiveWorkBook.SaveAs("c:\temp\22.xls") 放弃存盘ExcelServer.ActiveWorkBook.Saved=True 退出Excel ExcelServer.quit 单元格控制给单元格赋值 ExcelServer.Cells(1,4).Value=XM(XM为数据库字段名) 在第2⾏之前插⼊⼀⾏ExcelServer.ActiveSheet.Rows(2).Insert 在第2列之前插⼊⼀列ExcelServer.ActiveSheet.Columns(2).Insert 设置指定列的宽度(单位:英⽂字符个数) ExcelServer.ActiveSheet.Columns(1).ColumnWidth=5 设置指定⾏的⾼度(单位:磅)(设定⾏⾼为1厘⽶,1磅=0.035厘⽶) ExcelServer.ActiveSheet.Rows(1).RowHeight=1/0.035 指定边框线宽度(Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;)ExcelServer.ActiveSheet.Range("b3:d3").Borders(2).Weight=3 a到i列⾃动调整列宽ExcelServer.ActiveSheet.Columns(“a:i”).AutoFit 设置四个边框线条的类型(LineStyle值:1与7-细实、2-细虚、4-点虚、9-双细实线)ExcelServer.ActiveSheet.Range("b3:d3").Borders(2).LineStyle=1 合并单元格ExcelServer.ActiveSheet.Range("A1:F1”).MergeCells=True 拷贝整个⼯作表edRange.Copy 拷贝指定区域ExcelServer.ActiveSheet.Range("A1:E2").Copy 粘贴ExcelServer.WorkSheet("Sheet2").Range("A1").PasteSpecial 设置字体ExcelServer.ActiveSheet.Cells(2,1)="⿊体" 设置字体⼤⼩ExcelServer.ActiveSheet.Cells(1,1).Font.Size=25 设置字体为斜体ExcelServer.ActiveSheet.Cells(1,1).Font.Italic=True 设置整列字体为粗体ExcelServer.ActiveSheet.Columns(1).Font.Bold=True 设置整列⽔平居中ExcelServer.ActiveSheet.Columns(1).HorizontalAlignment=3 设置整⾏字体颜⾊ExcelServer.ActiveSheet.Rows(1).Font.ColorIndex=4 设置整⾏底⾊ExcelServer.ActiveSheet.Rows(2).Interior.ColorIndex=5 设置整⾏单元格中的⽂本⾃动换⾏ExcelServer.ActiveSheet.Row(1).WrapText=True 清除单元格公式ExcelServer.ActiveSheet.Cells(1,4).ClearContents 打印相关设置页眉ExcelServer.ActiveSheet.PageSetup.CenterHeader="报表1" 设置页脚ExcelServer.ActiveSheet.PageSetup.CenterFooter="第&P页" 设置页眉到顶端边距为2厘⽶ExcelServer.ActiveSheet.PageSetup.HeaderMargin=2/0.035 设置页脚到底边距为3厘⽶ExcelServer.ActiveSheet.PageSetup.FooterMargin=3/0.035 设置顶边距为2厘⽶ExcelServer.ActiveSheet.PageSetup.TopMargin=2/0.035 设置底边距为4厘⽶ExcelServer.ActiveSheet.PageSetup.BottomMargin=4/0.035 设置左边距为2厘⽶ExcelServer.ActiveSheet.PageSetup.LeftMargin=2/0.035 设置右边距为2厘⽶ExcelServer.ActiveSheet.PageSetup.RightMargin=2/0.035 设置页⾯⽔平居中ExcelServer.ActiveSheet.PageSetup.CenterHorizontally=True 设置页⾯垂直居中ExcelServer.ActiveSheet.PageSetup.CenterVertically=True 设置页⾯纸张⼤⼩(1-窄⾏851139-宽⾏1411) ExcelServer.ActiveSheet.PageSetup.PaperSize=1 在第18⾏之前插⼊分页符ExcelServer.Worksheets("Sheet1").Rows(18).PageBreak=1 在第4列之前删除分页符ExcelServer.ActiveSheet.Columns(4).PageBreak=0 打印单元格⽹线ExcelServer.ActiveSheet.PageSetup.PrintGridlines=True 打印预览⼯作表ExcelServer.ActiveSheet.PrintPreview 打印输出⼯作表 ExcelServer.ActiveSheet.PrintOut。

PB全面控制Excel

PB全面控制Excel

PB下全面控制ExcelExcelServer.ActiveWorkBook.Sheets("账单明细").Select//ExcelServer.application.workbooks(1).worksheets(1) //设置第一个工作表为激活工作表ExcelServer.application.visible = truels_name = long ll_at1,ll_at7,ll_rtn,ll_excelok,ll_rowcount,ll_row,istring ls_at2,ls_at3,ls_at4,ls_at5,ls_at9,ls_at10string ls_pathname,ls_filenamedate ld_at6,ld_at8oleobject ExcelServerpointer oldpointeroldpointer = setpointer(hourglass!)ExcelServer = create Oleobjectll_excelok = ExcelServer.connecttonewobject("Excel.application")if ll_excelok <> 0 thenmessagebox("提示!","无法连接EXCEL,请确认本机是否安装了EXCEL")end ifll_rtn = getfileopenname('打开EXCEL文件',ls_pathname,ls_filename,'XLS','EXCEL文件(*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm')if ls_filename = '' then returnExcelServer.workbooks.open(ls_pathname,0,0)ExcelServer.application.visible = false//excelserver.workbooks.add()//ExcelServer.application.workbooks(1).worksheets(1) //设置第一个工作表为激活工作表//ExcelServer.application.visible = true //显示EXCEL窗口//ExcelServer.Caption='pb转excel' //更改标题ll_rowcount = edRange.rows.countfor i = 2 to ll_rowcountll_at1 = long(excelserver.activesheet.cells(i + 1,1).value)if isnull(ll_at1) then continuell_row = dw_1.insertrow(0)dw_1.setitem(ll_row,'at1',ll_at1);ls_at2 = string(excelserver.activesheet.cells(i + 1,2).value)dw_1.setitem(ll_row,'at2',ls_at2);ls_at3 = string(excelserver.activesheet.cells(i + 1,3).value)dw_1.setitem(ll_row,'at3',ls_at3);ls_at4 = string(excelserver.activesheet.cells(i + 1,4).value)dw_1.setitem(ll_row,'at4',ls_at4);ls_at5 = string(excelserver.activesheet.cells(i + 1,5).value)dw_1.setitem(ll_row,'at5',ls_at5);ld_at6 = date(string(excelserver.activesheet.cells(i + 1,6).value,'yyyy/mm/dd'))dw_1.setitem(ll_row,'at6',ld_at6);ll_at7 = long(excelserver.activesheet.cells(i + 1,7).value)dw_1.setitem(ll_row,'at7',ll_at7);ld_at8 = date(string(excelserver.activesheet.cells(i + 1,8).value,'yyyy/mm/dd'))dw_1.setitem(ll_row,'at8',ld_at8);// ls_at9 = string(excelserver.activesheet.cells(i + 1,9).value)// dw_1.setitem(ll_row,'at9',ls_at9);// ls_at10 = string(excelserver.activesheet.cells(i + 1,10).value,'yyyy/mm/dd')// dw_1.setitem(ll_row,'at10',ls_at10);//li_emp_age = integer(ls_age)//ld_emp_birthday = date(ls_birthday)st_1.text = "正在导入第: " + string(i) + "笔数据"//insert into A1_TMP values(:ls_no,:ls_name,:ls_sex,:li_emp_age,:ld_emp_birthday); nextExcelServer.quit //exitSetPointer(oldpointer)ExcelServer.DisconnectObject()DESTROY ExcelServer//dw_1.update()//delete from A1_TMP;//if dw_1.rowcount() = 0 then// rollback;// messagebox("提示","导入失败")// st_1.text ="导入失败!"//else// commit;// messagebox("提示","导入成功")// st_1.text ="导入成功!"//end if红色部分未验证。

VB中的OLE技术与OLE控制...

VB中的OLE技术与OLE控制...

VB中的OLE技术与OLE控制...VB中的OLE技术与OLE控制自VB4.0之后,OLE技术在VB中得到了越来越广泛的支持,目前流行的ActiveX技术的核心也是OLE 。

OLE技术可以满足用户在一个文档中加入不同格式数据的需要(如文本、图像、声音等),即所谓建立复合文档问题。

我们在Word文档中嵌入Excel表格,当用鼠标双击电子表格时,Word的菜单、工具条都变为Excel的菜单、工具条,这是OLE技术的使用;在WIN95下,我们可以将一个数据对象用鼠标拖动到另一个软件的文档中,这也是OLE技术的使用。

1993年Microsoft公司发布了OLE2.0规范,OLE2.0是由多层模型构成的(见图1),底层服务(COM)由操作系统管理,对于VB程序员是屏蔽不可见的,VB程序设计者使用最多的是中间一层。

VB中经常用到的有OLE可视化编辑、复合文档、拖动、剪贴板和OLE自动化等服务。

OLE有4种基本的应用:对象链接(Object Link)、对象嵌入(Object Embed)、OLE自动化(OLE automation)和OLE控件。

·OLE对象是指由支持OLE技术的应用程序(OLE服务器)可提供的数据。

·对象链接是指在OLE对象和VB中支持OLE控件之间建立一个链,并未将OLE数据复制过来。

这是一种动态联系。

·对象嵌入是指将OLE对象复制到VB当前程序中,即在OLE控件内部保存数据。

·OLE自动化使得VB程序使用另外程序的功能,如用Word的拼写器程序检查当前程序的文本框中文本的拼写错误而不必再费力编写相同功能的程序。

自4.0版后,VB中的控件库VBX(Visual Basic Extension )已经由OCX(OLE Control Extension )所代替,即所谓的OLE控件。

例如VB的窗体就能起到OLE 包容器的作用,通过处理窗体的OLEDragOver和OLEDragDrop事件过程,可将图形、工作表、声音等OLE对象直接拖放到窗体中,有了这种技术的支持,VB的程序员就可以在自己的程序中使用各种应用程序功能的接口,并将它们集成显示在窗口中。

PB对excel的操作

PB对excel的操作

PB对excel的操作随着科技的发展,电子表格软件已经成为了工作和学习中不可或缺的工具。

而Excel作为最常用的电子表格软件之一,在个人和企业的日常操作中扮演着重要的角色。

本文将介绍PB(Peanut Butter)对Excel 的操作,包括基本操作、数据处理与分析、图表制作、公式运用等内容。

一、基本操作1. 打开与关闭工作簿PB可通过点击文件选项卡,选择“打开”命令来打开Excel工作簿。

在使用完成后,点击右上角的“关闭”按钮即可关闭工作簿。

2. 插入与删除工作表PB可在Excel中插入新的工作表,点击工作表选项卡后,在“工作表组”中选择“插入工作表”即可。

要删除工作表,PB只需选中要删除的工作表,然后点击右键选择“删除”。

3. 数据输入与编辑PB可将数据直接输入到单元格中,通过使用方向键或鼠标切换到需要编辑的单元格,然后键入相应的数据。

若需要编辑已有的数据,PB只需选中要编辑的单元格,然后直接键入新的数据。

二、数据处理与分析1. 数据筛选与排序PB可使用Excel提供的筛选功能,选择需要操作的数据范围,在“数据”选项卡中选择“筛选”按钮,然后根据需要进行筛选条件的设置。

对于数据排序,PB可通过选择需要排序的数据范围,在“数据”选项卡中选择“排序”按钮,按照指定的排序规则进行排序。

2. 数据透视表的制作PB需首先选中所要制作透视表的数据范围,然后在“插入”选项卡中点击“透视表”按钮。

在弹出的对话框中,PB可选择需要作为行、列和数据的字段,从而生成需要的透视表。

三、图表制作1. 制作柱状图PB需选中需要制作柱状图的数据范围,然后在“插入”选项卡中点击“柱状图”按钮。

在弹出的图表类型中,PB可选择适合的柱状图样式,并对图表效果进行调整。

2. 制作折线图PB需选中需要制作折线图的数据范围,然后在“插入”选项卡中点击“折线图”按钮。

在弹出的图表类型中,PB可选择适合的折线图样式,并进行必要的调整和编辑。

PB中使用OLEObject操作Excel

PB中使用OLEObject操作Excel

在PB中使用OLEObject操作Excelglave posted @ 2009年7月14日 06:15 in PB with tags PB OLE excel, 4671 阅读在PB使用OLEObject操作Excel1.申明和定义(其他变量定义省略)OLEObject xlapp // EXCEL application objectOLEObject xlwk // EXCEL workbook objectOLEObject xlsub // EXCEL worksheet objectOLEObject xlcel // EXCEL cell object2.连接Excel文件,ls_path为Excel路径xlapp = create OLEObjectli_ret = xlapp.ConnectToObject(ls_path)if li_ret < 0 thenMessageBox("ERR","")destroy xlappend if3.打开Excel的workbookll_cnt = xlapp.Application.Workbooks.Count //获取当前workbook的个数xlwk = xlapp.Application.Workbooks[ll_cnt] //打开最新的一个对象,也就是上面连接后打开的excel对象(如果改文件已经打开,需特殊考虑)xlsub = xlwk.Worksheets[1]xlapp.Application.Windows(ll_cnt).Visible = true //设置对象不可视xlsub.Activate4.操作Excel的sheet//设置单元格背景颜色xlsub.cells(1,1).Interior.Color = rgb(255,0,0)xlsub.cells(1,1).Interior.Pattern = "1"//设置列的filterxlsub.Rows("1:1").AutoFilter//获取Excel行数ll_rowcnt_xls = edRange.Rows.Count//设置Excel列宽自动大小(随内容宽度自动变化)xlsub.Rows("1:" + string(ll_rowcnt_xls)).Columns.AutoFit//sheet锁定, false:解锁; true:加锁xlsub.Cells.Locked = False//做一个下拉列表框,当选择DEL时候背景变成红色,选择NoAction无变化xlsub.Range(ls_range).Validation.Deletexlsub.Range(ls_range).Validation.Add("3", "1", "1", "NoAction,DEL") xlsub.Range(ls_range).Validation.IgnoreBlank = Truexlsub.Range(ls_range).Validation.InCellDropdown = Truexlsub.Range(ls_range).Validation.InputTitle = ""xlsub.Range(ls_range).Validation.ErrorTitle = ""xlsub.Range(ls_range).Validation.InputMessage = ""xlsub.Range(ls_range).Validation.ErrorMessage = ""xlsub.Range(ls_range).Validation.IMEMode(0)xlsub.Range(ls_range).Validation.ShowInput = Truexlsub.Range(ls_range).Validation.ShowError = Truexlsub.Range(ls_range).FormatConditions.Deletexlsub.Range(ls_range).FormatConditions.Add("1", "3", "DEL")xlsub.Range(ls_range).FormatConditions(1).Font.Color = rgb(255,0,0)//设置sheet单元格格式为文本格式xlsub.Cells.NumberFormatLocal = "@"// 设置保护,第一个参数是密码,后面的参数比较复杂,可以自己去一个一个实验xlsub.protect("password",true, true,true, false,false,false,false,true,true, false,true,true,false,true,false)//将sheet1的一列复制到sheet2中xlwk.Sheets("sheet1").Select()xlwk.Sheets("sheet1").Columns(ll_col_xls).Copy() // 要复制的列xlwk.Sheets("sheet2").Select()xlwk.Sheets("sheet2").Columns(ll_col_newsheet).Select() // 粘贴到ll_col_newsheet列前xlwk.Sheets("sheet2").Paste()5.关闭Excelxlapp.Application.DisplayAlerts = False // 不提示保存等提示信息,且为不保存xlwk.save()xlwk.Close()xlapp.ConnectToObject(ls_path) //从新打开一个Excel对象ll_cnt = xlapp.Application.Workbooks.Countxlwk = xlapp.Application.Workbooks[ll_cnt]xlapp.Application.DisplayAlerts = True// -------------------------------------------// 上面关闭提示了,这里要解开关闭,否则其他woekbook关闭也没提示,//但是直接设置为true是不可以的(见下面两行代码),必须再打开一个对象,再设置为true才可以//xlapp.Application.DisplayAlerts = False//xlapp.Application.DisplayAlerts = True//--------------------------------------------xlwk.close()xlapp.DisConnectObject()Destroy xlsubDestroy xlwkDestroy xlapp其他一些简单的操作,网上有很多很好的资料,这里只是提到一些特殊的操作,例如:下拉列表框,选择条件,设置保护等等而这些也正是网上还不容易找到答案的.因为在Excel录制了宏之后,把宏放到PB里还是会出现很多问题,需要查阅资料以及自己的实验才能得出正确结果,希望对需要的人有帮助.。

excel基础操作面板认识课题

excel基础操作面板认识课题

excel基础操作面板认识课题Excel是一种功能强大的电子表格软件,广泛应用于商务、金融、科学研究等领域。

熟练掌握Excel的基础操作面板是使用Excel的第一步,本文将介绍Excel基础操作面板的主要组成部分和各个功能模块。

一、工作簿与工作表工作簿是Excel中最基本的组织单元,可以理解为一个文件。

每个工作簿可以包含一个或多个工作表。

工作表是工作簿中的一个单独页面,被划分为行和列的网格形式,用于存储和展示数据。

在Excel的基础操作面板中,我们可以通过新增、删除和重命名工作表来管理工作簿中的数据。

二、单元格和范围Excel中的每个网格交叉点称为单元格,用于存储数据或者进行计算。

单元格由列标和行号组成,例如A1、B2等。

范围是指相邻或连续的单元格的集合,可以用来表示一组数据或者进行操作。

在Excel的基础操作面板中,我们可以通过选择、复制和粘贴范围来处理数据。

三、数据输入与编辑Excel的基础操作面板提供了多种方式来输入和编辑数据。

我们可以直接在单元格中输入数据,也可以使用公式计算结果。

在编辑数据时,可以使用剪贴板进行复制、剪切和粘贴操作,还可以使用填充功能来自动填充重复数据或者创建序列。

四、格式化和样式Excel的基础操作面板还提供了丰富的格式化和样式功能,用于美化和调整数据的外观。

我们可以对单元格进行字体、颜色、对齐方式等格式设置,还可以使用自定义格式来改变数据的显示效果。

此外,通过条件格式化功能,可以根据数据的条件自动变换其样式。

五、函数与公式Excel内置了大量的函数和公式,用于进行各种数学、逻辑和统计计算。

在基础操作面板中,我们可以通过函数库来浏览和查找适合的函数,也可以直接在公式栏中手动输入函数或公式。

使用函数和公式可以快速实现数据计算和分析,提高工作效率。

六、图表设计Excel的基础操作面板还提供了丰富的图表设计功能,可以将数据以图表形式直观地展示出来。

我们可以根据需要选择不同类型的图表,如柱状图、折线图、饼图等,还可以调整图表的样式和颜色,添加图例和数据标签,让数据更加生动和易于理解。

PB对excel的操作

PB对excel的操作

PB对excel的操作Pb中对Excel文件的应用Oleobject ole_object//建立OLE对象ole_object=create oleobject//创建对象integer li_retli_ret=ole_object.connecttoobject( " ", "Excel.Application ")//建立连接if li_ret <> 0 then//如果Excel还没有打开,则新建。

li_ret=ole_object.ConnectToNewObject( "Excel.Application ") if li_ret <> 0thenmessagebox( "OLE错误", "OLE无法连接!错误号:"+string(li_ret))returnend ifole_object.Visible=trueend ifpointer oldpointer//设置鼠标oldpointer=setpointer(HourGlass!)ole_object.Workbooks.Add//新建工作薄ole_object.Application.DisplayAlerts=False//关闭警告消息对话框,防止提示ole_object.Application.Workbooks.Open(as_exccccccccccccc cccccccccccccccccccccel_filename)/ /打开Excel文件//ole_object.Application.ActiveWorkbook.SaveAs(as_text_fil ename,-4158)//把打开的Excel文件另存为//Text文件,第二参数表示数据以制表符TAB分隔ole_object.Application.Quit()//退出Excelole_object.activeworkbook.saved=true//放弃存盘ole_object.workbooks.close//关闭工作簿ole_object.Cells(1,1).Value=reptitleole_object.Range( 'A1 ').Selectole_object.Selection.Font.Size=24ole_object.selection.HorizontalAlignment=3//水平对齐方式: ole_object.Range( 'A1: '+f_columname(ll_colnum)+ '1 ').Selectole_object.Range( 'A1: '+f_columname(ll_colnum)+ '1 ').Mergeole_object.Columns(i).ColumnWidth=ld_widthole_object.Columns(i).HorizontalAlignment=3ole_object.Columns(i).Borders.LineStyle=1ole_object.Columns(i).Font.Bold=Trueole_object.cells(i,j).NumberFormat= "@ "ole_object.cells(i,j).Font.Bold=falseole_object.cells(i,j).value=ls_valueOLE_/doc/1517083172.html,edRange.Rows. CountSheets.Add基本操作:Ole_object.Workbooks.add//新建一个Excel文件Ole_object.Workbooks.Open( "FileName ")//打开一个已存在Excel文件Ole_object.ActiveWorkBook.Sheets( "SheetName ").Select//选择文件中一个工作表Ole_object.Application.Run( "MacroName ")//运行宏Ole_object.Application.Visible=TRUE//Excel文件可见Ole_object.Application.ScreenUpdating=true//设置可见属性②格式设置Ole_object.ActiveSheet.Columns( "A:U ").AutoFit//列宽自动调整Ole_object.ActiveSheet.Columns( "A:Z ").ColumnWidth=6.75//列宽Ole_object.ActiveSheet.Rows( "1:100 ").RowHeight=12//行高Ole_object.Application.StandardFont= "ArialNarrow ";//设置字体Ole_object.Application.StandardFontSize= "8 "//设置字号Ole_object.ActiveSheet.Font.Size= "8 "//设置字号Ole_object.ActiveSheet.Font.Bold=True//粗体Ole_object.ActiveSheet.Font.Italic=True//斜体Ole_object.ActiveSheet.Font.Underline=True//下划线Ole_object.ActiveSheet.Font.StrikeThrough=True//删除线Ole_object.ActiveSheet.HorizontalAlignment=3//水平:4靠右;3居中;2靠左Ole_object.ActiveSheet.VerticalAlignment=2//垂直:3靠下;2居中;1靠上Ole_object.ActiveSheet.cells(2,1).f/doc/1517083172.html,=?黑体?//设置字体Ole_object.ActiveSheet.cells(2,1).font.size=25//设置字体大小③工作区域操作:Ole_object.ActiveSheet.Range( "A1:Z10 ").Property=value//设置一个工作区域内的属性值Ole_object.ActiveSheet.Range( "A1:Z10 ").Merge//合并单元格Ole_object.ActiveSheet.Range( "A1:Z10 ").WrapText=False//自动换行禁止Ole_object.ActiveSheet.Range( "A1:Z10 ").Borders(b_type).Weight=i_val//b_type:1左边界;2右边界;3上边界;4下边界;5左上倾斜;6右上倾斜(以上为对单元格的操作)7左边界;8上边界;9下边界;10右边界;11内部垂直边界;12内部水平边界(以上为对区域的操作)//i_val:0无边界线;然后1,2,3。

pb ole语法

pb ole语法

pb ole语法PB OLE语法:让你的应用程序更加强大PB OLE语法是PowerBuilder中的一种语法,它可以让你的应用程序更加强大。

OLE是Object Linking and Embedding的缩写,它是一种用于在不同应用程序之间共享数据和功能的技术。

在PowerBuilder中,OLE语法可以让你的应用程序与其他应用程序进行交互,从而实现更多的功能。

使用PB OLE语法,你可以将其他应用程序的功能嵌入到你的应用程序中。

例如,你可以将Microsoft Excel的图表嵌入到你的应用程序中,让用户可以直接在应用程序中查看和编辑数据。

你还可以将Microsoft Word的文档嵌入到你的应用程序中,让用户可以直接在应用程序中编辑文档。

除了嵌入其他应用程序的功能,PB OLE语法还可以让你的应用程序与其他应用程序进行数据交换。

例如,你可以将数据从Microsoft Access中导入到你的应用程序中,或者将数据从你的应用程序导出到Microsoft Excel中。

这样,用户就可以更方便地处理数据,而不需要手动复制和粘贴数据。

PB OLE语法还可以让你的应用程序与其他应用程序进行通信。

例如,你可以使用PB OLE语法向Microsoft Outlook发送电子邮件,或者从Microsoft Outlook接收电子邮件。

这样,你的应用程序就可以与用户的电子邮件客户端进行集成,从而提供更加便捷的邮件功能。

PB OLE语法可以让你的应用程序更加强大和灵活。

它可以让你的应用程序与其他应用程序进行交互,从而实现更多的功能。

如果你想让你的应用程序更加强大和实用,那么PB OLE语法是一个不错的选择。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PB OLE控制EXCEL的全面认识
分类:编程知识1〃创建Excel对象
eole=CREATEOBJECT(′Excel.application′)
2〃添加新工作簿
eole.Workbooks.add
3〃设置第3个工作表为激活工作表
eole.Worksheets(″sheet3″).Activate
4〃打开指定工作簿
eole.Workbook s.Open(″c:\temp\ll.xls″)
5〃显示Excel窗口
eole.visible=.t.
6〃更改Excel标题栏
eole.Caption=″VFP应用程序调用Microsoft Excel″
7〃给单元格赋值
eole.cells(1,4).value=XM(XM为数据库字段名)
8〃设置指定列的宽度(单位:字符个数)
eole.ActiveSheet.Columns(1).ColumnWidth=5
9〃设置指定行的高度(单位:磅)
eole.ActiveSheet.Rows(1).RowHeight=1/0.035
(设定行高为1厘米,1磅=0.035厘米)
10〃在第18行之前插入分页符
eole.Worksheets(″Sheet1″).Rows(18).PageBreak=1
11〃在第4列之前删除分页符
eole.ActiveSheet.Columns(4).PageBreak=0
12〃指定边框线宽度(Borders参数如下)
ole.ActiveSheet.Range(″b3:d3″).Borders(2).Weight=3
13〃设置四个边框线条的类型
eole.ActiveSheet.Range(″b3:d3″).Borders(2).LineStyle=1
(其中Borders参数:1-左、2-右、3-顶、4-底、5-斜、6-斜/;LineStyle 值:1与7-细实、2-细虚、4-点虚、9-双细实线)
14〃设置页眉
eole.ActiveSheet.PageSetup.CenterHeader=″报表1″
15〃设置页脚
eole.ActiveSheet.PageSetu p.CenterFooter=″第&P页″
16〃设置页眉到顶端边距为2厘米
eole.ActiveSheet.PageSetup.HeaderMargin=2/0.035
17〃设置页脚到底边距为3厘米
eole.ActiveSheet.PageSetup.FooterMargin=3/0.035
18〃设置顶边距为2厘米
eole.ActiveSheet.PageSetup.TopMargin=2/0.035
19〃设置底边距为4厘米
eole.ActiveSheet.PageSetup.BottomMargin=4/0.035
20〃设置左边距为2厘米
veole.ActiveSheet.PageSetup.LeftMargin=2/0.035
21〃设置右边距为2厘米
eole.ActiveSheet.PageSetup.RightMargin=2/0.035
22〃设置页面水平居中
eole.ActiveSheet.PageSetup.CenterHorizontally=.t.
23〃设置页面垂直居中
eole.ActiveSheet.PageSetup.CenterVertically=.t. 24〃设置页面纸张大小(1-窄行8 5 11 39-宽行14 11) eole.ActiveSheet.PageSetup.PaperSize=1
25〃打印单元格网线
eole.ActiveSheet.PageSetup.PrintGridlines=.t.
26〃拷贝整个工作表
edRange.Copy
27〃拷贝指定区域
eole.ActiveSheet.Range(″A1:E2″).Copy
28〃粘贴
eole.WorkSheet(″Sheet2″).Range(″A1″).PasteSpecial
29〃在第2行之前插入一行
eole.ActiveSheet.Rows(2).Insert
30〃在第2列之前插入一列
eole.ActiveSheet.Columns(2).Insert
31〃设置字体
eole.ActiveSheet.Cells(2,1)=″黑体″
32〃设置字体大小
eole.ActiveSheet.Cells(1,1).Font.Size=25
33〃设置字体为斜体
eole.ActiveSheet.Cells(1,1).Font.Italic=.t.
34〃设置整列字体为粗体
eole.ActiveSheet.Columns(1).Font.Bold=.t.
35〃清除单元格公式
eole.ActiveSheet.Cells(1,4).ClearContents
36〃打印预览工作表
eole.ActiveSheet.PrintPreview
37〃打印输出工作表
eole.ActiveSheet.PrintOut
38〃工作表另为
eole.ActiveWorkbook.SaveAs(″c:\temp\22.xls″)
39〃放弃存盘
eole.ActiveWorkbook.saved=.t.
40〃关闭工作簿
eole.Workbooks.close
41〃退出Excel
eole.quit
42 合并
string worksheet,beginRowcol,EndRowCol
MyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol ":"
EndRowCol).Select
MyOLE.ActiveWorkBook.Sheets(worksheet).Range(BeginRowCol ":"
EndRowCol).Merge
43 sheet改名
MyOLE.ActiveWorkBook.Sheets(olename).select MyOLE.ActiveWorkBook.Sheets(olename).name=newname
MyOLE=Create OLEObject
ConnectErr=MyOLE.ConnectToNewObject ("excel.Application")
MyOLE.visible=false
//打开指定的XLS文件激活workbooks
MyOLE.application.workbooks.Open (FilePath)
//对XLS文件进行了改动以后,在关闭该文件时是否需要向用户提出警告。

MyOLE.Application.DisplayAlerts = False
if isnull(MyOLE) then return -1 ;
if ConnectErr <0 then
choose case ConnectErr
case -1
messagebox('错误提示','无效的调用')
case -2
messagebox('错误提示','类名没发现')
case -3
messagebox('错误提示','对象不能创建')
case -4
messagebox('错误提示','文件不能连接')
case -5
messagebox('错误提示','不能连接现在的对象')
case -6
messagebox('错误提示','文件无效')
case -7
messagebox("错误提示","文件不存在或已经打开")
case -8
messagebox("错误提示","服务器不能装载选择的文件")
case -9
messagebox("错误提示","其他错误")
end choose
return -1
end if
PB控制也一样的的.。

相关文档
最新文档