请问各位高手,如何将几个通用字段合并到一起,然后送入word中 编辑?

yt1123 2003-06-02 11:38:57
我想制作一个考试用的数据库,试题以word文档形式,放在一个通用型字段中,我想最后能由不同记录中试题,合并成一个新的word文档,应该如何实现
...全文
64 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yt1123 2003-06-04
  • 打赏
  • 举报
回复
xiolig(凌霄),程序可以运行,但是只是将第一条记录反复送入了word啊?!
yt1123 2003-06-04
  • 打赏
  • 举报
回复
我也试过了,在word97下执行没问题,在我的word2000上执行就出毛病了!
xiolig 2003-06-04
  • 打赏
  • 举报
回复
怎么回事?我刚才还跟踪执行了一遍,没问题呀!
你不妨在SCAN语句前加上一行 oWord.Visible = .T.
进入单步调试方式检查一下程序的执行过程
xiolig 2003-06-03
  • 打赏
  • 举报
回复
use 成功
oForm = CREATEOBJECT("Form")
oForm.AddObject("word","OLEBoundControl")
oForm.word.ControlSource = "成功.试题题干"
oWord = CREATEOBJECT("Word.Application")
oWord.Documents.Add &&新建目标文档
oTarget = oWord.Documents(oWord.Documents.Count)
SCAN
oForm.word.Refresh
IF "Word.Document"$oForm.word.OleClass
oForm.word.DoVerb(-2)
oSource = oWord.ActiveDocument
oWord.Selection.WholeStory
oWord.Selection.Copy
oTarget.Activate
oWord.Selection.Paste
oSource.Close
ENDIF
ENDSCAN
yt1123 2003-06-03
  • 打赏
  • 举报
回复
谢谢xiolig(凌霄),真的太感谢了。只是我有几个记录,怎么将他们都送入一个文档中,我加了个循环好象不行!
use 成功
oForm = CREATEOBJECT("Form")
oForm.AddObject("word","OLEBoundControl")
oForm.word.ControlSource = "成功.试题题干"
oForm.word.HostName = "xiolig" &&文档标识
IF "Word.Document"$oForm.word.OleClass
oForm.word.DoVerb(-2) &&在新窗口中打开WORD文档
oWord = GETOBJECT(,"Word.Application")
do whil .not.eof()
oWord.Selection.WholeStory &&全选,有待改进
oWord.Selection.Copy &&复制文件内容
oWord.Documents.Add &&新建文档
oWord.Selection.Paste &&粘贴
skip
enddo
FOR EACH oDoc IN oWord.Documents
IF oDoc.Name == oForm.word.HostName
oDoc.Close(.F.) && 关闭源文件
EXIT
ENDIF
NEXT
ENDIF
程序应该如何修改?
xiolig 2003-06-02
  • 打赏
  • 举报
回复
我的解决办法不是很好(主要是会影响视觉效果)。
以下代码将一个通用字段(WORD文档)的内容复制到一个新文档中:
USE 数据表
oForm = CREATEOBJECT("Form")
oForm.AddObject("word","OLEBoundControl")
oForm.word.ControlSource = "数据表.OLE字段"
oForm.word.HostName = "xiolig" &&文档标识
IF "Word.Document"$oForm.word.OleClass
oForm.word.DoVerb(-2) &&在新窗口中打开WORD文档
oWord = GETOBJECT(,"Word.Application")
oWord.Selection.WholeStory &&全选,有待改进
oWord.Selection.Copy &&复制文件内容
oWord.Documents.Add &&新建文档
oWord.Selection.Paste &&粘贴
FOR EACH oDoc IN oWord.Documents
IF oDoc.Name == oForm.word.HostName
oDoc.Close(.F.) && 关闭源文件
EXIT
ENDIF
NEXT
ENDIF
错误难免,相互学习。

2,749

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