Excel VBA質問箱 IV

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

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


10029 / 13644 ツリー ←次へ | 前へ→

【24093】セルにVBAを記録させる方法 くにこ 05/4/12(火) 11:55 質問[未読]
【24095】Re:セルにVBAを記録させる方法 ウッシ 05/4/12(火) 11:59 回答[未読]
【24097】Re:セルにVBAを記録させる方法 くにこ 05/4/12(火) 12:52 質問[未読]
【24101】Re:セルにVBAを記録させる方法 ウッシ 05/4/12(火) 13:14 回答[未読]
【24105】Re:セルにVBAを記録させる方法 くにこ 05/4/12(火) 13:43 質問[未読]
【24107】Re:セルにVBAを記録させる方法 ウッシ 05/4/12(火) 13:52 回答[未読]
【24109】Re:セルにVBAを記録させる方法 くにこ 05/4/12(火) 13:58 質問[未読]
【24111】Re:セルにVBAを記録させる方法 くにこ 05/4/12(火) 14:04 お礼[未読]
【24120】Re:セルにVBAを記録させる方法 くにこ 05/4/12(火) 15:38 質問[未読]
【24121】Re:セルにVBAを記録させる方法 m2 05/4/12(火) 16:10 発言[未読]
【24125】Re:セルにVBAを記録させる方法 ウッシ 05/4/12(火) 17:02 発言[未読]
【24138】Re:セルにVBAを記録させる方法 くにこ 05/4/13(水) 8:42 お礼[未読]

【24093】セルにVBAを記録させる方法
質問  くにこ  - 05/4/12(火) 11:55 -

引用なし
パスワード
   初心者です☆
ENTERをおして下のセルに動く瞬間に作業が行われるようにしたいのですが、どうしたらいいでしょうか?たとえば 数学の平均を出すときに 

 A  B  C
1   80

2   79

3   60

4   平均値

5   enterでB5に移動する際にB4の平均値が自動で行われる方法

お願いします('(エ)')

【24095】Re:セルにVBAを記録させる方法
回答  ウッシ  - 05/4/12(火) 11:59 -

引用なし
パスワード
   こんにちは

「Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)」
というイベントが有りますけど、質問のケースなら数式をセットしておくだけでも
良さそうですけど?

【24097】Re:セルにVBAを記録させる方法
質問  くにこ  - 05/4/12(火) 12:52 -

引用なし
パスワード
   こんにちは
お返事ありがとうございます。
そうなんですが、本当は行った処理をボタンを押すことで
平均がでる!とかってやりたいんだけど、会社で作っているのですが
おじさまたちばかりで ボタンをおす!ってこともよくわかっていないのです。
しょうがないからENTERをおすことなら わかるだろうと
今回相談したまでです。
ENTERで一個下のセルにフォーカスすることで ボタンの代わりになれば
と思ったので、、、

【24101】Re:セルにVBAを記録させる方法
回答  ウッシ  - 05/4/12(火) 13:14 -

引用なし
パスワード
   こんにちは

>ENTERで一個下のセルにフォーカスすることで ボタンの代わりになれば
一個下でなくてもセルB4が選択された時点でB4に平均値が出ればいいのですよね?
そのケースで「Worksheet_SelectionChange」イベントが使えるという事です。

でも、選択するセルによってその位置に平均値を出すなら、数式をセルにセットして
おけばいいのでは、と思います。

それでもという事でしたら、シートのタブを右クリックして「コードの表示」で
シートモジュールを出すと

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)

End Sub

となっているはずなので、こちらと差し替えて下さい。

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
  With Target
    If .Count > 1 Then Exit Sub
    If Intersect(.Cells, Range("B4")) Is Nothing Then Exit Sub
    .FormulaR1C1 = "=AVERAGE(R1C:R[-1]C)"
'    .Value = .Value
  End With
End Sub

【24105】Re:セルにVBAを記録させる方法
質問  くにこ  - 05/4/12(火) 13:43 -

引用なし
パスワード
   ウッシ さん

ありがとう!!(;o;)わがままな質問に付き合ってくれてありがとうございます!
早速挿入してみたのですがなにぶん初心者なので それから一体
どうしたらいいのかな??って感じなのですが。。。
どうやって登録させて動かせばいいのでしょうか??

【24107】Re:セルにVBAを記録させる方法
回答  ウッシ  - 05/4/12(火) 13:52 -

引用なし
パスワード
   こんにちは

>どうやって登録させて動かせばいいのでしょうか??
書いて有りますけど?

表例の形で、
>セルB4が選択された時点でB4に平均値が出る。
ようになっているはずですけど?

【24109】Re:セルにVBAを記録させる方法
質問  くにこ  - 05/4/12(火) 13:58 -

引用なし
パスワード
   ▼ウッシ さん

sheet1のシートに教えてもらった式をいれたら
登録とかなにかしなくてもそのまま 動くの?

【24111】Re:セルにVBAを記録させる方法
お礼  くにこ  - 05/4/12(火) 14:04 -

引用なし
パスワード
   ▼ウッシ さん
 
 ごめんなさい!できました!!'・(≧Д≦).・
 ありがとうございました!!

 うっしサン お忙しいのに親切に教えてくれて
 ありがとう!!
 ほんと に!うれしかったです!!!

【24120】Re:セルにVBAを記録させる方法
質問  くにこ  - 05/4/12(火) 15:38 -

引用なし
パスワード
   ウッシ さん

(-o-;)またちょっと質問が出来てしまいました。。

 計算式は解決したのですが今度は社員のコードの入力しなくてはならなくなっっちゃいました。

  A     B      C

1 社員番号 名前    生年月日 ←ここでA1の社員番号を入力すると
                   シート2につくってある社員の名前と
2                   生年月日が出るようにしたいのです、
                    ちなみにそれもENTERでいっこしたの
3                   セルに移動したときに。。。

【24121】Re:セルにVBAを記録させる方法
発言  m2  - 05/4/12(火) 16:10 -

引用なし
パスワード
   辛口ですが。

  本を購入し、少しVBAのお勉強から。

   と思います。

【24125】Re:セルにVBAを記録させる方法
発言  ウッシ  - 05/4/12(火) 17:02 -

引用なし
パスワード
   こんにちは

これはVBAの前にVLOOKUP等の関数を使ってみてはどうでしょうか?

>ちなみにそれもENTERでいっこしたのセルに移動したときに。。。
入力後の移動方向はメニューのツールのオプションでそのように設定出来ていれば
A2に入力後 Enter すれば下に移動するでしょうし、その時点で名前も生年月日も
シート2から持ってこれます。

一般操作を覚えれば、その処理をマクロに記録する事でVBAも覚えられます。

【24138】Re:セルにVBAを記録させる方法
お礼  くにこ  - 05/4/13(水) 8:42 -

引用なし
パスワード
   ありがとうございました。
その通りですね。本は買って勉強はしているのですが
本当にこのやり方であっているか戸惑ってしまっています。
勉強してからまた質問させていただきます。

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