Excel VBA質問箱 IV

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

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


35411 / 76738 ←次へ | 前へ→

【46527】Re:浮動列のSUMIF関数
発言  かみちゃん  - 07/2/5(月) 23:47 -

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

Nedさんからもコメントが出ていますが・・・

>  A  B   C   D  E   F  ・・・ CB
>1 単価 数量 合計 単価 数量 合計    数量合計
>2 5   10  50  10  10  100     20
>3 2   10  20  5  8   40      18
>
>数量合計=SUMIF(A1:$CB$1,"数量",A2:CB2)
>と、セルに数式を入れる場合は、CB2に記述しますが、
>VBで自動入力し、
>れを、CB列の最終行までコピーするにはどう記述したらいいでしょうか?

CB列の最終行までコピーというより、設定する範囲を決めてから一気に設定する
方法です。
ちなみに、CB列はこれから計算式を設定すると思いますので、CB列の最終行はまだ
求められないと思います。

一応以下のような感じでできると思いますが、例では、CA列の最終行を取得して、
その行のCB列までに数式を設定するというものです。

Sub Sample1()
 Range("CA2", Range("CA65536").End(xlUp)).Offset(, 1).Formula = _
  "=SUMIF($A$1:$CB$1,""数量"",A2:CB2)"
End Sub

ちょっとややこしいですが、以下のような方法でもできます。

Sub Sample2()
 With Range("CA1")
  .Resize(.Offset(Rows.Count - .Row).End(xlUp).Row _
   - .Row).Offset(1, 1).Formula = _
    "=SUMIF($A$1:" & .Address & ",""数量""," & _
     .Offset(1, .Column * -1 + 1).Resize(, .Column).Address(0, 0) & ")"
 End With
End Sub

0 hits

【46523】浮動列のSUMIF関数 chacola 07/2/5(月) 23:12 質問
【46525】Re:浮動列のSUMIF関数 Ned 07/2/5(月) 23:39 発言
【46526】Re:浮動列のSUMIF関数 ponpon 07/2/5(月) 23:43 発言
【46528】Re:浮動列のSUMIF関数 かみちゃん 07/2/5(月) 23:58 発言
【46530】Re:浮動列のSUMIF関数 ponpon 07/2/6(火) 0:26 発言
【46527】Re:浮動列のSUMIF関数 かみちゃん 07/2/5(月) 23:47 発言
【46529】Re:浮動列のSUMIF関数 chacola 07/2/6(火) 0:25 お礼

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