Excel VBA質問箱 IV

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

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


11743 / 13645 ツリー ←次へ | 前へ→

【14413】選択したセルより上のセルを複数選んで計... ぴぴ 04/5/28(金) 13:32 質問[未読]
【14415】Re:選択したセルより上のセルを複数選んで... Jaka 04/5/28(金) 14:47 回答[未読]
【14416】Re:選択したセルより上のセルを複数選んで... ぴぴ 04/5/28(金) 14:59 質問[未読]
【14418】Re:選択したセルより上のセルを複数選んで... Jaka 04/5/28(金) 15:11 回答[未読]
【14419】Re:選択したセルより上のセルを複数選んで... ぴぴ 04/5/28(金) 15:22 お礼[未読]

【14413】選択したセルより上のセルを複数選んで計...
質問  ぴぴ  - 04/5/28(金) 13:32 -

引用なし
パスワード
    1
 2
 5

 6
 7
 9
例えば上記で、5の下のセル(空白ですが関数が入ってます)を選択した時
マクロを実行したら、インプットボックスで空白より上の行数を入力して
(例えば3)
OKを押したら、空白のセルの関数をクリアして
代りに8(1+2+5)と計算される
ようにしたいのですがどのようなコードにすればよいでしょうか。
0はなく、必ず1以上の行(セル)選択になります。
説明が上手く出来なくてすみません。

【14415】Re:選択したセルより上のセルを複数選ん...
回答  Jaka  - 04/5/28(金) 14:47 -

引用なし
パスワード
   細かい事してません。

Sub ib()
Dim inpset As String
inpset = Application.InputBox(Prompt:="数字してください。", _
           Title:="入力", Default:=1, Type:=1)
If inpset > "0" And IsNumeric(inpset) Then
  With ActiveCell
   If .Row - inpset > 0 Then
     MsgBox Application.Sum(Range(.Offset(-1), .Offset(-inpset)))
   End If
  End With
End If
End Sub

でも、ステータスバーを表示させておけば、標準機能で選択したセルの合計を表示してくれるけど.....。

【14416】Re:選択したセルより上のセルを複数選ん...
質問  ぴぴ  - 04/5/28(金) 14:59 -

引用なし
パスワード
   Jaka さん ありがとうございます。

>でも、ステータスバーを表示させておけば、標準機能で選択したセルの合計を表示してくれるけど.....。
空白セルには関数が入れてあるので、標準では出来ず
いちいち=SUM(・・・と入力していた有様なのです。

それから、メッセージボックスではなく
計算された値が空白セルに表示されるようにしたいのですが、
どこを直せばよいでしょうか?
お手数かけますが、宜しくお願いします。

【14418】Re:選択したセルより上のセルを複数選ん...
回答  Jaka  - 04/5/28(金) 15:11 -

引用なし
パスワード
   MsgBox Application.Sum(Range(.Offset(-1), .Offset(-inpset)))
  ↓
.value = Application.Sum(Range(.Offset(-1), .Offset(-inpset)))

【14419】Re:選択したセルより上のセルを複数選ん...
お礼  ぴぴ  - 04/5/28(金) 15:22 -

引用なし
パスワード
   Jaka さん

ありがとうございました。
これで前からやりたかった事が出来ました。
説明不足ですみませんでした。

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