• 締切済み

マクロで計算

いつも回答して頂きありがとうございます。 かなり前にここで質問して『連続したデータに、数式を入れる場合は、ループは必要ありません。VBAのコーディングは、記録マクロとは違う種類のものです。』と教えて頂きましたが、自分には全然分かっていなかったようです。 .Cells(5, 4).FormulaR1C1 = "=RC[-2]+RC[-1]" だけでは、対象の行だけしか出来ませんでした。どんな風に記述すればよいか教えて頂けないでしょうか?宜しくお願い致します。 ループで解決してもいいのですが、ループ無しでの記述を教えて頂けないでしょうか?宜しくお願い致します。

みんなの回答

回答No.4

質問文の 1 行を次の 1 行で上書き。ドット(ピリオド)で始まっているので、漏れなく貼り付け。 .range("d5:d10").formula = "=sum(b5:c5)"

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.3

繰り返し(ループ)には Forループと Doループの方法があります。 ' for ループ Sub マクロ1() Dim i As Integer For i = 5 To 10 Step 1 Cells(i, 4).FormulaR1C1 = "=RC[-2]+RC[-1]" Next i End Sub ' Do ループ Sub マクロ2() Dim i As Integer i = 5 Do While i < 11 Cells(i, 4).FormulaR1C1 = "=RC[-2]+RC[-1]" i = i + 1 Loop End Sub

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.2

.Range(.Cells(5, 4), .Cells(10, 4)).FormulaR1C1 = "=RC[-2]+RC[-1]" とか。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

range("D5:D10").formula = "=B5+C5" で。

関連するQ&A