防止 Excel 格式化为数字

防止 Excel 格式化为数字

我经常需要从 SQL Server Management Studio 复制数据。我们的许多 ID 列字段都填充了数字,但数据类型为 varchar。将输出从 SSMS 复制到 Excel 时,MSOffice 会确定该列是数字,因此会从数字中删除前面的零。如果我在“设置单元格格式”下将列转换回“文本”,则会丢失 0。

我怎样才能保留零?

答案1

使用“数据”选项卡并直接从 SQL Server 导入。这将在导入和刷新数据时维护字段类型。

保持前面为零

答案2

嗯,简短的答案是在复制之前将要复制的单元格格式化为文本。如果复制过程是通过 VBA 进行的,那么只需添加:

Range("'Sheet1'!A1:D10").NumberFormat = "@"

当然,将“sheet1”替换为您的工作表名称,将“A1:D10”替换为您的范围

如果只是手动复制和粘贴,则右键单击单元格,单击格式化单元格,选择文本。

答案3

复制后,右键单击并选择“选择性粘贴...”,然后选择文本并按“确定”

相关内容