Привіт Я хочу назвати клітини, використовуючи. Клітини (I, J) в. Формула
Мої макроси в даний момент друкує значення / формулу в масив комірок. Він відмінно працює для значень, але я "з труднощами вставити формулу, яка не повертає помилку".
Ось відповідний рядок коду
Sheets("Stats").Cells(j, i).Formula = SUM(Sheets("Stats").Cells(1, i),Sheets("Stats").Cells(1, i), A3)
Це альтернативна лінія для простоти, в основному, я хочу мати можливість використовувати обидва виклику.
Дуже дякую
Відповіді:
0 для відповіді № 1При використанні .Formula, він очікує на рядок, і він повинен бути форматуванням так само, як ви вводите його в саму клітку без VBA (включаючи "=" на початку). Спробуйте
Sheets("Stats").Cells(j, i).Formula = _
"=SUM(" & Sheets("Stats").Cells(1, i).address & _
"," & Sheets("Stats").Cells(1, i).address & ", A3)"
0 для відповіді № 2
Ви можете скористатись With
заяву у вашому випадку може значно спростити:
With Sheets("Stats")
.Cells(j, i).Formula = "=Sum(" & .Cells(1, i).Address & "," & .Cells(1, i).Address & ", A3)"
End With
Примітка: при спробі налагодження, якщо ваша формула правильна, використовуйте Debug.Print
.
У вашому випадку, якщо ви покладете i = 2
, а нижче цього коду:
With Sheets("Stats")
Debug.Print "=Sum(" & .Cells(1, i).Address & "," & .Cells(1, i).Address & ", A3)"
У найближчому вікні ви побачите наступну формулу:
=Sum($B$1,$B$1, A3)