excel vba如何从列号中获取整列范围?

时间:2018-05-21 07:41:15

标签: vba excel-vba excel

我无法想到更简单的方法

目前将列号转换为包含以下内容的字母:

col_letter = Split(Cells(1, X).Address, "$")(1)

然后我定义了整个列范围,如下所示:

.Range(col_letter & ":" & col_letter)

有更简单的方法吗?

背景

我试图在VBA中使用SUMIF

Dim col_letter as string
Dim my_total as double
Dim col_number as long

col_number = 15
col_letter = Split(Cells(1, X).Address, "$")(1)

my_total = Application.WorksheetFunction.SumIf( _ 
    .Range("A:A"), "Admix", .Range(col_letter & ":" & col_letter))

但我无法帮助思考使用col_number

定义范围必须有一些聪明的事情

.Range(col_letter).column或其他什么。我对columnscolumn属性感到困惑,因为我不确定如何使用它们。

1 个答案:

答案 0 :(得分:1)

您可以使用对列的数字引用而不是字母:.Columns(x)应该足够(而不是.Range(col_letter & ":" & col_letter))。