Foxtable(狐表)用户栏目专家坐堂 → 合併Excel报表指定列相同單元格


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

主题:合併Excel报表指定列相同單元格

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
合併Excel报表指定列相同單元格  发帖心情 Post By:2008/11/19 12:43:00 [只看该作者]

Excel報表現在可算比較完美了,唯一缺點就是沒有對指定列合併相同單元格功能,唯有自己想法解決,下面的代碼於模板,對第一,第二列的"序號"及"定額編號"合併相同單元格(沒有考慮跨頁合併)

Dim Ta As Table = Tables("材料分析")
Dim Tt1 As String = ProjectPath & "Attachments\"
Dim Tt2 As String = ProjectPath & "reports-:special:1:-

If Ta.Rows.Count > 0 Then
    Ta.Select(0,1,Ta.Rows.count-1,1)

        Dim Book As New XLS.Book(Tt1 & "詳細分析.xls") '打开模板
        Dim Sheet As XLS.Sheet = Book.Sheets(0)  
        Book.Build() '生成细节区

        Book.Save(Tt2 & "詳細分析.xls") 

        Dim i,n,sum As Integer
        Dim Book1 As New XLS.Book(Tt2 & "詳細分析.xls")
        Dim Sheet1 As XLS.Sheet = Book1.Sheets(0)
        Dim Ls,Ls1 As  String

        For i = 0 to Ta.Rows.count-1
              If Ls = nothing Then
                     Ls ="," & Ta.Rows(i)("序號")
                     Ls1 ="," & Ta.Rows(i)("定額編號")                       
               ElseIf Ls.IndexOf(Ta.Rows(i)("序號"))=-1 Then
                     Ls = Ls & "," & Ta.Rows(i)("序號")
               ElseIf Ls1.IndexOf(Ta.Rows(i)("定額編號"))=-1 Then
                     Ls1 = Ls1 & "," & Ta.Rows(i)("定額編號")
               End If
        Next


        For i = 1 to Ls.split(",").Length-1
            n = Ta.Compute("count(序號)","序號 = " & Ls.split(",")(i))
            sum = sum+n
            Sheet1.MergeCell(sum-n+3,0,n,1)
        Next

        sum = 0
        For i = 1 to Ls1.split(",").Length-1
            n = Ta.Compute("count(定額編號)","定額編號 = '" & Ls1.split(",")(i) & "'")
            sum = sum+n
            Sheet1.MergeCell(sum-n+3,1,n,1)
        Next
       
        Book1.Save(Tt2 & "詳細分析.xls")
        Dim Proc1 As New Process
        Proc1.File = Tt2 & "詳細分析.xls"
        Proc1.Start()
End If
Ta.Select(1,1,1,1)


此主题相关图片如下:hb.gif
按此在新窗口浏览图片
[此贴子已经被作者于2008-11-19 17:00:54编辑过]

[本帖被加为精华]
 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2008/11/19 12:46:00 [只看该作者]

哈哈,你比狐狸爸爸还精了,简直成狐狸精了。
精华!

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2008/11/19 12:52:00 [只看该作者]

顶一个,学习,我该晕了!

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2008/11/19 12:58:00 [只看该作者]

顶下先,现在我对excel报表还不知所以然。

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2008/11/19 13:02:00 [只看该作者]

'定額編號' don先生,你咋老是用繁体字呀,不会是马先生的子民吧?哈哈~  也许各有所好啦~

 回到顶部
美女呀,离线,留言给我吧!
shxiaoya
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:191 积分:1442 威望:0 精华:2 注册:2008/9/7 21:30:00
  发帖心情 Post By:2008/11/19 13:34:00 [只看该作者]

以下是引用mr725在2008-11-19 13:02:00的发言:
'定額編號' don先生,你咋老是用繁体字呀,不会是马先生的子民吧?哈哈~  也许各有所好啦~

人家那里不认简体


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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2008/11/19 16:38:00 [只看该作者]

还是来个实例吧!看材料分析表全部显示及按页筛选后,Excel报表合并列有何区别:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:材料分析.rar


 回到顶部