電子書籍の厳選無料作品が豊富!

マクロ初心者です。
F列からAJ列までの合計をAK列に数値で入力しようとしています。
ただし、FからAJ列の各セルに全てデータは入っていません。
したがってFからAJ列のいずれかにデータが入っている最終行を
見つけて合計を算入しようとしているのですが下記の通りやっても
うまくいきません。教えてください。
エクセルのバージョンは2002です。

Sub ()
'データが入っている最終行まで合計額を数字で入力
LastRow = Cells(65536, COL).End(xlUp).Row
For i = LastRow To 6 Step -1
Set myRange = Range(Cells(i, 6), Cells(i, 36))
Cells(i, 37).Value = WorksheetFunction.Sum(myRange)
Next i
End Sub

A 回答 (2件)

こんにちは。


以下のように変更してみてください。

Sub test()
  Dim i      As Long
  Dim LastRow   As Long
  Dim myRange   As Range
  '
  'データが入っている最終行まで合計額を数字で入力
  'LastRow = Cells(65536, COL).End(xlUp).Row
  LastRow = Get_COL
  For i = LastRow To 6 Step -1
    Set myRange = Range(Cells(i, 6), Cells(i, 36))
    Cells(i, 37).Value = WorksheetFunction.Sum(myRange)
  Next
End Sub
'FからAJ列のいずれかにデータが入っている最終行を求める
Function Get_COL() As Long
  Dim wR     As Long
  Dim MRow    As Long
  Dim cRow    As Long
  MRow = 0
  For wR = 6 To 36
    cRow = Cells(Rows.Count, wR).End(xlUp).Row
    If MRow < cRow Then
      MRow = cRow
    End If
  Next
  Get_COL = MRow
End Function
    • good
    • 0
この回答へのお礼

出来ました!ありがとうございました!
不慣れな私にここまでのご教授ありがとうございました!

お礼日時:2008/10/16 16:59

変数COLの値が指定されていません


列番号の指定が必要ですのでそれの補足を記述してください

また、エラーがでた場合、デバッグや、メッセージ表示させるなどで
一つずつ変数や制御の流れを確認すれば大抵の場合解決できますので
落ち着いて状況を把握してから何がどうエラーで
どこがわからないのかを明確にご質問ください

この回答への補足

なるほどありがとうございます!
甘えてしまうようですが、教えて下さい。
変数COLの範囲は6から36です。
この場合の変数の指定方法をご教授ください。

補足日時:2008/10/16 15:31
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!