Spreadシートでボタンの動作が制限される現象について

このQ&Aのポイント
  • Windows XP ProとVisual Basic 2005で開発しているシステムで、F3とF4のボタンのクリックが効かない問題が発生しています。
  • 他のボタンは正常に動作しており、特別な処理は施されていません。原因はSpreadシートにある可能性もあります。
  • 問題の解決方法についてお知りの方がいらっしゃいましたら、教えていただけると助かります。
回答を見る
  • ベストアンサー

ボタンについて

お世話になります。 Windows XP Pro Visual Basic 2005 + Spread sheet という環境にて、とあるシステムを開発しています。 その中で、ボタンを扱えるように開発しているのですが、 現在、F3、F4、F10、F12をボタンとしても、クリックとしても 使えるようにしたいのですが、 なぜかF3とF4だけがクリックは効いても、ボタン押下は効きません。 | | Select Case key Case Keys.F3 Call ~() Case Keys.F4 Call ~() Case Keys.F10 Call ~() Case Keys.F12 '画面を閉じる Call Form_Close() | | こんな感じで特別各ボタンに何かを施しているわけではありません。 もしかしてSpreadに原因があるのでしょうか。 完全に行き詰まってしまいました。宜しくお願いします・・・

質問者が選んだベストアンサー

  • ベストアンサー
  • miyuyu
  • ベストアンサー率61% (30/49)
回答No.1

> その中で、ボタンを扱えるように~ とは、SpreadSheetにFocusがある時、ということでしょうか?

velvet_emo
質問者

お礼

申し訳ありませんでした。 入力マップのカスタマイズが原因でした・・・ お手数おかけしました。 ありがとうございました。

velvet_emo
質問者

補足

>SpreadSheetにFocusがある時、ということでしょうか? むしろ、画面を起動してすぐにF3、もしくはF4が押されても効かないという状況です。F10とF12は効くんですが・・・ 下記の例でいえば、 ブレークポイントを(1)の記述部分に付けても、イベントをキャッチしてくれず、(2)ではちゃんとキャッチしてくれます。 (1)Private Sub B_Fnc4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B_Fnc4.Click (2)Private Sub B_Fnc10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B_Fnc10.Click

