• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access クリック 挙動 ダブルクリック?)

Accessクリック挙動がダブルクリックに?

このQ&Aのポイント
  • Access勉強中の初心者ですが、ファイルを選択する際にダブルクリックが必要になってしまいました。
  • 以前はシングルクリックでファイルを選択できていたのに、突然ダブルクリックが必要になりました。
  • ワンクリックでファイルを選択したいので、改善策があれば教えていただきたいです。

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

  • ベストアンサー
回答No.2

確認しました。確かに挙動が変ですね。 Access2010 と 2013 で同じ現象でした。 2007 と 2003 では一回のクリックでOKでした。 バグぽっいですね。 Application.FileDialog 以外の方法ならどうだろうかと、API を使う方法を試してみました。 Windows APIを用いてファイルを開く方法:SampleFile078 http://www.accessclub.jp/samplefile/samplefile_78.htm 2013で試してみました。だめでした。 ならば、WIZHOOK を使う方法はどうだろう。試してみました。1回のクリックでOKでした。 getFilePicker関数を下記のように書き換えてください。 Function getFilePicker(Optional dTitle As String = "ファイル選択")   Const ENABLE_WIZHOOK = 51488399   Const DISABLE_WIZHOOK = 0   Dim strFile  As String   Dim intResult As Integer   WizHook.Key = ENABLE_WIZHOOK  ' WizHook 有効化   intResult = WizHook.GetFileName( _           0, "", "dTitle", "", strFile, _           CurrentProject.Path, _           "Text Files(*.csv)|*.csv", _           0, 0, 0, True _           )   WizHook.Key = DISABLE_WIZHOOK  ' WizHook 無効化   getFilePicker = strFile End Function どうでしょうか。 WIZHOOK の詳細は下記参照 [ファイルを開く] ダイアログを表示する方法 | YU-TANG's MS-Access Discovery http://www.f3.dion.ne.jp/~element/msaccess/AcTipsGetFileName.html

buzinesswa
質問者

お礼

詳しく説明していただきありがとうございます。 ソースも変更してみます!!!

buzinesswa
質問者

補足

ご丁寧に返信ありがとうございます!! まだ試してはないのですが、今から試してみます。

その他の回答 (2)

回答No.3

あれから、いろいろ調べてみました。 印刷ダイアログで同様の症状が出ることから、下記の情報を見つけました。 Access2010の印刷について - マイクロソフト コミュニティ http://answers.microsoft.com/ja-jp/office/forum/office_2010-access/access2010%E3%81%AE%E5%8D%B0%E5%88%B7%E3%81%AB/5656c825-f9de-468b-bae6-265f1bb760b6 この最後の MukkuMuku さんの回答によると、IMEを「Microsoft office IME 2010」にしていると発生するようです。 IMEを別のものに変更すれば問題は解消されます。 IMEを「Google 日本語入力」に変更して正常動作するのを確認しました。

buzinesswa
質問者

お礼

ありがとうございます!!!

buzinesswa
質問者

補足

ご返信ありがとうございます。 簡単な方法でしたのですぐ試せそうです。 ありがとうございます!

回答No.1

補足が下記の点について情報を追加してください。 OS、Access のバージョン 下記の部分のVBAのコード 2.ボタンにVBAコードでダイアログを表示 3.ダイアログでファイルを選択 4.『OK』ボタンにてファイルを確定・読み込み

buzinesswa
質問者

補足

大変失礼いたいしました。情報を追加させていただきます。 OS : Windows 7 Access : MS Access 2010 【以下コード】 Private Sub import_Click() Dim msg As String msg = getFilePicker If msg = "" Then Exit Sub On Error GoTo err_sample DoCmd.SetWarnings False DoCmd.TransferText acImportDelim, "定義名", "テーブル名", msg, True DoCmd.SetWarnings True MsgBox "インポートが終了しました。" Exit Sub err_sample: Select Case Err.Number Case 3011 MsgBox "ファイルが見つかりません。処理を終了します。" Case Else MsgBox Err.Number & ":" & Err.Description End Select End Sub Function getFilePicker(Optional dTitle As String = "ファイル選択") Const msoFileDialogFilePicker As Integer = 3 Dim fDlg As Object Set fDlg = Application.FileDialog(msoFileDialogFilePicker) fDlg.Title = dTitle fDlg.InitialFileName = CurrentProject.Path fDlg.AllowMultiSelect = False fDlg.Filters.Clear fDlg.Filters.Add "Text Files", "*.csv" fDlg.FilterIndex = 1 If fDlg.Show Then getFilePicker = fDlg.SelectedItems(1) Else getFilePicker = "" End Function