1

ワークブックから範囲を選択し、それを別のワークブックのセルにコピーする vba コードを作成しました。私の雇用主は、この 2 番目のワークブックを自動化して、手動で入力する必要がないようにしたいと考えています。数値を最も近い千の位に四捨五入する必要があるため、たとえば、私が持っている数値は -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 に答える