0
我试图让我使用宏记录器生成的代码工作。我使用的电子表格有一些只能包含数字或日期的列,但由于某些原因,其中一些值存储为文本。Excel VBA PasteSpecial与xlPasteSpecialOperationAdd不起作用
为了解决这个问题,我决定复制并粘贴将0
添加到所有这些单元格中。如果我手工做,它可以正常工作。所以,我开始使用Excel宏记录器来获取代码。我对所生成的代码做了一些修改,只是为了使它更易读和干净,但实际上,也不是原代码,也不是我的版本。
的代码如下:
Range("F1").Value = 0
Range("F1").Copy
Set rngPaste = Range(Range("D3:E3"), Range("D3:E3").End(xlDown))
rngPaste.PasteSpecial Paste:=xlPasteValues, Operation:=xlPasteSpecialOperationAdd,
_ SkipBlanks:=False, Transpose:=False
Set rngPaste = Range(Range("G3:J3"), Range("G3:J3").End(xlDown))
rngPaste.PasteSpecial Paste:=xlPasteValues, Operation:=xlPasteSpecialOperationAdd,
_ SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
任何想法,为什么这是不工作?
在此先感谢!
你能描述一下当你运行上面的代码会发生什么?你是什么意思,它不起作用?你可以添加你修改之前录制的内容吗? – Mike
你说“一些存储为文本的值”,那么为什么不选择全部并将它们设置为默认值或数字? –
@Mike它应该将文本中存储的日期和数字更改为正确的类型。 –