2,723
社区成员
发帖
与我相关
我的任务
分享
lnReccount=Int(Val(Strtran(Thisform.Label_Recc.Caption,'记录数:','')))
If lnReccount=0
Return
Endif
Select MyStaffView
lnNowRecno=Recno()
Count For 批量选项=1 To lnPLSum
Go lnNowRecno
If lnPLSum<=1 && 没有批量选择
lcDelimFile=Putfile('',Alltrim(MyStaffView.部门)+'-'+Transform(MyStaffView.工号)+'-'+Alltrim(MyStaffView.姓名)+'-劳动合同续签员工确认单','doc')
Else && 批量选择
lcDelimFile=Putfile('','劳动合同续签员工确认单(批量)','doc')
Endif
If Empty(lcDelimFile)
Return
Endif
Try
loWordApp=Newobject("Word.Application") && 产生Word对象
llSuccess=.T.
Catch To oErr
Messagebox(oErr.Message,16,'信息提示')
llSuccess=.F.
Endtry
If llSuccess
If Not Type("loWordApp")="O"
Messagebox("创建 Word 对象失败!"+Space(3),48,"信息提示")
Return
Endif
Else
Messagebox("创建 Word 对象失败,确认本机是否已经安装了 Word ?"+Space(3),48,"信息提示")
Return
Endif
Try
loWordApp.DisplayAlerts=.F.
loWordApp.Documents.Add
loWordApp.Documents(1).Range.Font.Size=14
loWordApp.Documents(1).Range.Font.Name="仿宋_GB2312"
If lnPLSum<=1 && 没有批量选择
loWordApp.ActiveDocument.Content.insertafter(" 劳动合同续签员工确认单 "+Chr(10)+Chr(10))
loWordApp.Selection.MoveRight(1,Lenc(" 劳动合同续签员工确认单 "),1) && 从第1个字符选择指定长度的字符
loWordApp.Selection.ParagraphFormat.Alignment=1 && 把选择的字符设置居中
loWordApp.Selection.Font.Name="仿宋_GB2312" && 设置选择的字符字体名称
loWordApp.Selection.Font.Size=16 && 设置选择的字符字体大小
loWordApp.Selection.Font.Bold=.T. && 设置选择的字符粗体
loWordApp.Selection.Font.Underline=1 && 设置选择的字符下划线
loWordApp.Selection.EndKey(6) && 移动光标至文档结尾
Select MyStaffView
loWordApp.ActiveDocument.Content.insertafter(Alltrim(姓名)+Iif(性别='男','先生,','女士,')+Chr(10))
loWordApp.Selection.MoveRight(1,Lenc(Alltrim(姓名)),1) && 选择姓名
loWordApp.Selection.Font.Underline=1
loWordApp.Selection.EndKey(6) && 移动光标至文档结尾
loWordApp.ActiveDocument.Content.insertafter(Space(4)+[您好!公司与您签订的《劳动合同》将于]+Left(合同终止日,4)+[年]+Substr(合同终止日,6,2)+[月]+Right(合同终止日,2)+[日到期,您是否同意续签,请签属此确认单,于 年 月 日前反馈人事行政部,以便办理续签相关事宜。若不同意续签,请本人提出书面“离职申请”,批准后到人事行政部办理相关离职手续。]+Chr(10)+Chr(10))
loWordApp.ActiveDocument.Content.insertafter([□ 同意续签 □ 不同意续签]+Chr(10)+Chr(10))
loWordApp.ActiveDocument.Content.insertafter(Space(4)+[员工本人签名:]+Chr(10))
loWordApp.ActiveDocument.Content.insertafter(Space(35)+[年 月 日])
loWordApp.Selection.EndKey(6)
Else && 批量选择
Select MyStaffView
Set Filter To 批量选项=1
lnI=0
Scan
If lnI>0
loWordApp.Selection.InsertBreak(7) && 分页符
Endif
loWordApp.ActiveDocument.Content.insertafter(" 劳动合同续签员工确认单 "+Chr(10)+Chr(10))
loWordApp.Selection.MoveRight(1,Lenc(" 劳动合同续签员工确认单 "),1) && 从第1个字符选择指定长度的字符
loWordApp.Selection.ParagraphFormat.Alignment=1 && 把选择的字符设置居中
loWordApp.Selection.Font.Name="仿宋_GB2312" && 设置选择的字符字体名称
loWordApp.Selection.Font.Size=16 && 设置选择的字符字体大小
loWordApp.Selection.Font.Bold=.T. && 设置选择的字符粗体
loWordApp.Selection.Font.Underline=1 && 设置选择的字符下划线
loWordApp.Selection.EndKey(6)
loWordApp.ActiveDocument.Content.insertafter(Alltrim(姓名)+Iif(性别='男','先生,','女士,')+Chr(10))
loWordApp.Selection.MoveRight(1,Lenc(Alltrim(姓名)),1)
loWordApp.Selection.Font.Underline=1
loWordApp.Selection.EndKey(6)
loWordApp.ActiveDocument.Content.insertafter(Space(4)+[您好!公司与您签订的《劳动合同》将于]+Left(合同终止日,4)+[年]+Substr(合同终止日,6,2)+[月]+Right(合同终止日,2)+[日到期,您是否同意续签,请签属此确认单,于 年 月 日前反馈人事行政部,以便办理续签相关事宜。若不同意续签,请本人提出书面“离职申请”,批准后到人事行政部办理相关离职手续。]+Chr(10)+Chr(10))
loWordApp.ActiveDocument.Content.insertafter([□ 同意续签 □ 不同意续签]+Chr(10)+Chr(10))
loWordApp.ActiveDocument.Content.insertafter(Space(4)+[员工本人签名:]+Chr(10))
loWordApp.ActiveDocument.Content.insertafter(Space(35)+[年 月 日])
loWordApp.Selection.EndKey(6)
lnI=lnI+1
EndScan
Set Filter To
Go lnNowRecno
Endif
loWordApp.Documents(1).SaveAs(lcDelimFile)
loWordApp.Visible=.T.
Catch To oErr
loWordApp.ActiveDocument.Close(.F.)
loWordApp.Quit
Release loWordApp
Messagebox(oErr.Message,16,'信息提示')
Endtry
Create Cursor T1 (姓名 C(10))
Insert Into T1 (姓名) Values ("王庆")
Insert Into T1 (姓名) Values ("李先生")
Insert Into T1 (姓名) Values ("欧阳震华")
Insert Into T1 (姓名) Values ("成龙")
* 以上生成测试数据
myword=Createobject("Word.application")
If Type("myword")#"O"
Messagebox( "访问Word失败!请检查你的系统是否正确安装 Word 软件!",48,"没有安装Word")
Return
Endif
*myword.Visible=.T.
myword.Documents.Add
myword.Documents(1).Range.Font.Size=24
myword.Documents(1).Range.Font.Name="仿宋_GB2312"
myword.Documents(1).Range.Font.Bold=.T.
Select T1
Scan
lcText=Alltrim(姓名)+Space(1)+"同志系我公司销售科******"+Chr(10)
myword.ActiveDocument.Content.insertafter(lcText) && 在当前位置插入字符串和换行符。
myword.Selection.MoveRight(1,Lenc(Alltrim(姓名)),1) && 选择到姓名
myword.Selection.Font.Name="华文行楷" && 设置选择内容的字体
*myword.Selection.Font.Size=24 && 设置选择内容的字号
myword.Selection.Move(1,Lenc(lcText)-Lenc(Alltrim(姓名))+1) && 移到此字符串尾 长度+1是因为换行符 Chr(10)
Endscan
myword.Documents(1).SaveAs("C:\WordTest.doc")
myword.Quit
Release myword
Messagebox( "生成WORD文件完毕,文件位置 C:\WordTest.doc !",64,"完毕")
其他示例:
Word.ActiveDocument.Content.insertafter("面积是10CM2") &&插入文字
Word.Selection.Move(1,8)
Word.Selection.Moveleft(1,1,1)
Word.Selection.Font.Superscript=.T.
Word.Selection.insertafter("。")&&插入文字
Word.Selection.Move(1,1) &&从当前选中字体开始向右移一个,即到了“。”之后
Word.Selection.Moveleft(1,1,1)
Word.Selection.Font.Superscript=.F.
Word.Selection.insertafter("是10CM2") &&插入文字
Word.Selection.Move(1,1) &&从当前选中字体开始向右移一个,即到了字符“2”之后
Word.Selection.Moveleft(1,1,1)