Foxtable(狐表)用户栏目专家坐堂 → excel报表问题


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

主题:excel报表问题

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
excel报表问题  发帖心情 Post By:2017/8/17 11:16:00 [显示全部帖子]

如果文字超过单元格 如何让单元格自适应文字大小?

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 17:12:00 [显示全部帖子]

谢谢 马上测试

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 17:21:00 [显示全部帖子]

用这个代码以后 所有格式都没有了  而且关键的数据区也没有自动调整行高  

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 17:25:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
这个是没有自动行高的代码生成的



这个是自动行高

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


[此贴子已经被作者于2017/8/17 17:26:26编辑过]

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 17:35:00 [显示全部帖子]

有没有办法在报表事件里对某个细节区的行高单独指定?

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 18:12:00 [显示全部帖子]

红色区域是一个子表数据生成区,如何将这个区域设置成自动行高

这个应该是单元格合并造成的,如果用2楼的代码就会将上面很多合并的单元格格式带歪,但是这个核心需求区域却不受影响。我参照下面这个代码做了修改 没有效果。
Dim App As New MSExcel.Application
try
    

            Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "reports\工单.xls")
            Dim tempWs = wb.WorkSheets.Add
           '' For k As Integer = 1 To Wb.WorkSheets.Count - 1                
                Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
                Dim rg As MSExcel.Range
                For Each rg In ws.UsedRange
                    If rg.MergeCells Then
                        Dim tempCell As MSExcel.Range
                        Dim width As Double = 0
                        Dim tempCol
                        For Each tempcol In rg.MergeArea.Columns
                            width = width + tempcol.ColumnWidth
                        Next
                        tempWs.Columns(1).WrapText = True
                        tempWs.Columns(1).ColumnWidth = width
                        tempWs.Columns(1).Font.Size = rg.Font.Size
                        tempWs.Cells(1, 1).Value = rg.Value
                        tempWs.Cells(1, 1).RowHeight = 0
                        tempWs.Cells(1, 1).EntireRow.Activate
                        tempWs.Cells(1, 1).EntireRow.AutoFit
                        If (rg.RowHeight < tempWs.Cells(1, 1).RowHeight) Then
                            Dim tempHeight As Double
                            Dim tempCount As Integer
                            tempHeight = tempWs.Cells(1, 1).RowHeight
                            tempCount = rg.MergeArea.Rows.Count
                            For Each addHeightRow As object In rg.MergeArea.Rows
                                If (addHeightRow.RowHeight < tempHeight / tempCount) Then
                                    addHeightRow.RowHeight = tempHeight / tempCount
                                End If
                                tempHeight = tempHeight - addHeightRow.RowHeight
                                tempCount = tempCount - 1
                            Next
                            rg.WrapText = True
                        End If
                    End If
                Next
                
           '' Next
            app.DisplayAlerts = False
            tempWs.Delete
            Wb.Save
            
            'Dim txt1 As WinForm.TextBox = Forms("翻译器").Controls("TextBox3")
            'txt1.text = file & vbcrlf & txt1.text & vbcrlf
            Application.DoEvents()
           '' FileCount=FileCount+1
            
        
    
catch ex As exception
    msgbox(ex.message)
finally
    App.Quit()
End try
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工单.xls


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 19:30:00 [显示全部帖子]

在生成报表的时候这个区域是动态变化的 如何来判断?

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 19:42:00 [显示全部帖子]

而且这个只是把字体变小适应单元格

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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 19:53:00 [显示全部帖子]

以下是引用有点甜在2017/8/17 19:50:00的发言:

 

判断列和合并列数啊。


感觉这个方法太复杂了 如何判断哪个单元格数据需要调整?


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


加好友 发短信
等级:狐精 帖子:3361 积分:24802 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2017/8/17 20:16:00 [显示全部帖子]

我重新生成了一张 用您的代码 程序打开excel是这样的

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



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