| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 760 人关注过本帖
标题:查找Excel表A列里的数据并显示找到的同行B列的内容?帮忙看下哪里出问题了
只看楼主 加入收藏
frdqq
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2018-3-7
结帖率:100%
  已结贴   问题点数:20  回复次数:7   
查找Excel表A列里的数据并显示找到的同行B列的内容?帮忙看下哪里出问题了
Dim xlApp As Excel.Application '定义EXCEL类
Dim xlBook As Excel.Workbook '定义工件簿类
Dim xlsheet As Excel.Worksheet '定义工作表类
Dim a
Dim aa
Dim bb
Private Sub Command1_Click()
Dim fileadd As String
CommonDialog1.ShowOpen
CommonDialog1.Filter = "xls文件(*.xls)|*.xls" '选择你要的文件
a = CommonDialog1.FileName
Text1.Text = a
If a = "" Then Exit Sub
Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open(a) '打开已经存在的EXCEL工件簿文件
xlApp.Visible = False ' =  True '设置EXCEL对象可见(或不可见)
Set xlsheet = xlBook.Worksheets(1) '设置活动工作表
xlApp.DisplayAlerts = False '不进行安全提示 '
 End Sub
Private Sub Command2_Click()
xlApp.Quit
    Set Xlssheet = Nothing
    Set Xlsbook = Nothing
    Set Xls = Nothing
err:
Text1.Text = "" '清空内容
Text2.Text = "" '清空内容
Text3.Text = "" '清空内容
 End Sub
Private Sub Command3_Click()
With xlsheet
aa = Text2.Text
On Error Resume Next
 bb = xlApp.WorksheetFunction.VLookup(aa, Range("A:A"), 3, False)
 Text3.Text = bb
 If err <> 0 Then MsgBox "你输入的不存在或错误,请查正后重新输入!", vbOKCancel, "输入检查"
On Error GoTo 0
 End With
End Sub
2018-03-08 12:23
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:909
专家分:5237
注 册:2015-8-10
  得分:7 
VLookup(aa, Range("A:A"), 3, False)这个是在Range("A:A")的第3列中找到aa。 问题是你这个Range中有第3列么?
其次,你题目提到B列,但是代码中没有任何地方提到B列。 这种文不对题的事情还是少做,让人搞不清楚怎么回事
2018-03-08 15:31
xyxcc177
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:22
帖 子:153
专家分:1025
注 册:2017-7-8
  得分:7 
bb = xlApp.WorksheetFunction.VLookup(aa, Range("A:B"), 2, False)

显示的数据要包含在查找的范围内。

[此贴子已经被作者于2018-3-8 15:57编辑过]

2018-03-08 15:56
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:909
专家分:5237
注 册:2015-8-10
  得分:0 
回复 3楼 xyxcc177
我怀疑他不是这个意思
你这个是直接在B列查找,其实又跟A列没有关系吧
2018-03-08 16:23
xyxcc177
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:22
帖 子:153
专家分:1025
注 册:2017-7-8
  得分:0 
回复 4楼 xiangyue0510
A       B
张三   河北
李四   湖南
他的意思就是查找“张三”,显示“河北”
2018-03-08 16:41
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:909
专家分:5237
注 册:2015-8-10
  得分:0 
回复 5楼 xyxcc177
还是你厉害
2018-03-08 18:55
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:909
专家分:5237
注 册:2015-8-10
  得分:0 
回复 5楼 xyxcc177
还是你厉害
2018-03-08 18:55
frdqq
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2018-3-7
  得分:0 
原来是这样的啊。那我想在A列里查找,显示B列的
VLookup(aa, Range("A:A"), 3, False)这里的对应关系应该是什么
刚接触VB,不好意思了
2018-03-09 12:49







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029356 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved