プロが教える店舗&オフィスのセキュリティ対策術

Excel2003を使用しています。

ステータスバーに、選択範囲の合計、平均、データの個数などが
表示されますが、同じ機能をマクロを使って、
固定のセルに表示できないでしょうか?

例えば、任意のセルを選択すると、
A1に選択範囲の合計、A2に選択範囲の平均が自動で表示される
というような機能です。

Excel2007では、同様の機能がステータスバーにあるようなのですが。

よろしくお願い申し上げます。

A 回答 (4件)

#3です。



前述のコードは特定のシートにおいて、セルが選択された際に
動作するものです。

ちなみにTargetは選択されているセル範囲を指します。

設定方法としては以下になります。

1.設定するシートのシートタブを右クリック。
2.メニューからコードの表示を選択。
3.前述のコードをコピペ。
4.エディタを×で終了

以上です。
    • good
    • 0
この回答へのお礼

ありがとうございます!! できました───っ!! (^o^)

驚きましたー!! 今年一番の目からウロコです!!

VBAにイベントプロシージャーという概念があるなんて、
知りませんでした。(大汗)

いつも「標準モジュール」でしかコードを書いたことが
ありませんでした。

勉強になりました。本当にありがとうございました。
今年最大の感謝を込めて……。(^^)

お礼日時:2008/08/22 14:14

#1です。


keirikaさんがレス済みですが、絵付きの解説HPです。

Excel VBA 入門講座 ワークシートのイベントプロシージャ
http://excelvba.pc-users.net/fol3/3_6.html
    • good
    • 0
この回答へのお礼

何回もすみません。ありがとうございます。(^^)

できました───っ!!

VBAにイベントプロシージャーという概念があるなんて、
全然知りませんでした。(^_^;)

また、教えて頂いたURLのサイトは、非常に分かりやすいですね。
(今まで何十と見た中で一番分かりやすいかも)
これからじっくり読んで勉強したいと思います。

本当にありがとうございました。(ペコリ)

お礼日時:2008/08/22 14:19

Private Sub Worksheet_SelectionChange(ByVal Target As Range)



Range("a1") = Application.Sum(Target)
Range("a2") = Application.Average(Target)

End Sub
    • good
    • 1
この回答へのお礼

さっそくのご回答ありがとうございました。

えっと、すみません、よく分かりません。恐縮です。(汗)
範囲選択をしただけで、このサブルーチンを
起動するにはどうすればいいのでしょうか???

何度もすみません。よろしくお願い申し上げます。

お礼日時:2008/08/22 06:33

WorksheetFunction


が便利です。
全ての関数をVBAで使えるわけではないですが、↓の関数は
VBAでも使えます。

Dim selrng As Range
If TypeName(Selection) <> "Range" Then Exit Sub
Set selrng = Selection
MsgBox "合計:" & WorksheetFunction.Sum(selrng) & vbCrLf & _
"平均:" & WorksheetFunction.Average(selrng) & vbCrLf & _
"個数:" & WorksheetFunction.CountA(selrng) & vbCrLf & _
"最小:" & WorksheetFunction.Min(selrng) & vbCrLf & _
"最大:" & WorksheetFunction.Max(selrng)
    • good
    • 0
この回答へのお礼

さっそくのご回答ありがとうございました。

えっと、すみません、よく分かりません。恐縮です。(汗)

Exit Sub とあるのでサブルーチンだと思うのですが、
範囲選択をしただけで、このサブルーチンを
起動するにはどうすればいいのかが分かりません。
(お恥ずかしい……(^_^;) )

何度もすみません。よろしくお願い申し上げます。

お礼日時:2008/08/22 06:36

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