• ベストアンサー

EXCEL VBA でCTRL+Fのダイアログからすべての検索で一覧表

EXCEL VBA でCTRL+Fのダイアログからすべての検索で一覧表示 Application.Dialogs(xlDialogFormulaReplace).Show "置き換え文字", "置き換え文字" までは、こちらのサイトで発見! すべての検索ボタンから一覧表示が可能ですか?

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

Excel2002以降、[検索と置換]ダイアログは仕様が変更されました。 このデフォルトの[検索と置換]ダイアログと Dialogs(xlDialogFormulaFind)は別物なのです。 しかも、Application.Dialogs(xlDialogFormulaFind).Showで [検索]ダイアログを呼び出してしまうと デフォルトの[検索と置換]ダイアログが手動で呼び出せなくなるという バグつきです。 今のところデフォルトの[検索と置換]ダイアログをマクロで呼び出す設定が ありません。 Excel君の機嫌が良いときは Sub try()   'アクティブセルに検索文字を入力しておいて   ActiveCell.Copy   SendKeys "^f^v%i" End Sub これでうまくいくかもしれませんが キーストロークを送るだけなのでどうにも不安定です。 いっその事自分でUserFormを作って処理したほうが近道かもしれません。 ただ私だったらマクロを作るよりも [Ctrl][c][f][v]、[Alt][i]って手操作でやるかも。

3350suchan
質問者

お礼

