私のハード ドライブには、多数の Excel ワークブックを含むフォルダーがあります。このフォルダー内の各 Excel ワークブックのすべてのワークシートをループ処理して、すべてのセルのフォント、フォント サイズ、およびテキストの配置を変更したいと考えています。
私自身の VBA に関する限られた知識と、SO に関する他の関連する質問を読んだことから、Personal.xls に保存したマクロをまとめました。
今のところ、ワークブックをループしているように見えますが、どのワークブックでもテキストをフォーマットしていません。
Sub Format_Workbooks()
'This macro requires that a reference to Microsoft Scripting Routine
'be selected under Tools\References in order for it to work.
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim fso As New FileSystemObject
Dim source As Scripting.Folder
Dim wbFile As Scripting.File
Dim book As Excel.Workbook
Dim sheet As Excel.Worksheet
Set source = fso.GetFolder("C:\Documents and Settings\The Thing\My Documents\Excel Workbooks")
For Each wbFile In source.Files
If fso.GetExtensionName(wbFile.Name) = "xls" Then
Set book = Workbooks.Open(wbFile.Path)
For Each sheet In book.Sheets
With sheet
.Cells.Font.Name = "Whatever font I want to use"
.Cells.Font.Size = 10
.Cells.HorizontalAlignment = xlLeft
End With
Next
book.Close
End If
Next
End Sub
マクロを意図したとおりに動作させるには、どのような変更を加える必要がありますか?
また、「Microsoft Scripting Routine」を使用したことがないので、このマクロを作成する際に取ったアプローチが、自分が述べた目標に対して正しいのか、それとも最初から書き直すべきなのか疑問に思っています。
ご協力いただきありがとうございます。