|
第 1 楼
部分代码: *用WORD创建新文档,再根据DBF的资料创建自几所需要的表格文档
Thisform.chnagedbf &&转表查询生成新表、公用变量k,arrcolor[j,k],arrWash[1],arrCrock[1] WAIT windows("起动WORD制做文档,请稍等....") NOWAIT AT MROW(Thisform.Name,3),MCOL(Thisform.Name,3) OleWord=CREATEOBJECT('word.application') &&创建word目标 OleWord.Visible=.F. &&word隐藏,为.F.可在后台操作 OleWord.Documents.add() &&增加新的word文档 *-- 页面设置 WITH OleWord.ActiveDocument.PageSetup *1.设置顶边距为2厘米 .TopMargin=2/0.035 *2.设置底边距为4厘米 .BottomMargin=4/0.035 *3.设置左边距为2厘米 .LeftMargin=2/0.035 *4.设置右边距为2厘米 .RightMargin=2/0.035 *页面0为纵向,1为横向 .Orientation=1 ENDWITH ********************************************************************************** WITH OleWord.Selection .TypeParagraph &&回车符 .Text="致" &&加完是选定状态 .Font.size=20 &&字体大小 .Moveright(3,1) &&加完是选定状态,移动一次才不覆盖,3是右移参数,左移1字节。 .TypeParagraph .insertafter(SPACE(4)+"兴启") .Font.size=20 .Moveright(3,1) .TypeParagraph .Moveright(3,1) .insertafter(SPACE(6)+"多谢贵公司的支持,贵公司在我厂所配COT样办牢度如下:") .Font.size=14 .Moveright(3,1) .TypeParagraph ENDWITH ******创建表格******************************* OleWord.Selection.TypeParagraph OleWord.Selection.TypeParagraph OleWord.Selection.Moveup(5,1) &&第一个5是上移参数,第二个数字是上移1行,留一空行在格表下面 otemp=OleWord.Selection.Range OleWord.ActiveDocument.Tables.Add(otemp,k+3,6,5,0) &&插入k+3行6列表格 OleWord.Selection.SelectRow &&光标在第一格,要移动用Moveright() 等
WITH OleWord.Selection .Tables(1).Rows.Height=0.77/0.035 &&选定表格所有行高0.77CM .Tables(1).Columns.PreferredWidth=2.5/0.035 &&选定表格所有列宽 1.9cm .Tables(1).Columns(1).PreferredWidth=4.73/0.035 &&选定表格第一列宽 4.73cm *添加数据,表格合并后就不能用此方法加资料 .Tables(1).rows(3).cells(3).range.insertafter("颜色变化") .Tables(1).rows(3).cells(4).range.insertafter("颜色沾色") .Tables(1).rows(3).cells(5).range.insertafter("干 擦") .Tables(1).rows(3).cells(6).range.insertafter("湿 擦") FOR i=1 TO k FOR j=1 TO 6 .Tables(1).rows(i+3).cells(j).range.insertafter(arrcolor[i,j]) ENDFOR ENDFOR
**选定合并 .MoveLeft(3,1) &&左移去掉选定.第一个3是左移参数,第二个数字是左移1字节 .MoveDown(5,2,1) &&下移两格,5是下移参数,2是移两格,1是按SHIFT,选择3格 .Cells.Merge &&合并选定的三格
.MoveRight(3,1) &&右移去掉选定.第一个3是右移参数,第二个数字是右移1格 .MoveDown(5,2,1) .Cells.Merge &&合并选定的三格
.MoveRight(3,1) &&右移一格去掉选定 .Moveright(3,2,1) &&3是右移参数,右移1格,最后1是按SHIFT键,变成选定二格。 .Cells.Merge &&合并选定的两格
.MoveDown(5,1) .Moveright(3,2,1) &&3是右移参数,左移1格,最后1是按SHIFT键,变成选定二格。 .Cells.Merge &&合并选定的两格
.Moveright(3,1) &&右移一格去掉选定 .Moveright(3,2,1) &&3是右移参数,左移1格,最后1是按SHIFT键,变成选定二格。 .Cells.Merge &&合并选定的两格 .Moveup(5,1) &&上移一格,5是下移参数,2是移两格,1是按SHIFT,选择3格 .Moveright(3,2,1) .Cells.Merge ***加入资料,因要合并不方便操作,所以合并后加放标题资料 .insertafter("摩 擦") .MoveDown(5,1) .insertafter(arrCrock[1]) .MoveLeft(3,2) .insertafter(arrWash[1]) .Moveup(5,1) .insertafter("耐 洗") .MoveLeft(3,2) .insertafter("颜 色") .MoveLeft(3,2) .insertafter("色 号") .MoveDown(5,k,1) &&5是下移参数,下移k+2格,最后1是按SHIFT键,变成选定多格。 .MoveRight(3,5,1) &&3是右移参数,右移5格,最后1是按SHIFT键,变成选定多格。 .ParagraphFormat.Alignment=1 && 1居中 2左对齐,3右对齐,4分散对齐 .MoveDown(5,1) .TypeParagraph .insertafter(SPACE(4)+"祝") .MoveRight(3,1) .TypeParagraph .insertafter("生意兴隆!") .MoveRight(3,1) .TypeParagraph .insertafter(SPACE(25)+"先科有限公司") .Font.size=20 .Moveright(3,1) .TypeParagraph .insertafter(SPACE(30)+DTOC(DATE())) .Moveright(3,1) ENDWITH MESSAGEBOX("制作文档完毕!",64,"提示")
OleWord.Visible=.T. | |