Как сделать сдвиг по столбцу в формуле Excel с помощью VBA
Пример:
в ячейке "A1" содержится формула "=A2+A4+A6"
Мне необходимо, с помощью VBA, в ячейку B1 поместить эту формулу но с литерой "B". Есть ли способ?
Единственное что-то похожее нашел в сети:
With Range("A1")
.Formula = "=SUM(" & .DirectPrecedents.Offset(0,1).Address(0, 0) & ")"
End With
Это не совсем то, но я мог бы это приспособить, если бы работало. Выдает ошибку о том что не найдено ни одной подходящей ячейки.
Ответы (2 шт):
Автор решения: Dmitry
→ Ссылка
Разобрался, возможно кому то пригодится.
Range(from_cell_address).AutoFill Destination:=Range(address_text), Type:=xlFillDefault
где from_cell_address - адрес ячейки содержащей формулу,
а address_text интервал необходимый для заполнения
вот как это выглядит у меня
Range("A1").AutoFill Destination:=Range("A1:B1"), Type:=xlFillDefault
Результатом будет ответ на вопрос.
Автор решения: vikttur_Stop_RU_war_in_UA
→ Ссылка
Sub test1()
Range("A1").Copy
Range("B1").PasteSpecial Paste:=xlPasteFormulas
End Sub
Если формат одинаков или не важен, достаточно копировать ячейку полностью:
Sub test(): Range("A1").Copy Range("B1"): End Sub