带有宏的 Excel 表 - 仅保存数据?

带有宏的 Excel 表 - 仅保存数据?

我有一个 Excel 工作表,其中内置了一些宏,可以从数据库中获取一些数据。我想保存 Excel 工作表并将其发送给某人,同时仍保留数据。但是由于它使用了宏,因此当我发送文件时数据会丢失,因为它无法连接到数据库。

有什么方法可以让我不用宏来保存/发送此文件以使数据全部是静态的?

答案1

保存为 .csv 文件应仅保留单元格的数据值,不保留任何其他内容(甚至不保留公式)。之后,如果您喜欢该格式,则可以将新 .csv 文件另存为 .xls 文件。

答案2

以下是将为您保存文件的代码:

Option Explicit

Sub SaveValuesToDisconnectedFile()
    Sheets("Sheet1").Copy
    Sheets("Sheet1").Name = "DataFromDB"
    ActiveSheet.UsedRange.Copy
    Range("A1").PasteSpecial Paste:=xlPasteValues
    ActiveWorkbook.SaveAs Filename:="C:\Temp\Offline Data.xlsx" _
        , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End Sub

将“Sheet1”替换为包含数据的工作表的名称。您还可以将路径替换为要保存文件的位置。

请注意,如果您运行两次,该文件将已经存在,因此系统将提示您取消或覆盖现有文件。

相关内容