如何使用单个整数作为输入循环Excel列,如果
myInteger = 1
then
X = ThisWorkbook.Sheets("Sheet").Range("B3:B253")
Y = ThisWorkbook.Sheets("Sheet").Range("C3:C253")
and if
myInteger = 2
then
X = ThisWorkbook.Sheets("Sheet").Range("D3:D253")
Y = ThisWorkbook.Sheets("Sheet").Range("E3:E253")
以及myInteger的任何值(假设从1到1000这样手动IF-ELSE不起作用)?
答案 0 :(得分:2)
使用选择案例
Sub test()
myInteger = 1
Select Case myInteger
Case 1
X = ThisWorkbook.Sheets("Sheet").Range("B3:B253")
Y = ThisWorkbook.Sheets("Sheet").Range("C3:C253")
Case 2
X = ThisWorkbook.Sheets("Sheet").Range("D3:D253")
Y = ThisWorkbook.Sheets("Sheet").Range("E3:E253")
Case Else
X = ThisWorkbook.Sheets("Sheet").Range("D3:D253")
Y = ThisWorkbook.Sheets("Sheet").Range("E3:E253")
End Select
End Sub
使用If ... Else ..
Sub test()
myInteger = 1
If myInteger = 1 Then
X = ThisWorkbook.Sheets("Sheet").Range("B3:B253")
Y = ThisWorkbook.Sheets("Sheet").Range("C3:C253")
ElseIf myInteger = 2 Then
X = ThisWorkbook.Sheets("Sheet").Range("D3:D253")
Y = ThisWorkbook.Sheets("Sheet").Range("E3:E253")
Else
X = ThisWorkbook.Sheets("Sheet").Range("D3:D253")
Y = ThisWorkbook.Sheets("Sheet").Range("E3:E253")
End If
End Sub
答案 1 :(得分:0)
如果您需要考虑多个值并且案例选择/ if / else不合适,请尝试范围.Offset
方法。
尝试:
x = ThisWorkbook.Sheets("Sheet").Range("A3:B253").Offset(0,MyInteger)
y = ThisWorkbook.Sheets("Sheet").Range("A3:B253").Offset(0,MyInteger+1)