- ベストアンサー
excel2007マクロに関する不明点とは?
- シートが50枚あり、それぞれのシートのN列4~15行に対し、そのシートのC列4~15行の値を60倍したものを記載したいです。
- Rangeメソッドの失敗が生じてしまいます。
- その他にも不備があればご指摘頂きたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
お書きになったマクロを動くようになおすだけなら Sub Macro6() Dim i, j As Integer For i = 1 To 50 With Sheets("ds1_" & i) .Select’セレクトされていなかった .Range("N3").Select ActiveCell.FormulaR1C1 = "Q(cum/m)" For j = 4 To 15 .Range("N" & j).Select’余分なスペースが入っていた。 ActiveCell.FormulaR1C1 = "=RC[-11]*60" Next j End With Next i End Sub でもセレクトせず Sub TEST01() Dim i As Integer, j As Integer For i = 1 To 3 With Sheets("ds1_" & i) .Range("N3").Value = "Q(cum/m)" For j = 4 To 15 .Range("N" & j).FormulaR1C1 = "=RC[-11]*60" Next j End With Next i End Sub こう、書けると思います。
その他の回答 (1)
- mu2011
- ベストアンサー率38% (1910/4994)
一例です、参考まで。 Sub Macro6() ' ' Macro6 Macro ' Dim i, j As Integer For i = 1 To Sheets.Count Sheets(i).Range("N3").Value = "Q(cum/m)" For j = 4 To 15 Sheets(i).Range("N" & j).Value = Sheets(i).Range("C" & j) * 60 Next j Next i End Sub
お礼
参考になりました。 おかげさまで実行することができました。 ご回答ありがとうございました。
お礼
ご回答ありがとうございました。 勉強になりました。 ありがとうございます。