粘贴到excel文件时如何保持前导零?

Dan*_*boy 5 excel excel-formula

将值粘贴到列中时,有什么方法可以不更改列的格式?


我发现了大量“事后”修复的解决方法。你粘贴它的地方,将列格式化为文本,然后添加前导零等。这不是我想要的。

对于上下文,我希望能够将 GTIN 编号发布到 excel 文档中,然后将其导入网站。GTIN 可以是 8、12、13 或 14 个数字(无法确定是哪一个)。

我想要粘贴的数字是02327718200002,但每次我这样做时,它看起来像这样:

当我将 02327718200002 发布到文本格式的列中时会发生什么。

发生的情况是在粘贴之前格式化为文本的列变成了“常规”格式的列并被读取为数字。这会导致完全删除前导 0。因此,即使我右键单击我的列并将其格式化为文本......前导 0 消失了。

Ash*_*raH 5

不要使用经典的粘贴方式,如 CTRL + V,请确保首先将列格式化为文本,然后右键单击并选择“选择性粘贴”。这将允许您粘贴为文本。

  • 这是行不通的。我测试了它 - 复制问题中的数字并粘贴特殊>文本,你会发现零已被删除 (2认同)
  • 我刚刚对此进行了测试,如果单元格在粘贴之前已格式化为文本,则“选择性粘贴”>“文本”将保留前导零。作为键盘快捷键,CTRL-ALT-V 可以执行选择性粘贴。 (2认同)

Tak*_*rii 4

根据您发布的评论,并假设您已将列格式设置为文本,您可以使用类似...

Sub PasteSpecial()

    ActiveSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:= _
        False
End Sub
Run Code Online (Sandbox Code Playgroud)

按 Alt+F11 打开 VBA 编辑器,然后将其粘贴到其中。返回 Excel 中的“开发人员”选项卡,单击“宏”,然后突出显示该宏 (PasteSpecial)。单击选项,然后您可以选择添加快捷方式。当您点击所选的快捷方式组合时,代码将粘贴到可见工作表上的活动单元格中

但是,当粘贴到格式化为文本以外的任何内容的列中的单元格时,它将采用默认的“常规”类型。

注意。如果您想创建自定义快捷方式或还想进行其他操作,请使用此选项。还有一个快捷方式构建它 CTRL + ALT + V 也将粘贴特殊内容。就我个人而言,我发现内置的快捷方式使用起来很笨拙