• ベストアンサー

EXCELマクロで全シート対象の検索マクロを教えて

EXCELマクロで全シート対象の検索マクロを教えてください。 アプリケーションダウンロードタイプでも自作マクロの どちらでもよいです。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

無力のため、いつもFind、FindNextには苦労するのですが、思い切ってあげてみます。VBAの経験がおありなら、欠点は修正してもらえるかもと思って。 標準モジュールに Sub test01() s = InputBox("検索文字列=") Dim sh As Worksheet For Each sh In ActiveWorkbook.Worksheets Set x = sh.Cells.Find(what:=s) If x Is Nothing Then GoTo p1 MsgBox sh.Name & x.Address b = sh.Name & x.Address sh.Activate x.Activate '--- Do Set y = sh.Cells.FindNext(after:=ActiveCell) If y Is Nothing Then GoTo p1 If sh.Name & y.Address = b Then GoTo p1 MsgBox sh.Name & y.Address y.Activate Loop p1: Next End Sub シート名タブの左側のシートから探していきます。 上記はMggBoxで表示にしてますが、特別セルにセルアドレス値を出すなど適当に修正してください。 少数例でテストしてますが、十分テストしてください。

tabtab9
質問者

お礼

ありがとうございます。 カスタマイズは、させていただけるなら させていただきます。 お忙しいところ、どうもありがとうございました。

その他の回答 (1)

回答No.2

あくまでも、マクロですか。で、あれば、以下は無視してください。 標準機能だけでできます。(Excel2003で確認) ・[編集]-[検索]-[検索]-[検索場所]で「ブック」を選択 ・全シートを選択した後、[編集]-[検索]

tabtab9
質問者

お礼

すみません。 2000です。 今回はマクロで実行してみます。 ありがとうございました。