関連するQ&A

  • C#でKeyDownイベントが発生しない。

    VS2010 CS.NET 環境です。 Formにボタンが2個あり。ボタン1はF1キー、ボタン2はF2キーで動作するようにしています。 private void Form1_KeyDown(object sender, KeyEventArgs e) {    switch (e.KeyCode)    { case Keys.F1: this.btn1.PerformClick(); break; case Keys.F2: this.btn2.PerformClick(); break; } } ボタン1は計算処理をします。 ボタン2は別のForm2を開きます。 ボタン1はF1キーで何度でも動作しますが、ボタン2はF2キーでForm2を開いて、それを閉じて元のForm1に戻ると次のF2キーではKeyDownイベントが発生しません。 この時はF1キーもKeyDownイベントが発生しなくなります。 Form1のどこかをクリックすると、KeyDownイベントが発生するようになります。 別Formを開いて戻ってもKeyDownイベントを発生させるにはどうしたらいいでしょうか? よろしくお願いします。

  • ファンクションキーの使用制御について

    こんばんわ。 VB6にて、2つのボタンに対してファンクションキー(F5とF7)を割り当てているのですが、 1回押したらプログラムが1サイクル終了するまで使用禁止にしたいのですが、わかりません。 ボタンの方は、EnableをTrue/Falseでできましたが、ファンクションキーはできません。 ちなみに今のファンクションキー割り当てのコードです。 Select Case KeyCode Case vbKeyF5 Call Command1_Click Case vbKeyF7 Call Command2_Click Case Else End Select です。 どなたかよろしくお願いいたします!

  • コマンドボタン名を取得して変数に代入したい。

    OS:windowsXp Access Version:Xp 既出でしたらすみません。 INDEXのフォームにて複数コマンドボタンを作り、それを押すと各登録フォームや集計フォームが開くようにしています。 さて、質問なのですが、コマンドボタンで別のフォームを開く時の処理を(フォーム名が違うだけで後は同じなので)まとめて書きたいのです。 現在は次のようにやっています。 ------------------------------------------------- Private Sub F_メニュー_Click() Call close_form DoCmd.OpenForm "F_メニュー", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub F_売上伝票_Click() Call close_form DoCmd.OpenForm "F_売上伝票", acNormal, , , acFormEdit, acWindowNormal End Sub      (中略) Private Sub 事業所別集計_Click() Call close_form DoCmd.OpenForm "F_事業所別集計", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub 消費税変更_Click() Call close_form DoCmd.OpenForm "F_消費税変更", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub システム終了_Click() Call close_form DoCmd.RunCommand acCmdExit End Sub Private Sub close_form() msgbx = False DoCmd.Close acForm, "index", acSaveYes End Sub ------------------------------------------------- これを  ボタン名_Click() ではなく  frm_open() 押されたボタン名を変数に取得(ボタン名=Form名にします。) DoCmd.OpenForm 押されたボタン名変数 のように共有したいのです。 どうすれば出来ますでしょうか?ご指導よろしくお願いします。

  • aspx画面のINPUTボタンにファンクションキーを割り当てたい

    Vb.Netで開発中です。 aspx画面でINPUTボタンを使用しております。 ボタンのプロパティのAccessKeyの割り当てでAlt+「指定したキー」の設定ができるのは知っていたのですが、ファンクションキーを割り当てて欲しいとの要望があり、困っています。 ファンクションキー「F1~F12」を押下したときにあるINPUTボタンのイベントがはしるような実装方法を知りたいです。 よろしくお願いします。

  • F2+Ctrl押下時のイベント記述方法

    VB6を使用しています。 F2+Ctrlを同時に押下した場合の処理の記述がうまくいきません。 Form_KeyDownイベントで下記のように記述しようと考えたのですが、KeyCodeに17が入ってしまいうまくいきません。 アドバイスをお願いします。 ----------------------- select case KeyCode  case vbKeyF2   If Shift = 2 Then   'Ctrl+F2押下時   ***処理   End If ※他のファンクションボタンの処理もあるのでcase文にしています。

  • excel2010でボタンが反応しなくなった?

    EXCEL2010でシート上に作成したボタンがある時期から反応しなくなりました。 原因がわかりません。 VBAエディタで開いて、実行(f5)すると実行できます。 どうしたら元に戻るか、どなたかわかる方、お願いします。  ・元に戻る…「Excelのシート上からボタンをクリックするだけで実行できるようになる」 1.処理自体は単純でシート上に作成したコマンドボタンをクリックすると   標準モジュールに記述したマクロを実行します。   Sheet1のコード (CommandButton1_Click)      Call [標準モジュールSubの名称]ItiranGet   ※1 VBAのコードを開いた状態で、上記のCall文、標準モジュールで      実行(F5)すると、実行できます。 2.マクロのセキュリティは、下記に設定しています。   すべてのマクロを有効にする よろしくお願いいたします。

  • C#のKeyDownイベント?で

    プログラムやり始めたばかりの初心者です。 電卓を作ってみようとやっているのですが、 一応ボタンを押しては動くようになりました。 キーボードからも入力できるようにKeyDownで設定したのですが 数字キー、+ - * /などは反応するのですがEnterキーだけは フォーカスされてるボタンがクリックされた状態になってしまいます。 どのようにすればよいのでしょうか? プログラムはこんな感じです! private void Form1_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { case Keys.D1: case Keys.NumPad1: this.button_1.Focus(); this.button_1.PerformClick(); break; case Keys.D2: case Keys.NumPad2: this.button_2.Focus(); this.button_2.PerformClick(); break; . . . case Keys.Enter: this.button_kei.Focus(); this.button_kei.PerformClick(); break; }

  • ENTERキー押下でフォームを送信したいのに・・・

    PHPとHTMLでフォームをいくつか作り、画像タイプの送信ボタンを押下すると送信されるようにしています。ところが、IEの場合、ENTERキー押下で送信できる(下記のPHPの制御文がtrueになる)ものと、できないものがあります。ボタンをクリックすればいずれも送信できます。また、FirefoxではどのケースでもEnterキー押下で送信できます。送信ボタンはどのフォームでもひとつです。 何がどういう場合に、IEでEnterで送信できないのでしょうか? ○HTML側 <form...> ... <input type="image" name="submit" ...> </form> ○PHP側 if(isset($_POST['submit_x']) { ... }

    • 締切済み
    • PHP
  • VB(6.0)上でファンクションキーを押下出来ない

    VB(6.0)を使用して開発されたプログラムを改定しています。 画面上にボタンが配置されファンクションキーをF1~F12まで 割り当てています。 その中であるFoamだけF3,F5を押下するとプログラムが 強制終了されてしまいます。 マウスでクリックすると問題なく処理されます。 また別の画面ではF1~F12まで問題なく押下出来ます。 原因が分かりません。コーディングで対応出来るものでしょうか。 ご指導よろしくお願いいたします。

  • 新規レコードへ移動しない

    Access2010を使用しています。 サブフォームからメインフォームの「登録」ボタンプロシージャをCallした時、メイン・サブフォーム共に新規レコードへ移動しなくて困っています。 具体的には、サブフォームにフォーカスがある時に「F12」を押すと画面の入力項目の内容刃そのままでメインフォームの「注文番号」テキストボックスにフォーカスが移動します。 メインフォームにフォーカスがあるか、マウスで「F12」をクリックすると画面の入力項目がクリアされて新規レコードへ移動します。 コードは以下の内容が記述してあります。 ーーーーーサブフォーム----- Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 123 Call Me.Parent.Form_KeyDown(KeyCode, Shift) KeyCode = 0 End Select End Sub -----メインフォーム----- Public Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 123 Call 登録_Click KeyCode = 0 End Select End Sub Private Sub 登録_Click() DoCmd.GoToRecord , , acNewRec Me.注文番号.SetFocus End Sub

専門家に質問してみよう