比如表1花名册的内容
姓名 性别 年龄 工龄 省略
XX XX XX XX XX
oo oo oo oo oo
有很多方法搞定的,比如在表2的某个地方指定名称 就A1好了
A1填上员工名字
然后表2用vlookup全部在表1里自动匹配,这样的话,是一个一个员工的信息,你输1个,才生成一个
VBA的话
Sub g()
Dim h%, i%, t% '定义h,i,t为整型
For i = 1 To 50
Sheet1.Activate '激活sheet1
If Worksheets.Count <= Application.WorksheetFunction.CountA(Range("a1:a88")) Then
'对比工作表的数量与A列非空单元格的数列,到时有标题行的话,将A1改成A2就是
Sheets.Add '添加工作簿
End If
Next
For t = 1 To Worksheets.Count '依据工作表数量确定循环次数
Sheets("sheet" & t).Move before:=Sheets(t) '将工作表按顺位排序
Next
For h = 1 To 50
Sheet1.Activate '激活sheet1
If Cells(h, 1) <> "" Then '如果单元格a1(h)不为空,那么
Rows(h).Copy '复制A1行
Sheets(h + 1).Select '选择sheet(1(h)+1)工作表
Rows(2).Select '选择 行(2)
Selection.PasteSpecial '粘贴
Sheets(h + 1).Name = Range("a2").Value'将工作表的名称命名为当前工作表A2单元格的内容
End If
Next
End Sub
ALT+F11,然后双击thisworkbook,复制进去就好。
不过要保证工作表的名称都是最初的状态,否则排序失效,并且报错。
比如sheet1,sheet2,shett3,当前有的表格,表名要按sheet+数字的格式来
你吃透一个函数vlookup,自己很快就会做了