将数字代码复制到剪贴板并粘贴到 Excel,而不将其格式化为数字

本文关键字:数字 格式化 复制 代码 剪贴板 Excel | 更新日期: 2023-09-27 18:36:25

我有一个.NET Windows Forms应用程序,我需要将8位数字代码的列表复制到剪贴板中以粘贴到Excel工作表中。

string tabbedText = string.Join("'n", codesArray);    
Clipboard.SetText(tabbedText);

问题是,当代码以一个或多个零开头(例如"00001234")时,它被粘贴为数字,并修剪了零。

有没有办法设置剪贴板文本,以便Excel接受它作为文本?

将数字代码复制到剪贴板并粘贴到 Excel,而不将其格式化为数字

我会在 Excel 中(而不是在您的应用程序中以编程方式)处理这个问题。设置单元格格式以将其视为文本,然后从剪贴板粘贴。这样,始终粘贴前导零。

编辑:这在Excel中不起作用,因为撇号被粘贴并显示出来。我在这里留下答案作为明确声明,即此方法对 Excel 没有帮助。不过,它确实适用于OpenOffice Calc

"告诉"Excel 将字符串视为字符串的标准方法是在其前面加上撇号。您是否尝试过以下方法:

string tabbedText = "'" + string.Join("'n'", codesArray);

(注意那里的额外撇号...有点难看)。

当然,如果您计划此后在 Excel 计算中使用此值,这可能会给您带来问题,但也有一些方法可以处理它。