Foxtable(狐表)用户栏目专家坐堂 → excel报表中如何将图片居中


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

主题:excel报表中如何将图片居中

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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
excel报表中如何将图片居中  发帖心情 Post By:2018/9/21 22:51:00 [只看该作者]

如题,图片高度固定 但是长度不确定 所以想动态控制X

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


加好友 发短信
等级:超级版主 帖子:112419 积分:572369 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/21 23:09:00 [只看该作者]

这个使用模板没有办法处理,只能生成后使用vba设置

网上搜索“execl vba 设置图片的位置”

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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 8:51:00 [只看该作者]

网上找了几个 不知道怎么在FT里引用

https://jingyan.baidu.com/article/656db91881b672e381249cd4.html


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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 8:58:00 [只看该作者]

http://club.excelhome.net/thread-1304253-1-1.html

这个思路不错  

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/25 9:06:00 [只看该作者]


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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 10:26:00 [只看该作者]

这个有用  但是发现个问题 如果是合并的单元格就不行 图片只会放到第一个单元格里

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/25 11:08:00 [只看该作者]

以下是引用rjh4078在2018/9/25 10:26:00的发言:
这个有用  但是发现个问题 如果是合并的单元格就不行 图片只会放到第一个单元格里

 

合并单元格同样可以,请认真测试。

 

具体问题发上来看看,截图说明你需要的效果。


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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 13:05:00 [只看该作者]


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

在模板里是合并了单元格  
但是在生成的表里 图片被放到了一个单元格

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

[此贴子已经被作者于2018/9/25 13:05:41编辑过]

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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 13:08:00 [只看该作者]

Dim djna As String=args(0) ''第一个参数 单据名
vars("文件路径")=""
With Tables(args(1))
    If .current IsNot Nothing Then
        Dim lj As String=Functions.Execute("打印模板缓存",djna)
        If lj<>"" Then
            Dim Book As New XLS.Book(lj)
            Dim fl As String =lj.Replace("Attachments","Reports")
            Book.Build() '生成细节区
            Book.Save(fl)
            Dim App As New MSExcel.Application
            try
                Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
                Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1) ''start
                
                Dim Rng As MSExcel.Range
                Dim Pic As MSExcel.shape
                
                For Each Pic In ws.shapes
                    '' On Error Resume Next
                    Dim i As Integer = 0
                    rng = pic.TopLeftCell
                    Dim width As Double = 0
                    Dim height As Double = 0
                    If rng.MergeCells Then
                        For Each tempcol As object In rng.MergeArea.Columns
                            width = width + tempcol.width
                        Next
                        For Each temprow As object In rng.MergeArea.Rows
                            height = height + temprow.height
                        Next
                    Else
                        width = rng.width
                        height = rng.height
                    End If
                    With Pic
                        If .Height / .Width > Height / Width Then
                            .Height = Height - 5
                            .Top = rng.Top + 2.5
                            .Left = rng.Left + (Width - .Width) / 2
                            .Placement = 1
                        Else
                            .Width = Width - 5
                            .Left = rng.Left + 2.5
                            .Top = rng.Top + (Height - .Height) / 2
                            .Placement = 1
                        End If
                    End With
                Next
                               
                app.visible = True                                
            catch ex As exception
                msgbox(ex.message)
                app.quit
            End try
            
            
            
        End If
    End If
End With
[此贴子已经被作者于2018/9/25 13:09:06编辑过]

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


加好友 发短信
等级:狐精 帖子:3380 积分:24945 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2018/9/25 14:58:00 [只看该作者]

我仔细测试了下 发现问题所在:我在模板里虽然合并了单元格,但是生成报表的时候,单元格缺没有合并,


我单独做了一个excel文件,测试上面代码是正确的。

现在的问题是,怎么解决生成报表时,单元格没有按预期合并的问题。

 回到顶部
总数 15 1 2 下一页