関連するQ&A

  • Excelマクロ 全シートを対象に色付けするマクロ

    「1枚目のシートのF行にあるデータを上から順番に選択し、同じデータがあれば黄色に塗る」 というマクロを作成しています。 ただし、全シートを検索対象にできなくて困っています。(ちなみにシート数は全20枚ほど) 下記のマクロのままではアクティブのシートしか検索できないため、全シートを検索対象にするためにはどうしたらいいでしょうか? ご回答よろしくお願い致します。 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row With Application.ReplaceFormat.Interior .PatternColorIndex = xlAutomatic .Color = 65535 .TintAndShade = 0 .PatternTintAndShade = 0 End With Cells.Replace What:=Range("F" & i).Value, Replacement:=Range("F" & i).Value, LookAt:= _ xlWhole, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=True Application.CutCopyMode = False End With Next i

  • Excel 2007 マクロ 複数シートの検索

    Excel 2007 マクロ 複数シートの検索 Sheet1とSheetに情報があります。 Sheet1にある番号とSheet2にある番号を 検索して、ヒットした場合 Sheet1の備考の文字をSheet2に備考に反映したいです。 画像にSheet1、Sheet2、完成形があります。 関数であればVlookupを使用しますが、 マクロでできるようにしたいです。 どのようなマクロになりますでしょうか。 アドバイスお願いします。

  • エクセル 複数シート検索のマクロ

    以前、下記の質問をさせてもらい ---- 以下 --------------- エクセルの文字列検索で、複数シートにまたがった場合のマクロ記述を知りたいです。 シートaとシートbの選択は下記となると思いますが、 Sub Macro1() Sheets(Array("a", "b")).Select Sheets("a").Activate End Sub その後で、検索窓([ctrl]+[f])を表示させたいのですが・・・。 ---- 以上 --------------- に対して、以下のご回答を受けたのですが、 Sub TEST01() Sheets(Array("a", "b")).Select Cells.Select Application.Dialogs(xlDialogFormulaFind).Show End Sub うまく行く場合もあるのですが(と思い解決で締め切ってしまいました)、大抵の場合(該当文字列が複数あるとき?)にフリーズしてしまいます。 上記マクロだと、「検索する文字列」タイトルで[次を検索][閉じる][置換]ボタンが表示され(古いOffice?)、 マクロを使用しない通常の[ctrl]+[f]だと、「検索と置換」タイトルで[検索]と[置換]タグが表示されます(Office2003)。 また、マクロを実行した後は通常の[ctrl]+[f]、[編集]-[検索]が効かなくなってしまいます。 この部分はフリーズとは無関係かもしれませんが・・・。 フリーズしないマクロの記述と、出来れば検索終了後に特定のシートに戻るようなマクロも追加したいです。 また、別件になりますが、ファイルを開いた時に必ず特定のシートに位置づけられる事ができればそれもご教授願いたいです。

  • エクセルマクロで検索

    エクセル初心者です。 エクセルで表を作ったのですがその中の計算式で月が変わるたびに参照するワークシートが変わるのでマクロの検索をつかいたいと考えています。 表の横に検索するワークシート名と置き換えするワークシート名をいれるセルをつくりマクロを組んで実行すると置き換えが完了するというようなマクロはできませんか?セル自体を検索置き換えはできるのですがセルの中の文字を指定の仕方がわかりません。 説明がヘタなのでわかりにくいかと思いますがよろしくおねがいします。

  • エクセル 複数シート検索のマクロ

    マクロ初心者です。 エクセルの文字列検索で、複数シートにまたがった場合のマクロ記述を知りたいです。 シートaとシートbの選択は下記となると思いますが、 Sub Macro1() Sheets(Array("a", "b")).Select Sheets("a").Activate End Sub その後で、検索窓([ctrl]+[f])を表示させたいのですが・・・。 よろしくご教示願います。

  • エクセルのマクロで任意のセルを別Sheetで検索したいのですが?・???

    PC初心者で困っています。 エクセルのマクロでSheet1アクティブセル(1)をコピーし、 Sheet2でCTRL+Fで検索ダイアログに(1)を貼り付け、検索する。 マクロを作ってみましたが、 マクロ実行2回目から上手くいきません。これはモジュールで検索ダイアログで貼り付けるところで””に変えても駄目でしたが? どうするか御存知でしたら教えて頂けませんでしょうか? 宜しくお願いいたします。

  • excelでマクロが思うように動きません

    EXCELでのマクロを使った文字列検索についてお尋ねします。 EXCEL2003のシートにフォームボタンを設置し、そのボタンに 以下のマクロを設定しています。 ここから--------------------------------------------- Sub 検索() Cells.Select Application.Dialogs(xlDialogFormulaFind).Show End Sub ここまで--------------------------------------------- ボタンをクリックすると、検索ダイヤログが開き、任意の文字列を 検索できるのですが、別シートまで検索してしまいます。 【希望1】検索対象をアクティブシートのみにしたい。 表示される“検索ダイヤログ”では、以下項目が設定可能ですが、 1.検索する文字列 2.検索方向 3.対象 4.大文字と小文字を区別 5.完全に同一なセルだけを検索 6.半角と全角を区別 【希望2】変更可能な以下の項目を固定(変更できないように)したい。 2.は“列”に固定 3.は“値”に固定 4.5.6.はチェックボックスでon/offできるようになっていますが、  全てoffに固定 【希望3】出来れば検索ダイヤログには1.の“検索する文字列”欄と、 “次を検索”ボタン、“閉じる”ボタンの3つだけを表示したい。 このような希望を満たすマクロは作成可能でしょうか? おわかりの方がいらっしゃいましたら、ご教授ください。 よろしくお願い致します。

  • Excel マクロ

    Excelの自作マクロを送って欲しいと上司に言われたのですが、 どうやって送ればいいのでしょうか? マクロは作業中のシートで保存しました。

  • Excelでシートを保護してもマクロが使えるようにしたい

    Excelのマクロについて、また質問させていただきます。 シートを保護してもマクロが使えるようにしたいのです。  Selection.Validation.Add Type:= _  xlValidateList, AlertStyle:= _  xlvalidalerstop, Operator:= _  xlBetween, Formula1:="=$A$1" というようなマクロを作ったとします。 このままなら使えるのですが シートを保護すると アプリケーション定義またはオブジェクト定義のエラーです。 と表示されるようになります。 前回質問させていただいたときにアドバイスいただいた  Validation.Delete を付けても 状況は変わりません。  Unprotect password や  Protect userinterfaceonly:=True を付けても、やはり無理なのです。 マクロについては まだまだ初心者の域を脱していません。 今回もまた明快なお答えをいただけること 期待しております。

  • 検索の方法(エクセル マクロ)

    マクロは記録マクロしかできない超初心者です。 エクセルのsheet1のA1のセルに入っている内容(都度変更)と同一のセルをsheet2で検索し、カーソルをそこに移動させるマクロ記述をしたいのですが、どうなりますか。 記録マクロで、sheet1のA1をコピーし、sheet2に移動して検索窓で貼り付けて「次を検索」とやったのですが、記述をみるとA1の内容がそのまま記述されていて汎用性が無いようです。 よろしくお願いいたします。

専門家に質問してみよう