Excel-VBA зацикливает условные операторы в стиле кодирования: мне нужно ваше предложение для VBA. У меня есть несколько столбцов. Один столбец - это категория продукта. Он состоит из A,B,C,D
. А другой столбец - это подкатегория продукта, которая состоит из A001, A002, d001A003, A345, c563, B245, B123, B652, C124, d1257, d5337 и т. Д. Теперь под рукой стоит задача создать новые рабочие книги для категории A,B,C,D
и в соответствии с рабочей книгой A рабочие листы должны быть созданы со всеми подкатегориями с буквой A в нем Like (A.xlsx - это имя файла, а рабочие листы должны называться как A103, A462, A163) соответственно. Так может ли кто-нибудь подсказать мне правильный код в VBA, чтобы я мог выполнить эту задачу? Пожалуйста, пройдите через код, который я использовал ниже:
Sub splitandfiltersheet()
Dim Splitcode As Range
vcolumn = InputBox("Please select which column to open(i.e. A,B,C,D) you would like to split by", "Column selection")
Columns(vcolumn).Copy
Sheets.Add
ActiveSheet.Name = "_Summary"
Range("A1").PasteSpecial
Columns("A").RemoveDuplicates Columns:=1, Header:=xlYes
Sheets("Sales Data").Select
Set Splitcode = Range("Splitcode")
For Each cell In Splitcode
Sheets("Sales Data").Copy After:=Worksheets(Sheets.Count)
ActiveSheet.Name = cell.Value
With ActiveWorkbook.Sheets(cell.Value).Range("Sales_Data")
.AutoFilter field:=3, Criteria1:="<>" & cell.Value, Operator:=xlFilterValues
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
ActiveSheet.AutoFilter.ShowAllData
Next cell
End Sub
Этот код дал мне вывод на том же листе, где присутствуют мои данные. Однако я хочу создать новую рабочую книгу с именем «A» и добавить все подкатегории как ("A102,A344,A1234,A654")
В РАБОЧИЕ ЛИСТЫ «A» И ДОБАВИТЬ ДАННЫЕ "A102"
В рабочую книгу «A» с именем рабочей таблицы «A102»