Я хочу создать листы из списка в excel с помощью VBA, у меня есть код ниже, который отлично работает. Но он не удаляет дубликаты из списка, и если я использую удаление дубликатов, он выдает ошибку. :). Я не хочу, чтобы исходная колонка изменилась.Удалить дубликаты из диапазона и использовать для каждого цикла
Set MyRange = Sheets("YES").Range("A2")
Set MyRange = Range(MyRange, MyRange.End(xlDown)).RemoveDuplicates
For Each MyCell In MyRange
Sheets.Add After:=Sheets(Sheets.Count) ' creates a new worksheet
Sheets(Sheets.Count).Name = UCase(MyCell.Value) ' renames the new worksheet
ActiveSheet.Range("A1").Select ' selects current worksheet
Cells(1, 1).Font.Bold = True ' changes fornt to bold
ActiveCell.Value = ("Column Name") ' enters values into cell
ActiveSheet.Range("A2").Select
ActiveCell.Value = UCase(MyCell.Value) ' enters column name in cell
Next MyCell
благодаря
ли вы удалить дубликаты, прежде чем начать цикл ... 'Columns ("A: A")? RemoveDuplicates столбцов:. = 1, Заголовок: = xlYes' – Davesexcel
Post код, который не работает что вы хотите исправить, а не (просто) код, который уже работает;) – arcadeprecinct
Мне не нужны значения, удаленные из исходного столбца? –