删除一张纸上的数据并在另一张纸上更新

时间:2015-08-04 02:51:10

标签: excel vba excel-vba

我有两张纸:一张是数据库表,另一张是仪表板,我从数据库表中提取数据到仪表板,以显示有用的信息。两个单元格中的单元格相互引用。但是,当我想删除数据库中的数据时,我遇到了问题。

  1. 如果我先删除数据库中的数据,它不会在仪表板中自动更新。相反,它给了我参考错误
  2. 仅当我首先删除仪表板中的数据,然后是数据库时,它才有效。当谈到逻辑明智和双重工作时,这是错误的。
  3. 这个问题有解决办法吗?

    以下是我编写的示例代码

    这是针对单元格引用的

    Sub CopyPasteCumUpdate()
        Dim rng As Range, inp As Range
        'to remove 0 values that may be a result of a formula or direct entry.
        Set rng = Nothing
        Set inp = Selection
        inp.Interior.ColorIndex = 37
        On Error Resume Next
        Set rng = Application.InputBox("Copy to", Type:=8)
        On Error GoTo 0
        If TypeName(rng) <> "Range" Then
            MsgBox "Cancelled", vbInformation
            Exit Sub
        Else
            rng.Parent.Activate
            rng.Select
            inp.Copy
            Worksheets("Sheet2").Paste Link:=True
            Application.CutCopyMode = 0
        End If
    End Sub
    

    这是删除

    Sub DeleteCumRefresh()
        Dim rng As Range
        For Each Cell In Range("A1:Z100")
            If Cell.Value = "0" Then Cell.Clear
        Next
        Set rng = Range("A1:B7").SpecialCells(xlCellTypeBlanks)
        rng.Rows.Delete Shift:=xlShiftUp
    End Sub
    

    这是一个示例数据库,如果vba不起作用,我想在其中为该数据库中的所有数据执行数据透视表。

    Name    Admin ID    Score
    Henry   13042551W   66
    Tom 13403855B   56
    Dick    12033244C   87
    Harry   14034945P   12
    Mary    13012445X   54
    Jerry   13042313E   33
    Marissa 12045671O   97
    Piyah   14007689Z   100
    Melissa 12003567K   71
    

0 个答案:

没有答案