В Excel, если я хочу выполнить функцию с колонкой слева, как мне это сделать?
3 ответа
Вот как сделать ссылку на ячейку в столбце слева в функции листа:
=INDIRECT(ADDRESS(ROW(),COLUMN()-1))
возможно, есть и другие способы сделать это, но я не нашел хорошего, краткого способа самостоятельной ссылки на ячейку Excel.
Чтобы сослаться на весь столбец слева в функции листа:
=INDIRECT(SUBSTITUTE(ADDRESS(1,COLUMN()-1,4),"1","") & ":" &
SUBSTITUTE(ADDRESS(1,COLUMN()-1,4),"1",""))
Если вы находитесь в ячейке H1 и хотите суммировать столбец G, введите = SUM(G:G).
Поскольку это сайт, посвященный вопросам программирования, я предполагаю, что вы имеете в виду VBA.
ActiveCell
- это текущая помеченная ячейка (или диапазон), ActiveCell.Column
даст вам номер столбца (крайний левый столбец для диапазона, если память мне не изменяет), который вы можете использовать.
Просто вычтите один и используйте его (если, конечно, это уже не 1). Если вам нужна фактическая буква столбца (она вам не нужна для расчетов, но может понадобиться в любом случае), используйте:
Function GetCol (ByVal rng As Range)
If rng.Column < 27 Then
GetCol = Chr (64 + rng.Column)
Else
GetCol = _
Chr (64 + (rng.Column - 1) \ 26) + _
Chr (65 + (rng.Column - 1) Mod 26))
End If
End Function
вместе с:
Dim colStr as String
colStr = GetCol (ActiveCell)
MsgBox (colStr)
Если это не вопрос VBA, он на самом деле не относится к этому вопросу (хотя в одном из ваших комментариев я вижу, что вы говорите о запуске функции, поэтому, я думаю, вы все- таки имели в виду VBA).