VBAで指定範囲セルの乗算

実現したいこと

VBAで指定範囲セルの乗算

前提

excelのVBAでforループの中で7行目以降のJG列からJI列の値を「P列からR列の値にJ列の値を掛けた値」になるようにしたいです。
最初に作ったののは下のコード①なのですが、これでは動かず、②にしても動かず、そのままコピーするだけの③なら動きました。
また、似たような質問のhttps://teratail.com/questions/114350 を参考にしてevaluateを使ってみましたが結局実装できませんでした。

他の言語ならchatGPT等に聞けば何とかなったりするのですが、VBAに関しては軒並み的外れな答えしか返ってこなくて困っているので、原因と正しい書き方についてご回答宜しくお願い致します。

発生している問題・エラーメッセージ

実行時エラー13 型が一致しません

該当のソースコード

VBA

1①Worksheets("MP").Range("JG7:JI7").Offset(i, 0).Value = Worksheets("MP").Cells(7 + i, 9) * Worksheets("MP").Range("P7:R7").Offset(i, 0).Value 2②Worksheets("MP").Range("JG7:JI7").Offset(i, 0).Value = 2 * Worksheets("MP").Range("P7:R7").Offset(i, 0).Value 3③Worksheets("MP").Range("JG7:JI7").Offset(i, 0).Value = Worksheets("MP").Range("P7:R7").Offset(i, 0).Value

補足情報(FW/ツールのバージョンなど)

office16, office365

コメントを投稿

0 コメント