关于Excel中vba代码中查询功能FOR运用问题

Subpz_find()Dimws_pzAsWorksheet,ws_jlAsWorksheetSetws_pz=Worksheets("信息录入")Setws_jl=W... Sub pz_find()

Dim ws_pz As Worksheet, ws_jl As Worksheet
Set ws_pz = Worksheets("信息录入")
Set ws_jl = Worksheets("客户资料台账")
Dim i As Integer, r As Integer 'i是“信息录入”中的行号,r是“客户资料台账”中的行号
i = 6

r_end = ws_jl.Range("A65536").End(xlUp).Row
For r = 2 To r_end
If ws_jl.Cells(r, "C") = ws_pz.Range("E6") Then

'查询条件为姓名相同
ws_pz.Range("E5").Value = ws_jl.Range("B" & r).Value
ws_pz.Range("E7").Value = ws_jl.Range("D" & r).Value
ws_pz.Range("E8").Value = ws_jl.Range("E" & r).Value
ws_pz.Range("E9").Value = ws_jl.Range("F" & r).Value
ws_pz.Range("E10").Value = ws_jl.Range("G" & r).Value
ws_pz.Range("E11").Value = ws_jl.Range("H" & r).Value
ws_pz.Range("E12").Value = ws_jl.Range("I" & r).Value
ws_pz.Range("E13").Value = ws_jl.Range("J" & r).Value
ws_pz.Range("E14").Value = ws_jl.Range("K" & r).Value
ws_pz.Range("E15").Value = ws_jl.Range("L" & r).Value
ws_pz.Range("E16").Value = ws_jl.Range("M" & r).Value
ws_pz.Range("E17").Value = ws_jl.Range("N" & r).Value
ws_pz.Range("E18").Value = ws_jl.Range("O" & r).Value
i = i + 1
Else
MsgBox "未找到与输入身份证号相同的信息"
'注释:查询相同姓名下对应的数据一一调用
End If

Next
ws_pz.Activate
If i = 6 Then MsgBox "没有人员信息!"

End Sub

哪位大神帮忙看一下为什么这个代码for循环是无法循环的?(想实现通过输入身份证信息,可以查询到另一张表相关所有数据)
展开
 我来答
nhking
2018-05-10 · TA获得超过3.1万个赞
知道大有可为答主
回答量:3.6万
采纳率:78%
帮助的人:1.1亿
展开全部
试试在前面加:
public r_end as long
更多追问追答
追问

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式