Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Excel Vba 2007: используйте ссылку внутри countifs

Автор вопроса: user372013Ответов: 2

У меня есть это:

ActiveCell.Formula = "=COUNTIFS(G$4:G$" & (i - 1) & _
                     ", Sheets(ActiveSheet.Name).Cells(3, 25).Value ,F$4:F$" & (i - 1) & _
                     ",J4)"

Я хочу использовать это: Sheets(ActiveSheet.Name).Cells(3, 25)

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

Кто-нибудь, помогите мне, пожалуйста. Большое спасибо

  • эээ... должно быть так: ActiveCell.Formula = =COUNTIFS(G$4:G$ & (i - 1) & , Sheets(ActiveSheet.Name).Cells(3, 25).Value ,F$4:F$ & (i - 1) & ,J4) Но все равно не работает :( user372013 21.06.2010

excelvbaexcel-2007

Ответы

Ответ 1 · GSerg

Что мешает вам использовать настоящий адрес, $Y$3?


ИЗМЕНИТЬ

Ах. Вы сказали, что хотите, чтобы это значение было исправлено, поэтому я подумал...

Тогда разве вы не делаете то же самое, что и в остальных частях вашей формулы?

ActiveCell.Formula = "=COUNTIFS(G$4:G$" & (i - 1) & _
                     ", " & _
                     ActiveSheet.Cells(3, 25).Address(True, True, xlA1) & _
                     ", F$4:F$" & (i - 1) & _
                     ", J4)"

Ответ 2 · floatingLomas

Вы можете использовать =CHAR() и =CODE() для букв. "A" может быть представлен как =CHAR(65), поэтому любая буква равна 64 + (буква алфавита), поэтому Y =CHAR(89).

Если вы хотите перейти на один столбец от "Y", вы можете использовать CHAR(CODE("Y")+1) = "Z".

Кроме того, CHAR(cells.column) даст вам букву столбца (при условии, что вы используете весь лист).

Надеюсь, это имеет смысл. :)

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы