0

我有一个工作簿,它执行几个依赖于一个变量并自行填写的 Excel 函数。我有一个循环来创建这些表单并保存在一个目录中,但在此之前我想复制所有并粘贴特殊以便公式消失。

Sub SaveAs1()
For i = 172 To 225 
    Dim SaveName As Integer
    SaveName = ActiveWorkbook.Sheets(1).Range("bi1").value
    Application.ActiveWorkbook.SaveAs "C:\" & SaveName
    Range("bi1") = i + 1
Next
End Sub

我终于用试错法弄清楚了

Sub Save()

Rem kaydetmece dongusu

For i = 172 To 180 Step 1

    Application.DisplayAlerts = False

    Workbooks.Open Filename:="C:\"

    Range("bi1") = i + 1

    Dim SaveName As Integer
    SaveName = ActiveWorkbook.Sheets(1).Range("bi1").value

    Range("A1:BE63").Select
    Range("a1").Activate
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False

    Application.ActiveWorkbook.SaveAs "C:\" & SaveName

    Columns("BE:BU").Select
    Selection.Delete Shift:=xlToLeft

    Sheets("CAL").Select
    ActiveWindow.SelectedSheets.Delete

    Sheets("sahadan").Select
    ActiveWindow.SelectedSheets.Delete

    ActiveWorkbook.Close True

Next

End Sub
4

1 回答 1

3

如果您要询问如何粘贴值,这就是您的操作方式。将“A1”替换为您需要使用的实际范围。

Range("A1").Copy
Range("A1").PasteSpecial xlPasteValues
于 2012-10-04T08:41:43.977 回答