excel宏 range后 的变量问题
Selection.AutoFillDestination:=Range("A&i:A&i+50")我想定义一个i变量,用来定义单元格的循环但是代码好像一直错,不知道哪里...
Selection.AutoFill Destination:=Range("A & i:A & i+50")
我想定义一个i变量,用来定义单元格的循环
但是代码好像一直错,不知道哪里出错了。系统提示是上面这个代码错了。
谢谢!
For i = 1 To 500 Step 1
If Left("B" & i, 2) = "CN" Then
Range("A" & i).Select
ActiveCell.FormulaR1C1 = "=MID(RC[1],3,5)"
Range("A" & i).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
' Selection.AutoFill Destination:=Range("A6:A60")
Selection.AutoFill Destination:=Range("A & i:A & i+50")
End If
Next i
End 展开
我想定义一个i变量,用来定义单元格的循环
但是代码好像一直错,不知道哪里出错了。系统提示是上面这个代码错了。
谢谢!
For i = 1 To 500 Step 1
If Left("B" & i, 2) = "CN" Then
Range("A" & i).Select
ActiveCell.FormulaR1C1 = "=MID(RC[1],3,5)"
Range("A" & i).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
' Selection.AutoFill Destination:=Range("A6:A60")
Selection.AutoFill Destination:=Range("A & i:A & i+50")
End If
Next i
End 展开
3个回答
展开全部
Range("A & i:A & i+50")你这样写又何尝不是字符串?
应该为
Range ("A " & i & ":A " & i + 50)
应该为
Range ("A " & i & ":A " & i + 50)
更多追问追答
追问
大哥。。这个更错了阿。我尝试了无数次不行的。
追答
Sub a()
Dim i
i = 1
[b1] = Application.WorksheetFunction.Sum(Range("A" & i & ":A" & i + 50))
End Sub
新建一个工作表自己验证下对不对
-----------------------
另外Left("B" & i, 2) = "CN",这个也是有问题的,这个判断永远是FALSE
展开全部
Range("A & i:A & i+50") 可能这句的写法错误。试试:
j=i + 50
Range("A & i:A & j")
j=i + 50
Range("A & i:A & j")
更多追问追答
追问
j = i + 50
Selection.AutoFill Destination:=Range("A & i:A & j")
我定义成这样,系统还是提示出错了。
:和"的区别在于?
追答
如果A & i:A & j是指单元格区域,设为(行,列:行,列)格式,如(1,5:1,10),"A & i:A & j"这样定义变成字符串了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
If Left(range("B" & i).value, 2) = "CN" Then
追问
谢谢。不过问的不是这个问题。
j = i + 50
Selection.AutoFill Destination:=Range("A & i:A & j")
是这个出错了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询