我有一个打开工作簿的宏,从中复制一个范围并粘贴到我的一张工作表中的表中。问题是某些列中的值最终乘以1 000或1 000 000。
奇怪的是,这只发生在许多列中的少数列中,并且只发生在使用此宏复制的3个不同工作簿中的一个中。此外,如果我使用接口(而不是宏)来复制值,则问题不会发生。
为什么会发生这种情况,我该如何避免这种行为?
一些例子: 格式化为45,1的值乘以1 000,而6.489,2作为文本复制,405乘以1 000 000.可能需要注意我的系统中的小数分隔符是“,”,而数千separator是“。”,因为这是我国的标准。
我已经在网上搜索了可能的原因,但我得到的是教学使用multiply粘贴特殊教程,这不是我想要的。
我的宏是这样的:
Sub Pull_Values()
Dim rngCopy as Range, rngPaste as Range
' Opens Workbook that has the values I need
' Finds the range that has the values I need and sets rngCopy to it
' Finds the target range and sets rngPaste to it
rngCopy.Copy
rngPaste.PasteSpecial xlPasteValues
Application.CutCopyMode = False
' Closes the Workbook that was opened by this sub
End Sub
不幸的是,我无法附加任何示例文件,因为数据都是保密的。