EXCEL中如何编写VBA判断循环多行单元格数值及赋值.
例如:判断A列1行=空值时,F列1行赋值为"=A2&B2&C2"If[a1]=0Then[F1]="=A2&B2&C2"EndIf由于我的列数是很多A1~A1000甚至以...
例如:
判断 A列1行=空值时, F列1行赋值为"=A2&B2&C2"
If [a1] = 0 Then
[F1] = "=A2&B2&C2"
EndIf
由于我的列数是很多 A1 ~ A1000 甚至以上,我需要一个循环语句
判断 A列1,2,3....行.
If [axxxx] = 0 Then
[Fxxxx] = "=Axxxx&Bxxxx&Cxxxx"
EndIf
如判断A1,条件为真, 则立即给F1赋值.A2真,F2赋值..... 不断循环向下行.
直至设定循环次数结束为止.
是用EXCEL的VBA实现,谢谢各位!
如判断A1,条件为真, 则立即给F1赋值.A2真,F2赋值,但F2赋值的
同时A2&B2&C2的数字也是变化,就好像单元格下拉数字自动变化一样.
不断循环向下行.
即:
If [axxxx] = "" Then
[Fxxxx] = "=Axxxx&Bxxxx&Cxxxx"
EndIf
if [a2]= "" then
[F2]= "=A2&B2&C2"
if [a3]= "" then
[F3]= "=A3&B3&C3"
注意:判断及赋值数都需要变化.
直至设定循环次数结束为止.
是用EXCEL的VBA实现,谢谢各位! 展开
判断 A列1行=空值时, F列1行赋值为"=A2&B2&C2"
If [a1] = 0 Then
[F1] = "=A2&B2&C2"
EndIf
由于我的列数是很多 A1 ~ A1000 甚至以上,我需要一个循环语句
判断 A列1,2,3....行.
If [axxxx] = 0 Then
[Fxxxx] = "=Axxxx&Bxxxx&Cxxxx"
EndIf
如判断A1,条件为真, 则立即给F1赋值.A2真,F2赋值..... 不断循环向下行.
直至设定循环次数结束为止.
是用EXCEL的VBA实现,谢谢各位!
如判断A1,条件为真, 则立即给F1赋值.A2真,F2赋值,但F2赋值的
同时A2&B2&C2的数字也是变化,就好像单元格下拉数字自动变化一样.
不断循环向下行.
即:
If [axxxx] = "" Then
[Fxxxx] = "=Axxxx&Bxxxx&Cxxxx"
EndIf
if [a2]= "" then
[F2]= "=A2&B2&C2"
if [a3]= "" then
[F3]= "=A3&B3&C3"
注意:判断及赋值数都需要变化.
直至设定循环次数结束为止.
是用EXCEL的VBA实现,谢谢各位! 展开
展开全部
简单的循环
Sub test()
Dim i As Long
Dim endRow As Long
endRow = Range("A" & Rows.Count).End(xlUp).Row '获取末行
if endRow < 1 then exit sub
For i = 1 To endRow-1
if trim(range("A" & i).value) = "" then
Range("F" & i).Formula = "=A" & i+1 & "&B" & i+1 & "&C" & i+1
end if
Next i
End Sub
或者
Sub test()
Dim i As Long
Dim endRow As Long
endRow = Range("A" & Rows.Count).End(xlUp).Row '获取末行
if endRow < 0 then exit sub
For i = 1 To endRow
if trim(range("A" & i).value) = "" then
Range("F" & i).Formula = "=A" & i & "&B" & i & "&C" & i
end if
Next i
End Sub
二段代码,前面是f1=(=a2&b2&c2),后一段是f1=(=a1&b1&c1)
Sub test()
Dim i As Long
Dim endRow As Long
endRow = Range("A" & Rows.Count).End(xlUp).Row '获取末行
if endRow < 1 then exit sub
For i = 1 To endRow-1
if trim(range("A" & i).value) = "" then
Range("F" & i).Formula = "=A" & i+1 & "&B" & i+1 & "&C" & i+1
end if
Next i
End Sub
或者
Sub test()
Dim i As Long
Dim endRow As Long
endRow = Range("A" & Rows.Count).End(xlUp).Row '获取末行
if endRow < 0 then exit sub
For i = 1 To endRow
if trim(range("A" & i).value) = "" then
Range("F" & i).Formula = "=A" & i & "&B" & i & "&C" & i
end if
Next i
End Sub
二段代码,前面是f1=(=a2&b2&c2),后一段是f1=(=a1&b1&c1)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的判断是为0而不是为空,如果是判断为空,=""
循环如下
sub test ()
i=range("A65536").end(xlup).row‘判断A列最后一行的行号
for x=1 to i’建立循环从第一行到最后一行
if cells(x,1)=0 then cells(x,6)=cells(x,1) & cells(x,2) & cells(x,3)'判断A值为0时,如果是判断为空,=0改变=""
next x
end sub
循环如下
sub test ()
i=range("A65536").end(xlup).row‘判断A列最后一行的行号
for x=1 to i’建立循环从第一行到最后一行
if cells(x,1)=0 then cells(x,6)=cells(x,1) & cells(x,2) & cells(x,3)'判断A值为0时,如果是判断为空,=0改变=""
next x
end sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询