[从一个单元格获取值,并将其聚焦在另一张表上,Vba Excel

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[从一个单元格获取值,并将其聚焦在另一张表上,Vba Excel相关的知识,希望对你有一定的参考价值。

我需要在另一张纸上搜索一个元素,我认为我以某种方式应用了错误的方法,因此无法激活单元格并集中该元素。我在执行代码时没有收到任何错误enter image description here

enter image description here

我留下插图的照片,以免我的想法和所使用的代码一起被很好地理解

If Target.Count = 1 Then
       If Not Intersect(Target, Me.Range("C:C")) Is Nothing Then
           Set wsSearch = ThisWorkbook.Sheets("TARJETAS")
           Set f = wsSearch.Columns("B:B").Find( _
                             what:=Target.Value, lookat:=xlWhole)
           If Not f Is Nothing Then
               Cancel = True
               wsSearch.Activate
               f.Select
           End If
       End If
   End If
答案

[合并后的单元格,然后Target.Count可能大于1,但是您不必担心,因为您无法一次双击多个单元格(除非合并)。

似乎Target传入了整个合并范围,所以只需从第一个单元格获取Value:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim wsSearch As Worksheet, f As Range, v
    Debug.Print Target.Count

    If Not Intersect(Target, Me.Range("C:C")) Is Nothing Then
        v = Target(1, 1).Value '<<< get the value
        Set wsSearch = ThisWorkbook.Sheets("TARJETAS")

        Debug.Print "Searching for " & v
        Set f = wsSearch.Columns("B:B").Find(what:=v, lookat:=xlWhole)
        If Not f Is Nothing Then
            Debug.Print "Found at " & f.Address()
            Cancel = True
            wsSearch.Activate
            f.Select
        End If
    End If

End Sub

以上是关于[从一个单元格获取值,并将其聚焦在另一张表上,Vba Excel的主要内容,如果未能解决你的问题,请参考以下文章

如何把一个excel表中的公式粘贴到另一张表上?我用的2007版本的。

Excel 一张工作表变动后,怎么自动更新另一张表中的数据

MATCH 函数不适用于单元格引用

从范围循环中的每个单元格复制数据并将其粘贴到另一张纸上

Excel VBA 将值从一张表移动到另一张表

如何在 OpenOffice 中将一列单元格从一张表插入到另一张表的单个单元格中?