Excelについての質問です。


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

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

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

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

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

環境は、Excel2000です。

回答の条件
  • 1人2回まで
  • 登録:2006/08/29 15:36:07
  • 終了:2006/08/31 09:31:27

回答(3件)

id:RandD No.1

RandD回答回数167ベストアンサー獲得回数52006/08/29 15:54:55

Sub EditFind()

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

End Sub

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

id:nyankochan

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

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

きゃづみぃ回答回数13539ベストアンサー獲得回数11982006/08/29 15:57:26

ポイント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

kimoto-antena回答回数25ベストアンサー獲得回数02006/08/29 16:12:09

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

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

Sub 検索()

Cells.Select

Application.Dialogs(xlDialogFormulaFind).Show

End Sub

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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません