因为知e799bee5baa6e79fa5e98193e7898" />
乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 怎样使用<em>VBA</em>根据工作表的内容另存为单独的工作簿,另存的工作...-vba 生

怎样使用<em>VBA</em>根据工作表的内容另存为单独的工作簿,另存的工作...-vba 生

作者:乔山办公网日期:

返回目录:excel表格制作


当然 可以, 一次生成100个 1000个 都没问题

因为知e799bee5baa6e79fa5e98193e78988e69d83332道的信息有限,你试试下面这个:

Sub ssk()
Dim FName As String
Dim MyExcelApp As New Excel.Application
Dim W00KBookName As String
W00KBookName = Excel.Application.ActiveWorkbook.Name
Dim i As Integer

For i = 1 To Excel.Application.Workbooks(W00KBookName).Sheets.Count
   Excel.Application.Workbooks(W00KBookName).Sheets(i).Activate
   If Cells(2, 1) = "单" Then
      FName = "DS" & Left(Excel.Application.Workbooks(W00KBookName).Sheets(i).Name, 2) & ".XLS"
   Else
      FName = "DX" & Left(Excel.Application.Workbooks(W00KBookName).Sheets(i).Name, 2) & ".XLS"
   End If
   
   Cells.Select
   Selection.Copy
    
   MyExcelApp.Workbooks.Add
   MyExcelApp.Workbooks(1).Activate
   Sheets(1).Select
   Cells.Select
   ActiveSheet.Paste

   MyExcelApp.Workbooks(1).SaveAs Filename:=Excel.Application.ThisWorkbook.Path & "\" & FName
   MyExcelApp.Workbooks(1).Close
   
Next i

Set MyExcelApp = Nothing

End Sub

可通过Word中“邮件”的“邮件合并”功能,将规律性的数据生成多份独立的工作簿,且内容到指定单元格位置。



代码:

Sub test()
    Dim wb As Workbook '打开的文件e799bee5baa6e59b9ee7ad94365
    Dim wb1 As Workbook '当前文件
    Dim x As Integer
    Set wb1 = ThisWorkbook
    For x = 2 To wb1.Sheets(1).Range("a100").End(3).Row
        Set wb = Workbooks.Add
        wb.Sheets("Sheet1").Range("b1:b3") = Application.Transpose(wb1.Sheets("Sheet1").Range("b" & x, "d" & x))
        
        wb.Sheets(1).Range("a1:a3") = Application.Transpose(wb1.Sheets(1).Range("b1:d1"))
        
        
        
        wb.SaveAs ThisWorkbook.Path & "/" & wb1.Sheets(1).Cells(x, 2) & ".xlsx"
        wb.Close False
        
    Next x
    
End Sub

结果与例表:

相关阅读

关键词不能为空
极力推荐
  • excel通配符-公式中使用通配符 *、

  • 表示任意一个字符1、打开工作表,需要计算网球的销售记录条数,如下图。2、选中D2单元格录入公式:“=COUNTIF”,按回车就可计算出网球的数量了。-excel通配符

ppt怎么做_excel表格制作_office365_word文档_365办公网