感觉以下VBA效果好一些:
Sub shuzhihua()
'文件夹根目录除本身以外的所有工作簿中的公式变换为数值
Application.ScreenUpdating = False
Dim arr
p = ThisWorkbook.Path & "\"
f = Dir(p & "*.xls*")
Do While f <> ""
If f <> ThisWorkbook.Name Then
With Workbooks.Open(p & f)
For i = 1 To ActiveWorkbook.Sheets.Count
arr = .Sheets(i).UsedRange
.Sheets(i).UsedRange = arr
Next
.Close True
End With
End If
f = Dir
Loop
Application.ScreenUpdating = True
End Sub