#REF!刷新后的工作簿

时间:2018-12-20 18:18:47

标签: excel vba

在我的一些工作簿中,更新工作簿后出现#REF!错误。 我必须将数据过滤到工作表Januari中以过滤Januari,并在Sheet Total中获得总计。

我拥有的代码运行正常,但是当我要将总数从“ C”列复制到另一个工作表时,出现#REF!错误。 这是我在原始工作表中得到的行:=SOM('WABO Oktober'!#VERW!),应该在哪里:=SOM('WABO Oktober'!E:E) 并非所有工作簿都发生这种情况,只是我最需要的那本。

这是我的代码示例。

Sub Test()

    Dim My_Range As Range
    Dim Maand As String
    Maand = ActiveSheet.Name

    ' This is the name of the First part of the filtersheet
    Naam = ("filter") 

    ' Make sure sheet is visible
     Sheets((Naam) & " " & Maand).Visible = True
     Sheets(Maand).Select

    ' Range on active sheet
    Set My_Range = Range("A2:Y999")
        My_Range.Parent.Select

    'Remove AutoFilter
    My_Range.Parent.AutoFilterMode = False

    ' Select the columns you want to filter
    My_Range.AutoFilter Field:=2, Criteria1:="y"

    'Copy/paste the visible data to the new worksheet
    Sheets((Naam) & " " & Maand).Select
    My_Range.Parent.AutoFilter.Range.Copy
        With ActiveSheet.Range("A1")
            .PasteSpecial Paste:=8
            .PasteSpecial xlPasteValues
            .PasteSpecial xlPasteFormats
            Application.CutCopyMode = False
            .Select
    End With

    'AutoFit All Columns on Worksheet
    ActiveSheet.Cells.EntireColumn.AutoFit

    'Close AutoFilter
    My_Range.Parent.AutoFilterMode = False

    ' Remove colums to create data filter Januari
    Range("A:A").Select
    Range("C1").Activate
    Selection.Delete Shift:=xlToLeft

    ' Got to cell A1
    ActiveSheet.Range("A1").Select

    'Go back to the  "Maand" Sheet
    Worksheets(Maand).Activate
    ActiveSheet.Range("A1").Select

    'Hide the filter Januari sheet
    Sheets((Naam) & " " & Maand).Visible = False

    'Refresh workbook
    ActiveWorkbook.RefreshAll

End Sub

0 个答案:

没有答案