不知道你具体遇到了什么问题,你写的术语有点混淆,看不很明白。系统进行另存为的肯定是“工作簿”,也就是一个EXCEL文件成为一个“工作簿”,里面可以包含一个或者多个“工作表”,“工作表”里面有许多单元格。
去掉公式、保留数值和格式的方法:
Sheet1.UsedRange.Value = Sheet1.UsedRange.Value
另存为某工作簿的方法:
ThisWorkbook.SaveAs Filename = "d:\" + [i2]
如果只把当前工作表另存为,那么需要把这个工作表复制到一个新的工作簿中:
ActiveSheet.Copy
上面的当前工作簿、当前工作表、以及Sheet1这些只是一个例子,事实上可以用任何方法表示的工作簿、工作表都是可以执行的。
详见附件
代码如下:
Sub test()
Dim wb As Workbook, rg As Range
Worksheets("Sheet1").Copy
Set wb = ActiveWorkbook
With wb
For Each rg In .Worksheets("Sheet1").UsedRange
rg = rg
Next
End With
f = "D:\" & wb.Worksheets("Sheet1").[i2] & ".xlsx"
wb.SaveAs f
wb.Close
End Sub
A = Sheets("sheet1").Cells(2, 9)
Sheets("sheet1").Select
Sheets("打印表").Copy
ActiveWorkbook.SaveAs "d:\" & A & ".xlsx"
Sub test()Dim wb As Workbook, rg As RangeWorksheets("Sheet1").CopySet wb = ActiveWorkbookWith wb For Each rg In .Worksheets("Sheet1").UsedRange rg = rg NextEnd Withf = "D:\" & wb.Worksheets("Sheet1").[i2] & ".xlsx"wb.SaveAs fwb.CloseEnd Sub