在 Excel 中,如果我想对左侧列执行某个功能,该怎么做?
答案1
以下是在工作表函数中引用左侧列中的单元格的方法:
=INDIRECT(ADDRESS(ROW(),COLUMN()-1))
可能还有其他方法可以做到这一点,但我还没有找到一种好的、简洁的方法来自我引用 Excel 单元格。
要在工作表函数中引用左侧的整列:
=INDIRECT(SUBSTITUTE(ADDRESS(1,COLUMN()-1,4),"1","") & ":" &
SUBSTITUTE(ADDRESS(1,COLUMN()-1,4),"1",""))
答案2
如果您在单元格 H1 中,并且想要对 G 列求和,请输入 =SUM(G:G)。
答案3
因为这是一个编程问答网站,所以我假设您的意思是 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 中毕竟意味着什么)。