excel vb问题,能不能在点击sheet1某一单元格后跳转到sheet2的某个单元格

请看清题目,我说的是vb,不要用=HYPERLINK来回答,因为我想判断某个单元格的内容后跳转到另外一个符合要求的单元格,当然如果你用=HYPERLINK实现也可以告诉我。
目的:单击sheet1中B1单元格后判断A1单元格,为空停止,不为空的话在sheet2中A列查找与sheet1中A1单元格相同内容的内容并定位到该位置
不知道这样的要求可以实现么,各位高手谢谢了

第1个回答  2009-01-20
不是只有VB才能解决,用函数照样搞定。
SHEET1中B1单元格输入公式=IF(A1="","",HYPERLINK("#sheet2!"&"A"&MATCH($A$1,Sheet2!A:A,),"查看"))
第2个回答  2009-01-21
右键单击你要Sheet1的工作表标签,选择“查看代码”,在打开的VBA编辑器里把下面的代码粘进去就可以了。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address <> "$B$1" Then GoTo q
If Range("A1") = "" Then GoTo q
Set C = Sheet2.Columns("A:A").Find(Sheet1.Range("A1"))
If Not (C Is Nothing) Then
C.Parent.Select
C.Select
End If
q:
Application.EnableEvents = True
End Sub本回答被提问者采纳
第3个回答  2009-01-20
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = 1 And Target.Column = 2 Then 'Click B1
If Sheet1.Cells(1, 1) <> "" Then
For i = 1 To Sheet1.UsedRange.Rows
If Sheet2.Cells(i, 1) = Sheet1.Cells(1, 1) Then
Sheet2.Select
Sheet2.Range("A" & i).Select
End If
Next i
End If
End If
End Sub

写入Sheet1中即可。
第4个回答  2009-01-20
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Then
If Sheet1.Cells(Target.Row, 1) <> "" Then
For i = 1 To Sheet1.UsedRange.Rows.Count
If Sheet2.Cells(i, 1) = Sheet1.Cells(Target.Row, 1) Then
Sheet2.Activate
Sheet2.Range("A" & i).Select
End If
Next i
End If
End If
End Sub
相似回答