На моем жестком диске есть папка, содержащая несколько книг Excel.Я хочу зациклить все рабочие листы в каждой из книг Excel в этой папке, чтобы изменить шрифт, размер шрифта и выравнивание текста во всех ячейках.
Из моих собственных ограниченных знаний VBA и из чтениядругие связанные с этим вопросы здесь, так что я применил макрос ниже, который я сохранил в 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» до того, какинтересно, подходит ли мой подход к написанию этого макроса для моих заявленных целей или его следует переписать с нуля?
Спасибо за вашу помощь.