Excel VBA質問箱 IV

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

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


13271 / 13646 ツリー ←次へ | 前へ→

【6204】シート上のボタンのフォーカスをとれないですが つる 03/6/19(木) 11:54 質問
【6206】Re:シート上のボタンのフォーカスをとれな... つん 03/6/19(木) 12:40 回答
【6207】Re:シート上のボタンのフォーカスをとれな... Jaka 03/6/19(木) 13:21 発言
【6208】リンク失敗 Jaka 03/6/19(木) 13:22 発言
【6211】もっとリンク失敗 Jaka 03/6/19(木) 13:26 発言
【6212】Re:シート上のボタンのフォーカスをとれな... つる 03/6/19(木) 13:26 質問
【6214】コントロールツールボックスのやとあかん... つん 03/6/19(木) 14:02 発言
【6221】Re:コントロールツールボックスのやとあかん... Jaka 03/6/19(木) 15:21 回答
【6223】Re:コントロールツールボックスのやとあかん... ichinose 03/6/19(木) 15:31 発言
【6225】Re:コントロールツールボックスのやとあかん... つん 03/6/19(木) 16:01 発言
【6228】Re:コントロールツールボックスのやとあかん... Jaka 03/6/19(木) 16:47 発言

【6204】シート上のボタンのフォーカスをとれない...
質問  つる  - 03/6/19(木) 11:54 -

引用なし
パスワード
   初心者のつるです。シート上のボタン(Macでも使えるようにVBのボタンではなく、VBAのボタン)をタブで移動し、フォーカスのあるボタンをEnterキーでマクロを実行したいです。フォーカスをどうしてもとれないです、誰か教えてください。お願いいたします。

【6206】Re:シート上のボタンのフォーカスをとれな...
回答  つん E-MAIL  - 03/6/19(木) 12:40 -

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

これではどうでしょう?

Private Sub CommandButton1_Click()
  
  MsgBox "ボタン1"

End Sub

Private Sub CommandButton1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

  If KeyCode = vbKeyReturn Then
    Call CommandButton1_Click  
  End If
  
  If KeyCode = vbKeyTab Then
    CommandButton2.Activate
  End If

End Sub

Private Sub CommandButton2_Click()

  MsgBox "ボタン2"

End Sub

Private Sub CommandButton2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  
  If KeyCode = vbKeyReturn Then
    Call CommandButton2_Click
  End If
  
  If KeyCode = vbKeyTab Then
    CommandButton1.Activate
  End If

End Sub

やってみたら出来てるような・・・・
ところで、

  Call CommandButton1_Click  

こんな風に、コントロールのイベントを呼ぶ出すのってOKなのかな?

【6207】Re:シート上のボタンのフォーカスをとれな...
発言  Jaka  - 03/6/19(木) 13:21 -

引用なし
パスワード
   >ところで、
>
>  Call CommandButton1_Click  
>
>こんな風に、コントロールのイベントを呼ぶ出すのってOKなのかな?

こんにちは。
お元気そうでなによりです。

こんな方法も。

