1

我编写了一些 vba 代码,从工作簿中选择一个范围并将其复制到另一个工作簿中的单元格。我的雇主希望第二个工作簿能够自动化,这样就不会出现手动输入的问题。我需要将我的数字四舍五入到最接近的千位,例如,我的数字是-2,218,387,我需要它读取-2,218,但目前它显示为-2,218,000。这完全抛弃了自动化工作簿并给我带来了很多问题。下面是复制范围的代码;

Public Sub InvoicedInstallments2()

Dim rng1 As range
Dim rng2 As range


Set rng1 = Workbooks("201209TB.xlsm").Worksheets("excel").range("F295")
Set rng2 = Workbooks("201210DB1.xlsm").Worksheets("UK monthly dashboard").range("AD49")
rng2.Value = rng1.Value


End Sub
4

1 回答 1

2

我假设您的复制代码类似于

rngSource.Copy rngDest

而不是这个,尝试

rngDest.Value = Round(rngSource.Value / 1000, 0)

请注意,这将仅复制,即不复制格式

于 2012-10-17T07:39:48.410 回答