Как установить поле Имя с помощью макроса excel VBA?

Я строю модель, которая берет результаты с первого листа и вводит их в следующий лист. Эффективное создание приложения, которое выполняется последовательно. Я определил значения на первом листе с помощью поля Имя, чтобы я мог легко вызывать эти значения и использовать их в формулах.

следующим шагом является создание второго листа, чтобы ячейки, которые мне нужно использовать в формулах, могли быть названы (в namebox) с теми же именами, что и в листе 1, но с на некоторых суффиксов (например, 1, или).

таким образом, на листе 1 будут ячейки с такими именами, как SA, Vol, Q и т.д. а на листе 2 будут ячейки с именами SA1, Vol1, Q1 и др.

имена параметров существуют в соседних ячейках. Например, я хочу назвать ячейки в столбце C, используя их смежное значение / слово в столбце B.

вот что у меня пока есть:

Sub CreatName()
  Dim cel As Range
  Dim moretext As Variant

  moretext = InputBox("Enter text to add at end of name box: ")

  For Each cel In Worksheets("Model").Range("C:C").Cells
    If Not IsEmpty(cel.Value) Then
      cel.Name = cel.Offset(0, -1).Value & moretext
      MsgBox (cel.Name.Value)
    End If
  Next cel
End Sub

Я не могу заставить его работать. Чел.название выплевывает ячейке (например,="Model"$C), и я не могу добавить суффикс к имени.

19
задан Moses
28.04.2023 20:11 Количество просмотров материала 3323
Распечатать страницу

1 ответ

чтобы получить значение используйте что-то вроде этого:

MsgBox (cel.Name.RefersToRange.Value)

добавить имя этого:

cName = cel.Offset(0, -1).Value & moretext

ActiveWorkbook.Names.Add Name:=cName, RefersToR1C1:=cell
0
отвечен Portland Runner 2023-04-30 03:59

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх