Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


59274 / 76732 ←次へ | 前へ→

【22164】Re:表の合計を計算
回答  かみちゃん  - 05/2/10(木) 12:53 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>実は合計を出す列がたくさんあるのです、L列〜Q列まで(7つ)

ということで、以下のようにしてはどうでしょうか?
列番号をLやQではなく、12番目の列、16番目の列などと扱う方法です。
さらに、セルの指定は、RangeではなくCellsを使っています。

Sub Macro4()
  Dim endR As Long '最終行
  Dim Col As Integer '列番号

  Sheets("Sheet1").Select
  'L列(12列目)〜Q列(16列目)まで
  For Col = 12 To 16
   endR = Cells(65536, Col).End(xlUp).Row
   '計算式を設定(例)=SUM(L2:L10)
   Cells(endR + 1, Col).Formula = _
    "=SUM(" & Cells(2, Col).Address _
     (RowAbsolute:=False, ColumnAbsolute:=False) & ":" & _
     Cells(endR, Col).Address _
     (RowAbsolute:=False, ColumnAbsolute:=False) & ")"
  Next
  MsgBox "計算式を設定しました"
End Sub

> endR = Range("A65536").End(xlUp).Row

こうすると、A列の最終行が取得できますが、L〜Q列がその行よりも下に値が入っていると意図しない計算式が設定されますが、いいのでしょうか?

>  ActiveCell.Formula = "=SUM(Col&2:ol" & endR & ")"

変数と文字列の扱い方が混同されているようです。
Colは変数。2は文字列。olは何?(Colの打ち損じ?)

2 hits

【22143】表の合計を計算 igusukei 05/2/9(水) 21:21 質問
【22144】Re:表の合計を計算 りすりす 05/2/9(水) 21:53 回答
【22145】Re:表の合計を計算 かみちゃん 05/2/9(水) 21:59 回答
【22159】Re:表の合計を計算 igusukei 05/2/10(木) 9:52 質問
【22163】Re:表の合計を計算 りすりす 05/2/10(木) 12:48 回答
【22180】Re:表の合計を計算 りすりす 05/2/10(木) 16:05 発言
【22164】Re:表の合計を計算 かみちゃん 05/2/10(木) 12:53 回答
【22187】Re:表の合計を計算 sa 05/2/10(木) 16:42 発言
【22191】Re:表の合計を計算 sa 05/2/10(木) 17:20 発言
【22202】Re:表の合計を計算 igusukei 05/2/10(木) 22:39 お礼

59274 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free