Excel 视觉基础.使用列号而非字母的范围选择方法
嗨,我有动态变化的列号。我需要使用该列编号选择2个单元格。由于我不能使用“单元格”命令选择多个单元格,也不能使用“范围”,因为我不知道有关字母的列,请帮助我找到相同的解决方案 提前谢谢 例如,我的代码是:Excel 视觉基础.使用列号而非字母的范围选择方法,excel,vba,Excel,Vba,嗨,我有动态变化的列号。我需要使用该列编号选择2个单元格。由于我不能使用“单元格”命令选择多个单元格,也不能使用“范围”,因为我不知道有关字母的列,请帮助我找到相同的解决方案 提前谢谢 例如,我的代码是: Dim Row_num as integer for x=1 to 100 Thisworkbook.Sheets("Sheet1").range((Row_num,x),(Row_num,x+1)).select selection.merge next 正确用法是: &
Dim Row_num as integer
for x=1 to 100
Thisworkbook.Sheets("Sheet1").range((Row_num,x),(Row_num,x+1)).select
selection.merge
next
正确用法是:
<WorkBook>.<WorkSheet>.Range(<CornerCell>, <OpositeCornerCell>)
正确用法是:
<WorkBook>.<WorkSheet>.Range(<CornerCell>, <OpositeCornerCell>)
正确用法是:
<WorkBook>.<WorkSheet>.Range(<CornerCell>, <OpositeCornerCell>)
正确用法是:
<WorkBook>.<WorkSheet>.Range(<CornerCell>, <OpositeCornerCell>)
除了chris出色的回答之外,让我为
范围
对象添加两个小但非常有用的方法:.Offset
和调整大小
:
使用Range.Offset
可以“移动”单元格,即Range(“A1”)。Offset(3,2)
将导致B3
。和.Resize
将按照名称所述,调整范围大小,即范围(“A1”)。Resize(3,2)
将导致A1:B3
这两个元素可以组合,例如Range(“A1”)。偏移量(1,1)。调整大小(3,2)
会导致B2:C4
在您的情况下,您可以使用:
Option Explicit 'always use Option Explicit, as it forces you to declare variables
Sub MergeFields
Dim lngRow As Long
Dim rngTopLeft As Range
Set rngTopLeft = Thisworkbook.Worksheets("Sheet1").Range("A1") 'change A1 accordingly!
For lngRow = 1 To 100
rngTopLeft.Offset(lngRow).Resize(1, 2).Merge
Next lngRow
End Sub
除了chris出色的回答之外,让我为
范围
对象添加两个小但非常有用的方法:.Offset
和调整大小
:
使用Range.Offset
可以“移动”单元格,即Range(“A1”)。Offset(3,2)
将导致B3
。和.Resize
将按照名称所述,调整范围大小,即范围(“A1”)。Resize(3,2)
将导致A1:B3
这两个元素可以组合,例如Range(“A1”)。偏移量(1,1)。调整大小(3,2)
会导致B2:C4
在您的情况下,您可以使用:
Option Explicit 'always use Option Explicit, as it forces you to declare variables
Sub MergeFields
Dim lngRow As Long
Dim rngTopLeft As Range
Set rngTopLeft = Thisworkbook.Worksheets("Sheet1").Range("A1") 'change A1 accordingly!
For lngRow = 1 To 100
rngTopLeft.Offset(lngRow).Resize(1, 2).Merge
Next lngRow
End Sub
除了chris出色的回答之外,让我为
范围
对象添加两个小但非常有用的方法:.Offset
和调整大小
:
使用Range.Offset
可以“移动”单元格,即Range(“A1”)。Offset(3,2)
将导致B3
。和.Resize
将按照名称所述,调整范围大小,即范围(“A1”)。Resize(3,2)
将导致A1:B3
这两个元素可以组合,例如Range(“A1”)。偏移量(1,1)。调整大小(3,2)
会导致B2:C4
在您的情况下,您可以使用:
Option Explicit 'always use Option Explicit, as it forces you to declare variables
Sub MergeFields
Dim lngRow As Long
Dim rngTopLeft As Range
Set rngTopLeft = Thisworkbook.Worksheets("Sheet1").Range("A1") 'change A1 accordingly!
For lngRow = 1 To 100
rngTopLeft.Offset(lngRow).Resize(1, 2).Merge
Next lngRow
End Sub
除了chris出色的回答之外,让我为
范围
对象添加两个小但非常有用的方法:.Offset
和调整大小
:
使用Range.Offset
可以“移动”单元格,即Range(“A1”)。Offset(3,2)
将导致B3
。和.Resize
将按照名称所述,调整范围大小,即范围(“A1”)。Resize(3,2)
将导致A1:B3
这两个元素可以组合,例如Range(“A1”)。偏移量(1,1)。调整大小(3,2)
会导致B2:C4
在您的情况下,您可以使用:
Option Explicit 'always use Option Explicit, as it forces you to declare variables
Sub MergeFields
Dim lngRow As Long
Dim rngTopLeft As Range
Set rngTopLeft = Thisworkbook.Worksheets("Sheet1").Range("A1") 'change A1 accordingly!
For lngRow = 1 To 100
rngTopLeft.Offset(lngRow).Resize(1, 2).Merge
Next lngRow
End Sub
我迷路了,你想操纵哪一列?最后一栏?还是介于两者之间?如果你问我的话,不太清楚。行和列都从1开始。也就是说,A列是1,AA列是27。你知道你可以用单元格来定义一个范围吗?“我不知道你想对合并做些什么。”克里斯·尼尔森说,这对我很有用。谢谢我迷路了,你想操纵哪一列?最后一栏?还是介于两者之间?如果你问我的话,不太清楚。行和列都从1开始。也就是说,A列是1,AA列是27。你知道你可以用单元格来定义一个范围吗?“我不知道你想对合并做些什么。”克里斯·尼尔森说,这对我很有用。谢谢我迷路了,你想操纵哪一列?最后一栏?还是介于两者之间?如果你问我的话,不太清楚。行和列都从1开始。也就是说,A列是1,AA列是27。你知道你可以用单元格来定义一个范围吗?“我不知道你想对合并做些什么。”克里斯·尼尔森说,这对我很有用。谢谢我迷路了,你想操纵哪一列?最后一栏?还是介于两者之间?如果你问我的话,不太清楚。行和列都从1开始。也就是说,A列是1,AA列是27。你知道你可以用单元格来定义一个范围吗?“我不知道你想对合并做些什么。”克里斯·尼尔森说,这对我很有用。谢谢如果我没有错,OP想要选择两个不同的单元格,但不是一个matrix@sam092我认为你错了。他想要合并两个相邻的单元格。如果我没有错,OP想要选择两个不同的单元格,但不是一个matrix@sam092我认为你错了。他想要合并两个相邻的单元格。如果我没有错,OP想要选择两个不同的单元格,但不是一个matrix@sam092我认为你错了。他想要合并两个相邻的单元格。如果我没有错,OP想要选择两个不同的单元格,但不是一个matrix@sam092我认为你错了。他想合并两个相邻的细胞。