怎样才能在Excel里依据客户名称把销售数据表迅速拆成多个独立的「分成表」文件呢?
如果你熟悉VBA编程,这是一个高效的办法。以下是具体步骤:
vba复制SubSplitDataByCustomer() DimwsAsWorksheet DimlastRowAsLong DimiAsLong DimcustomerNameAsString DimnewWBAsWorkbook DimsavePathAsString '设置当前工作表 Setws=ThisWorkbook.ActiveSheet '获取数据的最后一行 lastRow=ws.Cells(ws.Rows.Count,1).End(xlUp).Row '循环遍历每一行数据 Fori=2TolastRow '获取客户名称 customerName=ws.Cells(i,1).Value '创建新工作簿 SetnewWB=Workbooks.Add '复制当前行数据到新工作簿 ws.Rows(i).CopynewWB.Sheets(1).Rows(1) '设置保存路径和文件名 savePath=ThisWorkbook.Path&"\"&customerName&".xlsx" '保存新工作簿 newWB.SaveAsFilename:=savePath '关闭新工作簿 newWB.CloseSaveChanges:=False Nexti EndSub
如果数据量不大,手动拆分也是可行的。
PowerQuery提供了强大的数据处理功能。