Vba把Excel某个范围保存为XLS工作薄文件
09-29
Dim wn$, shp As Shape, arr
Application.ScreenUpdating = False
Application.DisplayAlerts = False
wn = [a1]
arr = Range("o3:o" & Range("o65536").End(xlUp).Row)
Sheets("报表").Copy
With ActiveWorkbook
With .Sheets(1)
.Rows("1:2").Delete Shift:=xlUp
.Range("D:D,P:P").NumberFormatLocal = "@"
.[o1].Resize(UBound(arr)) = arr
With .UsedRange
.Value = .Value
End With
For Each shp In .Shapes
shp.Delete
Next
End With
.SaveAs ThisWorkbook.Path & "/" & wn & ".xls", IIf(Application.Version <= 11, xlNormal, xlExcel8)
.Close
End With
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "ok"