2

Я использую следующий код в моей рабочей таблице:

Sub savesheet2()

Application.ScreenUpdating = False
ActiveSheet.Select
ActiveSheet.Copy
ThisFile = Range("A1").Text
Dim fileName As String
fileName = "H:\PUS\Overhead\Planning&Control\Planning\Leveranciers core\bestellingen\" & ThisFile
ActiveSheet.SaveAs fileName:=fileName, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
Application.ScreenUpdating = True

End Sub

Мне хотелось бы, чтобы для новой сохраненной книги все формулы сохранялись в виде значений, поэтому в ячейках нет видимых формул.

Я надеюсь, что кто-то может помочь мне?

Заранее спасибо!

2 ответа2

2

Сразу после:

ActiveSheet.Copy

включают:

Cells.Copy
Cells.PasteSpecial xlPasteValues
0

Вы можете попробовать этот простой код VBA, который преобразует все формулы в значения и сохраняет рабочую книгу.

Sub Saveasvalue()

    Dim wsh As Worksheet
    For Each wsh In ThisWorkbook.Worksheets
        wsh.Cells.Copy
        wsh.Cells.PasteSpecial xlPasteValues
    Next
    Application.CutCopyMode = False
    Application.ActiveWorkbook.SaveAs Filename:="YOUR PATH\" & YOURWorkbookName, FileFormat:= xlNormal, CreateBackup:=False
End Sub

Или это можно использовать также,

    Dim wsh As Worksheet
    For Each wsh In ActiveWorkbook.Sheets
        wsh.UsedRange.Value = wsh.UsedRange.Value
    Next
   ThisWorkbook.Save

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .