- ベストアンサー
Excel VBA - 数式のコピーと値貼り付け
A~Cを使った表があり、AとBには値が入力されています。 C2に"=A2+B2"と入力し、その式を、A列の最終行と同じ行までコピーし、C2からCの最終行までの範囲をコピーして同じ範囲に値貼り付けするにはどういうVBAを書けばいいでしょうか。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 例えば。 Sub bbb() Dim q As Long For q = 2 To Cells(Rows.Count, 1).End(xlUp).Row Cells(q, 3).Value = Cells(q, 1).Value + Cells(q, 2).Value Next q End Sub 式は残りません。数値のみです。
その他の回答 (2)
- hige_082
- ベストアンサー率50% (379/747)
こんなコードもあるよ Sub test() Range([c2], [b65536].End(xlUp).Offset(0, 1)) = [{"=a2+b2"}] End Sub
お礼
ありがとうございます。(^^) たったの一行でできちゃうのですね。
- soixante
- ベストアンサー率32% (401/1245)
あまり美しくないかもしれませんが Sub aaa() Dim r As Long r = Cells(Rows.Count, 1).End(xlUp).Row With Cells(2, 3) .Formula = "=a2+b2" .Copy Range(Cells(2, 3), Cells(r, 3)) End With With Range(Cells(2, 3), Cells(r, 3)) .Copy .PasteSpecial Paste:=xlPasteValues End With Application.CutCopyMode = False End Sub とかどうでしょうか。 でも必要が無いならいちいち式を入れて、コピーして値貼り付けなどせずに、直接足してしまっても良いような気がします。
お礼
ありがとうございます。(^^) 直接足すともっとシンプルになるということでしょうか。 できれば教えて頂きたいと思っています。
お礼
ありがとうございます。 明日、試してみます。(^^)