pb通过ole调用word时出错求助
1、不用ole直接用word嵌入到程序窗口中,需要用到几个apiShellExecute函数原型及参数含义如下:
ShellExecute(
HWND hwnd, //父窗口句柄 (如:NULL,Handle等)
LPCSTR lpOperation, //操作类型 (如:"open")*要加英文双引号
LPCSTR lpFile, //要进行操作的文件或路径
LPCSTR lpParameters, //当lpOperation为“explore”时指定要传递的参数,通常设为NULL
LPCSTR lpDirectory, //指定默认目录,通常设为NULL
INT nShowCmd //文件打开的方式,以通常方式还是最大化或最小化显示,一般为SW_SHOWNORMAL
)
2、用pb中word的函数操作word文档,可以参考olebrowser里面的函数说明,pb里面就可以查看的 来这里看看吧,有点用的,pb嵌入word的http://hi.baidu.com/pbzzfbbs/blog/item/1b8614354efeda3d5ab5f57e.html
通过函数吗?读出来之后要求是只读的
高手快来指教啊
------解决方案--------------------------------------------------------
你的word文档是存放在数据库表中的吗?在窗口中加ole的方式我曾用过,不太理想,要写些东西,并且打开后也不是很理想。
建议你用dw中的ole database blob,这个比较好用。在数据窗口中可以只显示一个类似按钮的东西,用户只要双击它,即可打开已经存放的文档。在数据窗口中配置它也比较直观简单。
OleObject ole_excel
ole_excel = create OleObject
If ole_excel.ConnectToNewObject("Excel.Application") > 0 Then
MessageBox('连接到Excel错误','请确认是否已经安装了Excel!',Exclamation!)
Destroy old_excel
Return
End If
2、打开指定的excle文件
ole_excel.Application.Workbooks.Open("excel文件")
3、操作excel单元格
excel单元格有一系列的操作,它们的使用格式一般如下:
ole对象.ActiveWorkBook.Sheets("工作表名").操作对象.动作或属性
读取或赋值工作表1中单元格的格式:
ole_excel.ActiveWorkBook.Sheets("工作表1").cells[1,1].value
合并工作表1中的第ll_rows_buget行的A列到I列的单元格:
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Merge,还有如下一些与合并单元格相类似的动作或属性
.HorizontalAlignment = xlGeneral //单元格的横向对齐方式
.VerticalAlignment = xlBottom //单元格的纵向对齐方式(1、2左,3居中,4右)
.WrapText = True //自动换行
.Orientation = 0
AddIndent = False
ShrinkToFit = False
.MergeCells = False
设置工作表1中的第ll_rows_buget行的A列到I列的单元格四周为实现边框
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Borders(1).LineStyle=1
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Borders(2).LineStyle=1
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Borders(3).LineStyle=1
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Borders(4).LineStyle=1
第ll_rows_buget行从A到I单元格的背景色和字体颜色设置如下:
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Interior.ColorIndex = 48 //背景色为棕黑色
ole_excel.ActiveWorkBook.Sheets("工作表1").Range("A"+string(ll_rows_buget)+":I"+string(ll_rows_buget)).Font.ColorIndex = 3 //字体颜色为红色
有一点需要注意的是单元格的背景色和字体颜色的属性ColorIndex不能超过56,否则程序崩溃,自动退出。ColorIndex = 0 为白色,ColorIndex = 56 则接近黑色,其他颜色请自行摸索。
4、保存excel文件,退出excel,并销毁ole对象
ole_excel.ActiveWorkBook.save()
ole_excel.Application.Quit()
Destroy ole_excel //注销对象
在Visual FoxPro中,可以链接或嵌入OLE对象的字段类型是( )。
【答案】:B 在Visual FoxPro中,通用型字段可以链接或嵌入0LE对象,如用于存放Excel表格等,备注型字段可以存放不定长的字母、数字文本。
InvokeHelper其他信息
下面是关于CWnd::InvokeHelper的详细解释:CWnd::InvokeHelper是一个成员函数,用于根据dwDispID参数调用指定的OLE控件方法或属性。这个函数在wFlags参数中设置的上下文中执行,wFlags可以是以下值:DISPATCH_METHOD:作为方法调用,如果属性同名,可以同时设置此标志和DISPATCH_PROPERTYGET。 DISPATCH_PROPERTYGET:...
错误类型: Microsoft OLE DB Provider for ODBC Drivers (0x80040E...
参考,希望有帮助 1.错误信息(错误信息我不用翻译成中文了把,呵呵,大家谅解)Microsoft OLE DB Provider for ODBC Drivers error '80004005'[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by...
错误!Microsoft OLE DB Provider for ODBC Drivers (0x80004005)_百度知...
set conn=server.createobject("ADODB.Connection")conn.open"Driver={SQL Server};Server=(local);Database=数据库名;Uid=用户名;Pwd=密码"看看这些都设置对了没有 最好连起来写,分行写容易出错
ASP数据库连接读取错误Microsoft OLE DB Provider for ODBC Drivers...
这个连接语句换成 "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath("data\/guestbook.mdb")
sql中提示尚未注册 OLE DB 访问接口 "Microsoft.Ace.Oledb.12.0"。_百 ...
sql中提示尚未注册 OLE DB 访问接口 "Microsoft.Ace.Oledb.12.0"是设置错误造成的,解决方法为:1、可以通过服务器对象这里,打开我们的访问链接选项。2、然后我们可以为我们的访问接口添加脚本。3、此时我们可以在这里查看并使用可用的接口。4、并且我们就能在这看到访问接口的名称。5、紧接着我们就能在...
vb OLEDrag OLEDrop
分二步:'一、新建一个模块,复制下面代码到模块中 Option Explicit Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" _(ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _lParam As Any) As Long Private Declare Function SendMessageByNum Lib "User...
VB已读取到数据库数据,如何将数据写入Excel表(OLE控件)的某一单元格...
可对Ole控件关联对象的Excel表格的单元格的Value 属性赋值来写入VB已读到的数据。Value 属性,返回或设置一个Variant型数,它指定该属性之值,此属性可读\/写。以下是实现代码:Option Explicit Dim oBok As Object '定义oBok为Object 数据类型Private Sub Command1_Click() OLE1.CreateLink "C:\\zh...
怎样通过OPC Client与世纪星交互
应用程序与OPC服务器之间必须有 OPC 接口,OPC 规范提供了两套标准接口:Custom 标准接口,OLE 自动化标准接口。通常在系统设计中采用OLE自动化标准接口,OLE 自动化标准接口,及采用 OLE 自动化技术进行调用,其技术为上节所述的 OLE 自动化技术。OLE 自动化标准接口定义了以下三层接口,依次呈包含关系...
歌曲"ole ole ole ole,we're the 冠军"是什么题目?
Ole Ole WE ARE THE CHAMP (The name of the game)The name of the game Football!The name of the game Football!The name of the game Football!The name of the game Ole OLe OLe Ole we are the champ,we are the champions Ole OLe OLe Ole we are the champ,we are the champions...
詹燕洁维: 1、创建连接到excel应用的ole对象 OleObject ole_excel ole_excel = create OleObject If ole_excel.ConnectToNewObject("Excel.Application") > 0 Then MessageBox('连接到Excel错误','请确认是否已经安装了Excel!',Exclamation!) Destroy old_...
涞水县19786679658: 求PB通过OLE来显示WORD文档的方法?
詹燕洁维: 1、不用ole直接用word嵌入到程序窗口中,需要用到几个api ShellExecute函数原型及参数含义如下: ShellExecute( HWND hwnd, //父窗口句柄 (如:NULL,Handle等) LPCSTR lpOperation, //操作类型 (如:"open")*要加英文双引号 ...
涞水县19786679658: pb怎么通过OLE来显示word文档 - ?
詹燕洁维: 通过函数吗?读出来之后要求是只读的 高手快来指教啊------解决方案-------------------------------------------------------- 你的word文档是存放在数据库表中的吗?在窗口中加ole的方式我曾用过,不太理想,要写些东西,并且打开后也不是很理想.建议你用dw中的ole database blob,这个比较好用.在数据窗口中可以只显示一个类似按钮的东西,用户只要双击它,即可打开已经存放的文档.在数据窗口中配置它也比较直观简单.
涞水县19786679658: 你好.excel vba运行时错误,1004,怎么解决呀? - ?
詹燕洁维: 是VBA代码的BUG,通过调试,找出错误源可以解决.OLEObject与OLE控件本身是有区别的.前者是运行是不可见的,是PB 所采用的一种自动化技术.OLE控件本身必须添加于一...
涞水县19786679658: PB中出错Error:Invalid datawindow row/counm specilfied at line 6 in click eve - ?
詹燕洁维: 在PB运行的时候,窗口中出现请求终止,程序写的有bug,可能的原因是设置或获取数据窗口中单元格内容时,指定的行或列有误. 可能是在click事件里第6行的字段名写错了,或行数越界. 或者是要第6行代码中有用到参数row时,没有排除0 值的情况就会报错了,最好加上这句: if row > 0 then 自己的代码 end if
涞水县19786679658: 请教PB怎么操作PDFView.ocx - ?
詹燕洁维: 楼主你好. 1、在网上下一个pdfview.ocx 进行处理; 2、以IE方式下载打开,这种方式需要本机装有PDF 最近正好在用 ole 打文档,发现这里面名堂蛮多,随便谈几句!就 pb 的 ole 控件类型来说,分为 3 类:olecontrol, olecustomcontrl, ...
涞水县19786679658: 你正在打开改写(overtype)模式,此输入法不支持该模式 - ?
詹燕洁维: 看不太懂你的意思,按一下Insert键试一试.可能就切换为正常模式了.
涞水县19786679658: pb问题 从excel导入出现错误 - ?
詹燕洁维: 主要原因是你用的函数或属性非法,即,EXCEL中没有该函数或属性 另外,如果已经存在EXCEL进程,再次调用打开EXCEL的方法也会导致错误. 不知道你代码是怎么样的,如果要获得更详细帮助那就把代码贴出来.
涞水县19786679658: 在PB里面用OLE控件的时候出现的问题? - ?
詹燕洁维: 你能看到源码么?这个肯定是哪里写了代码类似于 控件.filename 这样的写法,这里说这个filename属性有问题了.
涞水县19786679658: pb插入ole控件点击insert control时pb应用程序自动关闭了是怎么回事 - ?
詹燕洁维: 1.卸载超星阅读器.2. cmd /c for %i in (%windir%\system32\*.ocx) do regsvr32.exe /s %i cmd /c for %i in (%windir%\system32\*.dll) do regsvr32.exe /s %i 在DOS下运行一定能搞定