0
このマクロは、ディレクトリ内のすべてのファイルをループし、そのデータをテーブルとしてフォーマットします。次のファイルに移動する前にファイルを閉じる
テーブルの列JをLargestからSmallestに並べ替えて、次のファイルに移動する前にファイルを保存する必要があります。現在、すべてのファイルを開いたままにしています。 WB.Close True
:
Sub LoopThroughFiles()
FolderName = "C:\Folder1\"
If Right(FolderName, 1) <> Application.PathSeparator Then FolderName = FolderName & Application.PathSeparator
Fname = Dir(FolderName & "*.xls")
'loop through the files
Do While Len(Fname)
With Workbooks.Open(FolderName & Fname)
Dim tbl As ListObject
Dim rng As Range
Set rng = Range(Range("A1"), Range("A1").SpecialCells(xlLastCell))
Set tbl = ActiveSheet.ListObjects.Add(xlSrcRange, rng, , xlYes)
tbl.TableStyle = "TableStyleMedium2"
Columns("A:L").Select
Columns("A:L").EntireColumn.AutoFit
End With
'go to the next file in the folder
Fname = Dir
Loop
End Sub
は一つのことに言及し忘れた...、それを回避する方法はありますか? –
@BrianFischerはい、編集したコードを試してください –
うまくいきました、列Jの中で最大から最小のソートはどうですか?ワークシートの名前はファイルごとに異なりますが、列はそれぞれのセールスとしてラベル付けされていますが、私はまだ異なるシート名に問題があります。 –