excel如何实现在任意单元格中输入内容后自动在其右方一个单元格中显示输入匹配信息?

在同一个工作簿中有两个工作表,sheet1为基础数据:我希望在sheet2中“任意”(不是用vlookup或index函数等实现)一个单元格中输入sheet1中A列的内容... 在同一个工作簿中有两个工作表,sheet1为基础数据:

我希望在sheet2中“任意”(不是用vlookup或index函数等实现)一个单元格中输入sheet1中A列的内容则自动在此单元格的右一个单元格中匹配显示出B列对应的内容。比如在f6单元格中输入“小兰”则在g6中显示“今年7岁了”,在ab2单元格中输入“小明”,则在ac2中显示“今年5岁了”,同时如果删除f6中的内容或改动后,匹配的内容也随之删除或改动。(这个应该只有vb能实现吧)

大神们。求助等待中……
展开
 我来答
pepe3399
2015-11-21 · 知道合伙人软件行家
pepe3399
知道合伙人软件行家
采纳数:1259 获赞数:5940
1988年毕业于苏州市职业大学计算机专业 从事软件开发5年 从事生产管理20年

向TA提问 私信TA
展开全部

举例说明。

第一步:建立一张学号及姓名对照表。如图:

第二步:在F2输入公式:=IFERROR(VLOOKUP(E:E,A:B,2,0),""),然后将该公式复制黏贴到F3:F30

第三步:在E2输入A003,E3输入A007,结果如图:

远行数码科技

2015-04-18 · TA获得超过667个赞
知道小有建树答主
回答量:533
采纳率:75%
帮助的人:166万
展开全部
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Dim d As String, s As String
d = Target.Address
s = Application.WorksheetFunction.VLookup(Target.Value, Sheet1.Range("a:b"), 2, 0)
If s <> "" Then
Range(d).Offset(0, 1).ClearComments
Range(d).Offset(0, 1).AddComment
Range(d).Offset(0, 1).Comment.Visible = False
Range(d).Offset(0, 1).Comment.Text Text:=s
End If
If Target.Value = "" Then
Range(d).Offset(0, 1).ClearComments
End If
End Sub


更多追问追答
追问

大神大神,我要的不是显示批注了,而是在右边单元格里直接显示内容,这个能行吗?

追答
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Dim d As String, s As String
d = Target.Address
If Target.Value <> "" Then
s = Application.WorksheetFunction.VLookup(Target.Value, Sheet1.Range("a:b"), 2, 0)
If s <> "" Then
Range(d).Offset(0, 1).Value = s
End If
End If
If Target.Value = "" Then
Range(d).Offset(0, 1).ClearContents
End If
End Sub


本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
柔软的Bp
科技发烧友

2015-04-18 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:3万
采纳率:67%
帮助的人:8771万
展开全部
Sub test()
On Error Resume Next
For I = 1 To 10 '表示行数
For K = 1 To 3 '表示列数
Cells(I, K + 1) = Application.WorksheetFunction.VLookup(Cells(I, K), Sheets(1).Range("A:B"), 2, 0)
Next
Next
End Sub

输入数据后,按ALT+F8
或添加个按钮。
追问
谢谢了,虽然没成功,再次谢过了,不过楼下的
“zuhi“兄弟已经解决了,您也参考一下吧。
追答
谢谢,VBA我很少写,主要是写函数,他的代码,可以自动删除对应的数据。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凌文元LWY
高粉答主

2015-04-18 · 每个回答都超有意思的
知道大有可为答主
回答量:3.6万
采纳率:76%
帮助的人:1.3亿
展开全部
Sheet1的基础数据在本例中做什么用途?
选择Sheet2的偶数列,然后输入以下公式,按Ctrl+Enter组合键结束
=IF(A1="","","今年"&RANDBETWEEN(5,8)&"岁了")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式