У меня есть этот макрос для разделения таблицы на листы по столбцам:
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, который является номером регионального директора, я не работал ... Я много раз проверял это с другими столбцами, и он работает, когда в столбце есть текстовое значение. Как это исправить? Почему это не работает, когда в столбце есть число? Это не работает, даже когда я преобразовал это число в текст (число как текстовое значение).