[#3146}

【6208】リンク失敗
発言  Jaka  - 03/6/19(木) 13:22 -

引用なし
パスワード
   ごめんなさい。

[#3146]

【6211】もっとリンク失敗
発言  Jaka  - 03/6/19(木) 13:26 -

引用なし
パスワード
   ごめんなさい。番号書き間違えました。

[#3416]

【6212】Re:シート上のボタンのフォーカスをとれな...
質問  つる  - 03/6/19(木) 13:26 -

引用なし
パスワード
   ▼つん さん:
早速のお返事ありがとうございます。VBのボタンではなく、VBAのボタン(多分)ですのでVBのCommandButton1_Clickは使えないみたいです。
表示->ツールバー->Visual Basicを選択し、ボタンをシートに貼り付ける。
 このボタンはCommandButton1_Clickのように使えますが、
表示->ツールバー->フォームを選択し、ボタンをシートに貼り付けるという手順で付けたボタンはCommandButton1_Clickのように使えないですが、いい方法を教えてください。

【6214】コントロールツールボックスのやとあかん...
発言  つん E-MAIL  - 03/6/19(木) 14:02 -

引用なし
パスワード
   つる さん

>早速のお返事ありがとうございます。VBのボタンではなく、VBAのボタン(多分)ですのでVBのCommandButton1_Clickは使えないみたいです。
>表示->ツールバー->Visual Basicを選択し、ボタンをシートに貼り付ける。
> このボタンはCommandButton1_Clickのように使えますが、
>表示->ツールバー->フォームを選択し、ボタンをシートに貼り付けるという手順で付けたボタンはCommandButton1_Clickのように使えないですが、いい方法を教えてください。

VBのボタン =【ツールバー】−【コントロールツールボックス】の中の【コマンドボタン】

VBAのボタン=【ツールバー】−【フォーム】の中の【コマンドボタン】

と言うてはるんですかね?
で、つるさんは「フォーム」のコマンドボタンで作りたいわけですか?
【コントロール】のボタンと、【フォーム】のボタンは似てるようで、全然違うようです。私は【フォーム】のコントロールはあまり使ったことがないので、はっきりしたことは言えませんが、【フォーム】のコマンドボタンは、クリックした時の処理しか出来ないんじゃないかな?
クリックイベントにプログラムを書くんじゃなくて、マクロを登録するだけしか出来ないみたい。
なので、【フォーム】のボタンでは、つるさんのおっしゃるような動作を実現させるのは無理ではないかと思います。
【コントロール】のボタンに変えはったほうがええんとちゃうか?と私は思います。
多分・・・・

Jakaさん
ありがとうございます。

  If KeyCode = vbKeyReturn Then
    CommandButton1 = True
  End If

こういうことですね。
Trueを設定すると、そのコントロールの規定のイベントが発生するっちゅーことかしらん?

【6221】Re:コントロールツールボックスのやとあか...
回答  Jaka  - 03/6/19(木) 15:21 -

引用なし
パスワード
   >【フォーム】のボタンでは、つるさんのおっしゃるような動作を実現させるのは無理ではないかと思います。
私もそう思います。

>【コントロール】のボタンに変えはったほうがええんとちゃうか?と私は思います。
と、思うんですが、キー操作だけでどうやってフォーカスを持って行くかだと思います。
これがいまんところ私には解りませんです。

>Trueを設定すると、そのコントロールの規定のイベントが発生するっちゅーことかしらん?
うっ!
つっこまれてしまった。
た、たぶんそんな感じになるんじゃないかと...。
ボタンを押した事ってことじゃだめ?

こう言うのJuJuさん辺りが詳しそうですけど....。

【6223】Re:コントロールツールボックスのやとあか...
発言  ichinose  - 03/6/19(木) 15:31 -

引用なし
パスワード
   こんにちは。
皆さん、集まっているのでついつい投稿してしまいました。

>>【フォーム】のボタンでは、つるさんのおっしゃるような動作を実現させるのは無理ではないかと思います。
>私もそう思います。
>
>>【コントロール】のボタンに変えはったほうがええんとちゃうか?と私は思います。
>と、思うんですが、キー操作だけでどうやってフォーカスを持って行くかだと思います。
>これがいまんところ私には解りませんです。
>
>>Trueを設定すると、そのコントロールの規定のイベントが発生するっちゅーことかしらん?
>うっ!
>つっこまれてしまった。
>た、たぶんそんな感じになるんじゃないかと...。
>ボタンを押した事ってことじゃだめ?
>
>こう言うのJuJuさん辺りが詳しそうですけど....。

Helpにありましたよ。
解説

コマンド ボタン (CommandButton) コントロールでは、マクロまたはプロシージャを通じて Value プロパティに真 (True) を設定すると、Click イベントが発生します。

で、
「コマンド ボタン (CommandButton) コントロールの既定のプロパティは、Value プロパティです。」
とのことです。

【6225】Re:コントロールツールボックスのやとあか...
発言  つん E-MAIL  - 03/6/19(木) 16:01 -

引用なし
パスワード
   ichinose さん、こんにちは〜

>Helpにありましたよ。
>解説
>コマンド ボタン (CommandButton) コントロールでは、マクロまたはプロシージャを通じて Value プロパティに真 (True) を設定すると、Click イベントが発生します。
>で、
>「コマンド ボタン (CommandButton) コントロールの既定のプロパティは、Value プロパティです。」
>とのことです。

なるほど〜そうなのか・・・・ありがとうございます。
イベントをコールするのはやっぱり変かな?

Jakaさん

> と、思うんですが、キー操作だけでどうやってフォーカスを持って行くかだと思います。
> これがいまんところ私には解りませんです。

それって、↓これで出来てることにならないんかな?コマンドボタン1の
キーダウンイベント(みなカタカナじゃ(^^;)で、
タブキーを押したら、コマンドボタン2をアクティブに・・・
セットフォーカスはないみたい。

  If KeyCode = vbKeyTab Then
    CommandButton2.Activate
  End If

【6228】Re:コントロールツールボックスのやとあか...
発言  Jaka  - 03/6/19(木) 16:47 -

引用なし
パスワード
   ▼つん さん:
>それって、↓これで出来てることにならないんかな?コマンドボタン1の
>キーダウンイベント(みなカタカナじゃ(^^;)で、
>タブキーを押したら、コマンドボタン2をアクティブに・・・
>セットフォーカスはないみたい。
>
>  If KeyCode = vbKeyTab Then
>    CommandButton2.Activate
>  End If

おぉー。
Activateが合ったんですよね!
あたしはセットフォーカスがダメでセレクトしちゃってました。
当然ダメやね...。
つんさんってすっごぉ〜い。

前にフォーカスさせた事やったことあったのにだろうに。
確か特定セルを選択させたときフォーカスが移動する様に........。
なんてバカなんだろって、自分で思った。

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