工作表粘贴值/另存为,然后使用vba返回原始文件 [英] Worksheet Paste values/Save as then return the original file using vba

查看:59
本文介绍了工作表粘贴值/另存为,然后使用vba返回原始文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个工作簿,该工作簿执行多个Excel函数,这些函数取决于一个变量并自行填写.我有一个循环来创建这些表单并将其保存在目录中,但是在此之前,我想复制所有表单并粘贴特殊内容,以便公式消失.

I have a workbook which performs several Excel-functions that depend on one variable and fills out itself. I have a loop to create those forms and save in a directory but before that I want to copy all and paste special so that formulas will be gone.

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

我终于用试错法弄清楚了

I figure that out finally using trial and error method

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

推荐答案

如果您要问如何粘贴值,这就是您的方法.将"A1"替换为您需要使用的实际范围.

If you're asking how to paste values, this is how you do it. Replace "A1" with the actual range you need to use.

Range("A1").Copy
Range("A1").PasteSpecial xlPasteValues

这篇关于工作表粘贴值/另存为,然后使用vba返回原始文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