复制工作表但不复制隐藏的行/列

时间:2017-05-15 18:00:17

标签: excel excel-vba vbscript vba

我在同一工作簿中的2个不同工作表中有以下代码。 第一个是循环21天,第二个循环整整一个月。 (循环大小每月都会变化。)

Public Sub CopyDailyWorkbook()
'  dimensions variables as type
Dim SourceFileName As String    ' sets the file path of the Folder

Dim DestFileName As String
Dim Range   As Range
Dim SourceFile As Workbook   ' Sets the Source File Folder
Dim DestFile As Workbook     ' Sets the destination Folder file

' Initialsizes the variable directory
SourceFileName = FiletoCopy  ' Full Path for actual file to be copied
Set SourceFile = Workbooks.Open(SourceFileName)    ' opens the Excel file
Columns("A:Z").EntireColumn.Hidden = False    ' Unhides column's
Rows("1:500").EntireRow.Hidden = False    ' Unhides Rows

'Debug.Print " Sets file to be copied    " & SourceFileName
' copies  the Daily Report Worksheet
SourceFile.Sheets("Daily Report").Range("A3:Z500").Copy    '  Copies cells from source worksheet

SourceFile.Close SaveChanges:=False    ' Close the Excel file

' Pastes copied file into worksheet
Dim PasteDay As String
PasteDay = "Day " & DaysLoop
PasteDay = WorksheetFunction.Text(DaysLoop, "00")

ActiveSheet.Paste Destination:=Worksheets("Day " & DaysLoop).Range("A1:Z500")    ' Worksheet to paste onto
Debug.Print " Sets file to be pasted to    " & ("Day " & DaysLoop) & " date = " & FileDayName

End Sub

我每周运行一次以获取过去3周的信息,每月运行以获取整个月的信息。每周可以跨越几个月(如2月17日至3月7日),但每月仅从该月的第一天到最后一天。

我的问题是3天完全复制的日子。我得到了所有可见的细胞和所有隐藏的细胞。 (隐藏的单元格为A120至A220,列为T至Y) 但是每月的代码完全相同,我只能看到可见的细胞。目标工作表上的隐藏单元格为空白。但它确实复制了该月所有日子的所有可见信息。 我复制并粘贴了每周的代码。 这些是工作簿中唯一的复制子例程

我从源工作表中复制相同的woksheets并将它们放在目标文件夹上的相同工作表中。

0 个答案:

没有答案