Excel 每一行数据填入一个表格

Sub Button1_Click()
'
' Button1_Click Macro
'
    Dim col%, Myr&, Arr, i&
    Dim Sht As Worksheet, Sht1 As Worksheet
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set Sht1 = Sheet1
    Sht1.Activate
    For Each Sht In Sheets
        If Sht.Name <> Sht1.Name And Sht.Name <> "sheet2" Then Sht.Delete
    Next Sht
    col = 1
        On Error Resume Next
    Myr = [a65536].End(xlUp).Row
    Arr = Range("a1:n" & Myr)
    For i = 2 To UBound(Arr)
        Sheets("sheet2").Copy after:=Sheets(Sheets.Count)
        With ActiveSheet
            .Name = Arr(i, col)
            .[d4] = Arr(i, col): .[g3] = Arr(i, 4): .[g5] = Arr(i, 5): .[d5] = Arr(i, 2)
        End With
    Next
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

  • sheet1是数据表 sheet2是需要填入数据的模板表
  • col是需要以此为表命名的那一列
  • d4 g3是模板表需要填入数据的单元格 Arr(i, 4)是数据表对应的单元格

还有个很好用的方法是index+match函数

posted @   xiaowawaya  阅读(499)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示