首页 文章

从Sheet1中的Sheet2查找文本(C21),然后将Sheet2中的固定范围复制到Sheet1中找到文本的下一个单元格中

提问于
浏览
-1

我正在学习宏,我是新手,所以非常感谢你的帮助:)

我正在尝试创建一个宏:

  • 读取Sheet2中一个单元格中的文本(单元格C21)

  • 在表1(C列)中查找

  • 复制Sheet2中的固定范围(D26:P26)

  • 粘贴从Sheet 1中找到文本的下一个单元格中的信息(例如,如果在#2中,文本在单元格C23中找到...复制的信息从D23开始粘贴)

  • 刷新Sheet2中的数据透视表

  • 刷新Sheet2上的图形

表1 = TRY数据

表2 = TRY图

这是我到目前为止发现的宏...发现文本,现在它的位置但不粘贴信息(并且没有如何更新图形) . 再次非常感谢你! :)

Sub Save2()

    Dim strSearch As String

    strSearch = Worksheets("TRY graph").Range("C21").Value & " C-2018"

    Dim rng1 As Range

    Set rng1 = Worksheets("TRY Data").Range("C:C").Find(strSearch, >lookat:=xlPart)

    If Not rng1 Is Nothing Then

       Worksheets("TRY graph").Range("D26:P26").Copy

       Worksheets("TRY Data").ActiveCell.Offset(0, 1).PasteSpecial >xlPasteValues
    Else

       MsgBox strSearch & " not found"
    End If

    Dim pivotTable As pivotTable

    pivotTable.RefreshTable

End Sub

1 回答

  • 0

    请尝试:(我在代码的注释中添加代码.. workbook_pivot_exists是您的支点所在的工作簿)

    Option Explicit
    
    Sub Save2()
        Dim strSearch As String
    
        strSearch = Worksheets("TRY graph").Range("C21").Value & " C-2018"
    
        Dim rng1 As Range
    
        Dim adrs As String
    
        Set rng1 = Worksheets("TRY Data").Range("C:C").Find(strSearch, lookat:=xlPart)
    
    
    
        If Not rng1 Is Nothing Then
    
        adrs = rng1.Address
    
        Sheets("TRY graph").Range("D26:P26").Copy
    
    
        With Sheets("TRY Data")
    
    
    
         .Range(adrs).Offset(0, 1).PasteSpecial Paste:=xlPasteValues
    
    
        End With
    
        Else
    
            MsgBox strSearch & " not found"
    
        End If
    
    Dim pivotTable As pivotTable
    
    'to refresh your pivot try:
    'Set pivotTable = whorkbook_pivot_exists.PivotTables("myPivot")
    
    
    'pivotTable.RefreshTable
    
    End Sub
    

相关问题