以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]工作簿合并 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178434) |
-- 作者:lgj716330 -- 发布时间:2022/7/4 15:40:00 -- [求助]工作簿合并 某个代码生成了一个工作簿A,但这个工作簿有30来个工作表,经常卡死打不开,现在计划分别生成三个工作簿A1、A2、A3,每个工作簿大概10来个工作表。然后再通过代码合并到一个工作簿中去,这个合并的过程要怎么写 [此贴子已经被作者于2022/7/4 15:40:25编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/7/4 15:42:00 -- http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=97286&replyID=670470&skin=1 |
-- 作者:lgj716330 -- 发布时间:2022/7/4 20:38:00 -- Dim dlg As New FolderBrowserDialog Dim wj As String If dlg.ShowDialog = DialogResult.Ok Then Dim Book1 As New XLS.Book Dim mbwj As String = ProjectPath & "Attachments\\测试.xlsx" Dim Values As New List(Of String) From {ProjectPath & "Attachments\\测试1.xlsx", ProjectPath & "Attachments\\测试2.xlsx"} Dim Value As String For Each Value In Values wj = value Dim ss() As String = FileSys.GetName(wj).split(".") If ss(1) = "xlsx" Then output.show(wj) Dim Book2 As New XLS.Book(wj) For i As Integer = Book2.Sheets.Count - 1 To 0 Step - 1 Dim Sheet = Book2.Sheets(i) Book2.Sheets.Remove(Sheet) sheet.name = ss(0) & sheet.name Book1.Sheets.Add(Sheet) Next End If Next Book1.Save(mbwj) End If 上述代码把文件名如“测试1、测试2”也取过来了,怎样只取工作表名,不取文件名
|
-- 作者:有点蓝 -- 发布时间:2022/7/4 20:42:00 -- 去掉 sheet.name = ss(0) & sheet.name就怕不同文件工作表名有重复的
|