Sub try()   Worksheets("Sheet1").Range("A1").Select   ActiveCell.Copy   SendKeys "^f^v%i" End Sub と、ユーザーフォームと組み合わせて、自分がほしかったVBAが出来ました。 今回の様にVBAは、必要に応じて使う事で、少しずつマスターしたいと思っています。 キーストロークなので不安定だとの事でしたが、問題なさそうです。 うれしいです! ありがとうございました! 

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excel VBAの組み込みダイアログについて

    ExcelのVBAの組み込みダイアログで、 Application.Dialogs(xlDialogInsertPicture).Show についてですが、ヘルプの組み込みダイアログボックス引数一覧をみると xlDialogInsertPicture file_name、filter_number とあります。 これは、ダイアログボックスの図の挿入で、ファイル名とファイルの種類の引数になると思いますが、 ダイアログボックスの右上に表示される、表示の縮小表示を選択することってできるのでしょうか?また、ファイルの場所の指定ってできるのでしょうか?どなたか、詳しい方いらっしゃいましたら教えてください。よろしくお願いいたします。

  • Ctrl+Fで検索する際のダイアログについて

    Ctrl+Fで検索する際に、これまでは画面の下の方にウィンドウと一体化した検索窓が開いていたのですが、つい先日よりダイアログが立ち上がるようになってしまいました。 ウェブ検索をすることが多いので、毎回「Ctrl+F」でダイアログを出すのが面倒です。そのうえ<次へ>などのクリックをするボタンがダイアログの外にはみ出ていて(一部分しか見えていない)、非常にクリックしづらい状況です。 何とか元のウィンドウと一体化した検索窓に戻す方法はありませんか? そもそもナゼ突然こんなことになってしまったのでしょう…。

  • Excel VBA組み込みダイアログボックス

    Excel2002で、あるセルに入力した文字列をキーワードに、複数のワークシートを検索、検索結果表示を「編集」-「検索」-「すべて検索」をクリックしたように一覧表示したい。 組み込みダイアログボックスを使い、VBAを次のように記述しましたが、表示されるウィンドウに「すべて検索」の表示は無く、「次を検索」しかできません。 組み込みダイアログボックスの引数に何か指定すれば「すべて検索」が可能になるのでしょうか? それとも、組み込みダイアログボックスを使うことが間違っているのでしょうか? よろしくお願いします。 Public Sub Kensaku() '変数の宣言 Dim strKeywords As String Dim vntShar As Variant '検索したい文字列を変数Keywordsに取得 strKeywords = Range("B4").Value '左から2番目、3番目、4番目のワークシートを選択 vntShar = Array(2, 3, 4) Sheets(vntShar).Select '検索ウインドウを開いて検索を実行 Application.Dialogs(xlDialogFormulaFind).Show (strKeywords) End Sub

  • VBAの組み込みダイアログの引数Argについて

    エクセルVBAでの質問です。 エクセルとして名前をつけて保存なら Sub aaa() Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.xls", ARG2:=1 End Sub テキストファイルとして名前をつけて保存なら Sub bbb() Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.txt", ARG2:=3 End Sub CSVファイルとして名前をつけて保存なら Sub ccc() Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.csv", ARG2:=6 End Sub でうまくいきます。 今度は、ファイルを開こうとxlDialogOpenに変えました。 Sub aaa2() Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.xls" ', ARG2:=1 End Sub Sub bbb2() Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.txt", ARG2:=3 End Sub 以上二つはファイル名入りのダイアログは出ました。でもダイアログの画面にはフォルダーしか表示されません。 Sub ccc2() Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.csv", ARG2:=6 End Sub これは実行時エラーになりました。 どうも、Application.Dialogs(xlDialogSaveAs)とApplication.Dialogs(xlDialogOpen)では引数ARG2が違うようです。 Application.Dialogs(xlDialogOpen)でのARG2は何の指定なのでしょうか?またその数値の意味はなんでしょうか?

  • EXCEL2000のVBAで、ディレクトリを指定するダイアログボックスを出したい

    VBA歴日も間もない者です。仕事上でVBAをいろいろいじくっています。 Excel2000VBAで、ディレクトリの指定をできるダイアログ画面はないのでしょうか? ユーザーにディレクトリを入力してもらいたいのですが、方法としては、1)直接手で打ってもらうか、2)ダイアログで指定できるようにするかにしたいのですが、あいにく Application.Dialogs(xlDialogOpen).Show Application.GetOpenFilename で「ファイルを開く」でディレクトリを割り出す方法しか分かりませんでした。 できれば、ディレクトリ指定のダイアログ画面をだしたいのですけど、他に方法があれば教えてください。よろしくお願いします。

  • 「プリンタの設定」ダイアログボックスのプリンタを指定したい。

    Excel VBAにて以下のコードを書き,接続されているプリンタ一覧の表示と設定は出来るのですが、のダイアログに表示されるプリンタを指定した物だけにしたいのです。 Application.Dialogs(xlDialogPrinterSetup).Show ダイアログの組み込み定数「xlDialogPrinterSetup」は引数でプリンタ名を持てる筈なのですが、どう書いてもエラーになってしまいます。 Application.Dialogs(xlDialogPrinterSetup).Show arg1:="プリンタ名" Application.Dialogs(xlDialogPrinterSetup).Show ("プリンタ名") Application.Dialogs(xlDialogPrinterSetup).Show(arg1:="プリンタ名") やりたい事は接続されているマシンの一覧の中から一つのプリンタを選択肢、それだけの設定ダイアログを出したいのです。

  • [Ctrl]+FをVBAで表現

    EXCELで、[Ctrl]+Fを押すと、[検索]の画面がでてきます。 ”[Ctrl]+Fを押して、[検索]の画面を出力させる”ということを VBAで書くことはできるのでしょうか? 現在EXCEL2000を使っています。

  • Excel VBA xlDialogSort引数リストの使い方

    いつもお世話になっております。 Excel VBA の使い方で困っていますので、どちらかご教授いただけると幸いです。 状況: 手動で並べ替えセル範囲を選択後、ボタンを押すと、 Application.Dialogs(xlDialogSort).Show を実行して、Excel組込み(標準)の並べ替えダイアログを表示させて、並べ替機能を利用したいのですが、この並べ替えダイアログの「範囲の先頭行」の指定が自動で「データ」となってしまい、困っています。 正しくは、常時「タイトル行」を指定したいと思っています。 そこで、VBAのヘルプを調べて、引数リストなるものを見つけましたが、使い方が判らなくて困っています。 (引数リスト) xlDialogSort orientation、key1、order1、key2、order2、key3、order3、header、custom、case (質問) Application.Dialogs(xlDialogSort).Show に、上記引数リストのいずれかを加えて、並べ替えダイアログでは常に「タイトル行」が選択されるようには、どうしたらよいのでしょうか?

  • EXCEL・VBAでの検索ダイアログのクリア

    一番目のマクロで Application.SendKeys ("^f") として検索ダイアログを表示し、 マクロ終了後、手動で検索ダイアログを利用した後、 二番目のマクロの頭で、表示中の検索ダイアログを消そうとして Application.SendKeys "{ESCAPE}" と記述しました。しかしダイアログは消えず、マクロも進みません。 検索ダイアログの消し方を教えていただけないですか。 ================================================

  • エクセルVBA 組み込みダイアログのコンパイルエラーについて

    ファイル保存のための組み込みダイアログでデフォルトの名前を指定したい場合、 Application.Dialogs(xlDialogSaveAs).Show 'ARG1:="あたらしいファイル", ARG2:=1) でOKなのですが、 キャンセルボタンを押された場合の処理をするため Dim boCheck As Boolean boCheck = Application.Dialogs(xlDialogSaveAs).Show 'ARG1:="あたらしいファイル", ARG2:=1) If boCheck = False Then キャンセルの場合の処理 Else そうでない場合の処理 End if とするとコンパイルエラーになります。 どこが悪いのでしょうか?