回 帖 发 新 帖 刷新版面

主题:vfp操纵word时如何选定word里某部分文字啊?

想要用foxpro在word里打印“面积是10cm2。”(“2”为上标,如何实现呢?)
如下例:
Word=CREATEOBJECT('word.application')  &&创建WORD文档
Word.Documents.Open ('e:\abc.doc') &&打开文档
Word.Selection.WholeStory
Word.Selection.delete
 Word.Selection.insertafter("面积是10cm2") &&插入文字
 Word.Selection.Moveleft(1,1,0) &&??
 Word.Selection.Moveright(1,1,1) &&??
 Word.Selection.Font.Superscript=.T.&&设为上标??
Word.Selection.Moveleft(1,1,0) &&??
 Word.Selection.Moveright(1,1,1) &&??
 Word.Selection.Font.Superscript=.F.&&取消设定上标??
Word.Selection.insertafter("。")&&插入文字
Word.Selection.insertafter(CHR(13))&&插入换行符
 Word.Selection.insertafter(CHR(12))&&插入分页符
Word.ActiveDocument.Save  &&保存
Word.Documents.close  &&关闭
Word.Application.Quit  &&退出word
调了几日,就是不好使,无奈求助。。。

回复列表 (共2个回复)

沙发

网上搜不见;在word里录了宏也未弄明白。(在调试上段例子时应先在e盘建文件abc.doc)
请各位高手帮忙!!

板凳

现在在一行中打一个上标没问题了。
但打两个还是不行。
如下例:
Word=CREATEOBJECT('word.application')  &&创建WORD实例 
Word.Documents.Open ('e:\abc.doc') &&打开文档 
Word.Selection.WholeStory 
Word.Selection.delete 
Word.ActiveDocument.Content.insertafter("面积是10cm2") &&插入文字 
*Word.Selection 
Word.Selection.MOVE(1,7) 
Word.Selection.Moveright(1,1,1) 
Word.Selection.Font.Superscript=.T. 

Word.Selection.insertafter("。")&&插入文字
Word.Selection.MOVE(1,9) 
Word.Selection.Moveleft(1,1,1) 
Word.Selection.Font.Superscript=.F. 
 Word.Selection.insertafter("是10cm2") &&插入文字 
 Word.Selection.MOVE(1,3) 
 Word.Selection.Moveright(1,1,1) 
Word.Selection.Font.Superscript=.T. 
Word.Selection.insertafter("。")&&插入文字
Word.Selection.MOVE(1,15) 
Word.Selection.Moveleft(1,1,1) 
Word.Selection.Font.Superscript=.F. 
 
 Word.Selection.insertafter(CHR(13))&&插入换行符
Word.Selection.insertafter("面是10cm2") &&插入文字 

 Word.Selection.insertafter(CHR(12))&&插入分页符
Word.ActiveDocument.Save  &&保存
Word.Documents.close  &&关闭
Word.Application.Quit  &&退出word
谁有空调下?

我来回复

您尚未登录,请登录后再回复。点此登录或注册