Foxtable(狐表)用户栏目专家坐堂 → [求助]Excel报表中替换问题


  共有2739人关注过本帖树形打印复制链接

主题:[求助]Excel报表中替换问题

帅哥哟,离线,有人找我吗?
积水成渊
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:348 积分:2805 威望:0 精华:0 注册:2016/8/24 10:39:00
[求助]Excel报表中替换问题  发帖心情 Post By:2018/9/29 10:35:00 [显示全部帖子]

需要做一个报表,报表的模板写了,其中报表的一个单元格内容为:本月总共参加会议的人数<人数>,现在我需要做的功能就是将<人数>替换。查了写资料写了如下代码
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "Attachments\测试.xlsx")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.UsedRange
For Each dr As DataRow In DataTables("表A").DataRows
Dim s As String
s ="<" & dr("项目信息") & ">"
rg.Replace(What:=s, Replacement:=dr("值"))
Next
app.visible = True

功能是实现了,但是却在弹出报表前报错了,这里是不是可以先判断下条件,该怎么进行修改
问题2,通过广论坛发现一个类似的报表替换例子:
Dim app As New MSWord.Application
try
    Dim fileName = "d:\test.doc"
    Dim doc = app.Documents.Open(fileName)
    app.Selection.Find.Text = "[第一列]"
    app.Selection.Find.Replacement.ClearFormatting()
    app.Selection.Find.Replacement.Text = "123456789"
    app.Selection.Find.Execute(Replace:=MSWord.WdReplace.wdReplaceAll)
    app.visible = True
catch ex As exception
    msgbox(ex.message)
    app.Quit
finally
    
End try
这段代码如何改成Excel的效果

 回到顶部
帅哥哟,离线,有人找我吗?
积水成渊
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:348 积分:2805 威望:0 精华:0 注册:2016/8/24 10:39:00
  发帖心情 Post By:2018/9/29 10:52:00 [显示全部帖子]

奇怪,我重新设置了一个报表,同样的代码,这次没有报错了

 回到顶部
帅哥哟,离线,有人找我吗?
积水成渊
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:348 积分:2805 威望:0 精华:0 注册:2016/8/24 10:39:00
  发帖心情 Post By:2018/9/29 10:54:00 [显示全部帖子]

上传下例子,或许可以方便别人
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:excel替换案例.foxdb




 回到顶部
帅哥哟,离线,有人找我吗?
积水成渊
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:348 积分:2805 威望:0 精华:0 注册:2016/8/24 10:39:00
  发帖心情 Post By:2018/9/29 10:55:00 [显示全部帖子]

是的,这个是我没有考虑好的

 回到顶部