Excelについての質問です。


VBAで以下のようにマクロ設定して検索ダイアログを表示しました。
Sub 検索()
Application.Dialogs(xlDialogFormulaFind).Show
End Sub

しかし、シートに設置したフォームボタンにマクロを設定して、
検索ダイアログを呼び出したところ、正常に検索が行われません。

Excelのメニューの編集から選べる検索(呼び出したのと同じ物)では
正常に動作していたので、なぜマクロから呼び出したものではダメなのか
わかりません。

おそらく、検索するべきシートが正常に認識されていないのだと思います。
この場合、どうしたらよいのでしょうか?

試しに、Activesheet. とかも付けてみましたがダメでした。
メニュー項目は全て隠してしまう仕様にしたいのでどうしてもボタン
から呼び出す必要があります。

環境は、Excel2000です。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2006/08/31 09:31:27
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:RandD No.1

回答回数167ベストアンサー獲得回数5

Sub EditFind()

Application.Dialogs(xlDialogFormulaFind).Show , 2, , 2

End Sub

こちらはいかがでしょうか

id:nyankochan

できませんでした、残念....

2006/08/29 17:48:00
id:taknt No.2

回答回数13539ベストアンサー獲得回数1198

ポイント80pt

Cells.Select

を前に入れて 全セルを選択した状態にしてから検索するのは いいでしょうか?

Sub 検索()

Cells.Select

Application.Dialogs(xlDialogFormulaFind).Show

End Sub

id:nyankochan

全て選択状態でならできるのですね。

試しにRange("B4").Selectとしてみたら

これはダメみたいですね。

やはり、全選択させてその中を検索範囲にするしかないのでしょうか。

ただ、検索させる文字の場所が周りが反転しているので解り易くていいなと思わされました。

全選択以外での方法が出なければ、この方法を利用させていただきます。

2006/08/29 17:47:57
id:kimoto-antena No.3

回答回数25ベストアンサー獲得回数0

セルを指定していないので検索されないのでは。

次のようにすればいかが。

Sub 検索()

Cells.Select

Application.Dialogs(xlDialogFormulaFind).Show

End Sub

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません