Chào cả nhà.
Mình có tìm được 1 đoạn VBA về việc lấy tên sheet. Do mình không biết gì về VBA cả nên nhờ mọi người sửa giúp mình.
Khi chạy code này thì sẽ bật / tắt các file excel, nếu 1 vài file thì không có vấn đề gì nhưng khi thực hiện 20-30 file thì màn hình cứ nhấp nháy bật / tắt file nhìn rất khó chịu.
Nhờ các bạn xóa đoạn code liên quan đến việc đó giúp mình.
Trân trọng cảm ơn.
------------------
Sub FolderCrawler()
FileType = "*.xls*" 'The file type to search for
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ThisWorkbook.Path
.AllowMultiSelect = False
If .Show = -1 Then
FilePath = .SelectedItems(1) & "\"
Else
Exit Sub 'Cancel was pressed
End If
End With
OutputRow = 2 'The first row of the active sheet to start writing to
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = FilePath & FileType
OutputRow = OutputRow + 1
Curr_File = Dir(FilePath & FileType)
Do Until Curr_File = ""
Set FldrWkbk = Workbooks.Open(FilePath & Curr_File, False, True)
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = Curr_File
ThisWorkbook.ActiveSheet.Range("B" & OutputRow).ClearContents 'Clear any previous values
OutputRow = OutputRow + 1
For Each Sht In FldrWkbk.Sheets
ThisWorkbook.ActiveSheet.Range("B" & OutputRow) = Sht.Name
ThisWorkbook.ActiveSheet.Range("A" & OutputRow).ClearContents 'Clear any previous values
OutputRow = OutputRow + 1
Next Sht
FldrWkbk.Close SaveChanges:=False
Curr_File = Dir
Loop
Set FldrWkbk = Nothing
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = "---END OF FOLDER---"
End Sub
Mình có tìm được 1 đoạn VBA về việc lấy tên sheet. Do mình không biết gì về VBA cả nên nhờ mọi người sửa giúp mình.
Khi chạy code này thì sẽ bật / tắt các file excel, nếu 1 vài file thì không có vấn đề gì nhưng khi thực hiện 20-30 file thì màn hình cứ nhấp nháy bật / tắt file nhìn rất khó chịu.
Nhờ các bạn xóa đoạn code liên quan đến việc đó giúp mình.
Trân trọng cảm ơn.
------------------
Sub FolderCrawler()
FileType = "*.xls*" 'The file type to search for
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ThisWorkbook.Path
.AllowMultiSelect = False
If .Show = -1 Then
FilePath = .SelectedItems(1) & "\"
Else
Exit Sub 'Cancel was pressed
End If
End With
OutputRow = 2 'The first row of the active sheet to start writing to
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = FilePath & FileType
OutputRow = OutputRow + 1
Curr_File = Dir(FilePath & FileType)
Do Until Curr_File = ""
Set FldrWkbk = Workbooks.Open(FilePath & Curr_File, False, True)
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = Curr_File
ThisWorkbook.ActiveSheet.Range("B" & OutputRow).ClearContents 'Clear any previous values
OutputRow = OutputRow + 1
For Each Sht In FldrWkbk.Sheets
ThisWorkbook.ActiveSheet.Range("B" & OutputRow) = Sht.Name
ThisWorkbook.ActiveSheet.Range("A" & OutputRow).ClearContents 'Clear any previous values
OutputRow = OutputRow + 1
Next Sht
FldrWkbk.Close SaveChanges:=False
Curr_File = Dir
Loop
Set FldrWkbk = Nothing
ThisWorkbook.ActiveSheet.Range("A" & OutputRow) = "---END OF FOLDER---"
End Sub