首页 > 解决方案 > 行隐藏,没有解释为什么

问题描述

已经构建了一种工具,可以使流程从本质上更加高效,并且减少人为错误的机会。其中很多是复制列/行并将其粘贴到其他地方以及过滤数据透视选项卡和行/列然后刷新。我有一些vlookup公式以及引用表格和其他工作表。

这是我用来将以前的数据与使用该工具生成的数据进行比较的公式之一的示例。

=IFERROR((VLOOKUP(A5,$A5:$AH170,34,FALSE)-(VLOOKUP(A5,$AN5:$AR485,5,FALSE)))/(VLOOKUP(A5,$A5:$AH170,34,FALSE))," ")

下面是一个宏,用于打开计算机库并允许用户选择一个文件,然后宏将复制某些列并将其粘贴到工作簿中。

我遇到的问题是具有我放在上面的公式以及对其他页面的引用的工作表隐藏了 1000 多行,即使取消隐藏的选项可用,它也不会取消隐藏它们。下面的宏中的某些东西导致了这个问题。由于没有出现错误,我发现很难查明原因。

Sub GetData_Example4()
Dim SaveDriveDir As String, MyPath As String
Dim FName As Variant, wb As Workbook, shtDest As Worksheet
SaveDriveDir = CurDir
MyPath = Application.DefaultFilePath    'or use "C:\Data"
ChDrive MyPath
ChDir MyPath
FName = Application.GetOpenFilename(filefilter:="Excel Files, *.xl*")

If FName = False Then
    'do nothing

Else
    Application.ScreenUpdating = False
    Set shtDest = ThisWorkbook.Sheets("Data")
    With Workbooks.Open(FName, ReadOnly:=True)
    .Sheets("Sheet1").ShowAllData
    ActiveSheet.Range("$A$1:$AF$7935").AutoFilter Field:=8, Criteria1:=Array( _
    "CAD", "GBP", "USD"), Operator:=xlFilterValues
    On Error Resume Next
        .Sheets("Sheet1").Range("D1:D10000").Copy shtDest.Range("A2")
         On Error Resume Next
        .Sheets("Sheet1").Range("H1:H10000").Copy shtDest.Range("B2")
        On Error Resume Next
        .Sheets("Sheet1").Range("Q1:Q10000").Copy shtDest.Range("C2")
         On Error Resume Next
        .Sheets("Sheet1").Range("R1:R10000").Copy shtDest.Range("D2")
      On Error Resume Next
        .Sheets("Sheet1").Range("AB1:AB10000").Copy shtDest.Range("E2")
         On Error Resume Next
         .Sheets("Sheet1").Range("AA1:AA10000").Copy shtDest.Range("F2")
         On Error Resume Next
    .Close False
    End With
ActiveSheet.Range("F:F").Select
Range("F2").Activate
Selection.NumberFormat = "[$-F800]dddd, mmmm dd, yyyy"
ActiveSheet.Range("$A$2:$F$7936").AutoFilter Field:=5, Criteria1:=Array( _
    "12", "3", "4"), Operator:=xlFilterValues
Sheets("Data").Visible = False
End If
ChDrive SaveDriveDir
ChDir SaveDriveDir
ActiveWorkbook.RefreshAll
End Sub

标签: excelvbapivot-table

解决方案


推荐阅读