Foxtable(狐表)用户栏目专家坐堂 → [求助]怎么能不通过报表的方式向word插入图片,怎么定义位置?


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

主题:[求助]怎么能不通过报表的方式向word插入图片,怎么定义位置?

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


加好友 发短信
等级:超级版主 帖子:106168 积分:539957 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/20 9:51:00 [显示全部帖子]

在需要放图片的地方插入一个书签,书签名称为“图片”

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

代码
Dim app As New MSWord.Application
try
    Dim fileName = "D:\问题\123.docx"
    Dim doc As object = app.Documents.Open(fileName)
    Dim item  = "图片" '书签名称
    Dim bmk = doc.Bookmarks.Item(item )
    Dim start = bmk.Start
    Dim End1 = bmk.End
    Dim reftrue = True
    Dim reffalse  = False
    Dim  missing = System.Reflection.Missing.Value
    Dim img = "D:\问题\1.png" '图片路径
    Dim rg = doc.Range(start, End1).InlineShapes.AddPicture(img, False, True)
    rg.Height=100 '图片高
    rg.Width=100 '图片宽
    Doc.save
catch ex As exception
    msgbox(ex.message)
finally
    app.Quit
End try

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


加好友 发短信
等级:超级版主 帖子:106168 积分:539957 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/20 11:43:00 [显示全部帖子]

查找特定字符并替换为图片

Dim app As New MSWord.Application
try
    Dim fileName = "D:\问题\123.docx"
    Dim doc As object = app.Documents.Open(fileName)
    Dim item  = "【图片】" '被替换的字符
    Dim sel = app.Selection
    sel .Find.ClearFormatting
    With sel .Find
        .Text = item
        .Replacement.Text = ""
        .Forward = True
        .Wrap = MSWord.WdFindWrap.wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = True
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    sel.Find.Execute
    Dim img = "D:\问题\1.png" '图片路径
    Dim pic = sel.InlineShapes.AddPicture(img, False, True)
    pic.Height=100 '图片高
    pic.Width=100 '图片宽
    Doc.save
catch ex As exception
    msgbox(ex.message)
finally
    app.Quit
End try

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


加好友 发短信
等级:超级版主 帖子:106168 积分:539957 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/20 13:53:00 [显示全部帖子]

.Replacement.Text = user.name

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


加好友 发短信
等级:超级版主 帖子:106168 积分:539957 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/20 14:48:00 [显示全部帖子]

.InlineShapes.AddPicture ( projectpath & "images\" & user.name &".png" )


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106168 积分:539957 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/20 14:55:00 [显示全部帖子]

Dim app As New MSWord.Application
try
    Dim fileName = "D:\问题\123.docx"
    Dim doc As object = app.Documents.Open(fileName)
    Dim item  = "【图片】" '被替换的字符
    Dim sel = app.Selection
    sel .Find.ClearFormatting
    With sel .Find
        .Text = item
        .Replacement.Text = user.name
        .Forward = True
        .Wrap = MSWord.WdFindWrap.wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = True
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    sel.Find.Execute
    Doc.save
catch ex As exception
    msgbox(ex.message)
finally
    app.Quit
End try

 回到顶部