以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  做一个批量导出word功能,没能输出正确的个人信息,只输出模板,求助。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94351)

--  作者:白面书生
--  发布时间:2016/12/21 16:45:00
--  做一个批量导出word功能,没能输出正确的个人信息,只输出模板,求助。
代码如下:

If FileSys.FileExists(ProjectPath & "Images\\pp_dy.jpg") Then \'如果记录中有相片文件
Else
    FileSys.CopyDirectory (ProjectPath & "TestFiles", ProjectPath & "Images", True)   \'如果图片不存在,用一张全白图片复制过来.
End If

Dim tm As String  = ProjectPath & "Attachments\\干部任免审批表.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Images\\" & "pp_dy.jpg"

Dim drs As List(of DataRow) = DataTables("基本情况").Select("姓名 <> \'\'") \'筛选出符合条件的行
If drs.Count > 0 Then \'如果存在符合条件的行   
    For Each dr As DataRow In drs \'逐行生成报表
        Dim ffl As String = "d:\\数据导出目录(Word)\\" & dr("姓名") & ".doc"  \'指定目标文件
        Dim wrt As New WordReport(Tables("基本情况"),tm,ffl) \'定义一个WordReport
        wrt.BuildOne(dr)
    Next
End If

\'显示结束后,删除从二进制提取并保存在IMAGES目录下的临时图片文件\'
If FileSys.FileExists(ProjectPath & "Images\\pp_dy.jpg") Then \'如果指定的文件存在
    FileSys.DeleteFile(ProjectPath & "Images\\pp_dy.jpg",2,2) \'则彻底删除之
End If

Forms("导出数据").Close
MessageBox.Show("保存完毕, 默认保存在 D:盘 数据导出目录(Word) !", "提示",MessageBoxButtons.ok,MessageBoxIcon.Information)

--  作者:有点色
--  发布时间:2016/12/21 17:37:00
--  

 先试试加上 wrt.Show

 

 代码应该没问题的,做个实例发上看看。