Прочитать имя столбца и использовать имя столбца в качестве имени листа - PullRequest
1 голос
/ 21 июня 2019

Я создаю макрос, который будет запрашивать диапазон столбцов у пользователя, и для каждого столбца будет создан новый лист. Имя листа будет таким же, как заголовок столбца.

Dim X As Range
Set X = Application.InputBox(prompt:="Select the column with the code numbers", Title:="New Event Selector", Type:=8)
Dim S As Worksheet
With X
    For currentcolumn = 1 To .Columns.Count Step 1
        Set S = Sheets.Add(After:=Sheets(Sheets.Count))
        S = X.Columns(currentcolumnheader)
     Next currentcolumn

End With

Я получаю сообщение об ошибке при выполнении этого кода. Я не могу правильно прочитать заголовок столбца.

1 Ответ

0 голосов
/ 21 июня 2019

Это может быть то, что вы ищете.Пользователь вводит точные ячейки с заголовком строки, и он заполняет новые листы?

Пример: если пользователь вводит "H1: j1", то он будет перебирать все значения в h1, i1 и j1 как листИмена.

Sub YourMacro()

Dim X As Range
Set X = Application.InputBox(prompt:="Select the column with the code numbers", Title:="New Event Selector", Type:=8)
Dim S As Worksheet, ogWSH As Worksheet
Set ogWSH = X.Worksheet
With X

    For currentcolumn = 1 To .Columns.Count Step 1
        Set S = Sheets.Add(After:=Sheets(Sheets.Count))
        S.Name = X.Cells(1, currentcolumn).Value 'make sure this isn't empty
     Next currentcolumn

End With
End Sub

Я скажу, что есть много места для пользователя , чтобы все испортить.

  • Что если они нажмут "Отмена"?
  • Что если они начнут сначала и будут иметь дубликаты листов?
  • Что если они введут неправильный диапазон?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...