首页 > 解决方案 > 将表格按列拆分为工作表 - 不适用于数值

问题描述

我有这个宏可以按列将表格拆分为表格:


Dim DR As Range
Sheets("Budget").Select
Set DR = Range("DR")

For Each cell In DR
Sheets("Budget").Copy after:=Worksheets(Sheets.Count)
ActiveSheet.Name = cell.Value

With ActiveWorkbook.Sheets(cell.Value).Range("MasterData")
.AutoFilter field:=9, Criteria1:="<>" & cell.Value, Operator:=xlFilterValues
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With

ActiveSheet.AutoFilter.ShowAllData
Next cell

End Sub

它适用于列中有文本值,例如区域主管的名称(第 9 列是 DR - 区域主管),并且范围 DR 是所有主管的列表,没有重复。但是,当我尝试使用第 10 列(区域主管编号)进行相同操作时,我无法正常工作......我对其他列进行了多次检查,并且当列中有文本值时,它仍然有效。如何解决?为什么当列中有数字时它不起作用?即使我将此数字转换为文本(数字作为文本值),它也不起作用。

标签: excelvba

解决方案


推荐阅读