• ベストアンサー

エクセルシート検索

現在見積書を1つのブックで大量に作成(年間でシート数が100くらいになります)しており、過去の見積を検索するのに時間がかかって仕方がありません。例えば、シート1に検索ボタンを作り、シート名(見積番号で保存)を入力するとそのシートにジャンプするというような方法ってありますか? あると思うのですが、マクロっていうのが全くわかりません。 誰か助けて下さい。

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

  • ベストアンサー
  • tag1701
  • ベストアンサー率54% (67/123)
回答No.1

下記のページに希望に近いものが記載されています。 見てみてください。 http://vbatips.blog37.fc2.com/blog-entry-9.html

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

その他の回答 (5)

  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.6

>今回は別シートへ移動ですが、別ブックを開くっていうこともできるんでしょうか? これにレスがついて無かったですね。 もちろんできます。 Workbooks.open を調べてみてください。

15honbu
質問者

お礼

ありがとうございます。 ネット検索ですぐに解決できました。 素人なりに、少しは本でも読んで勉強します。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.5

InputBoxを使用してシート名を入力 キャンセル、未入力、誤入力の場合は何も起こりません '標準モジュールへ Sub Macro1() Dim Sh As String On Error Resume Next Sh = Application.InputBox("見積番号を入力してください", "見積シート検索") Worksheets(Sh).Select End Sub マクロの実行の画面で一番下のオプションボタンを押し ショートカットの設定をするか ツールバーにマクロボタンを設置すると使用しやすいかも 参考まで

15honbu
質問者

補足

ありがとうございます。非常に助かりました。 今回は別シートへ移動ですが、別ブックを開くっていうことも できるんでしょうか?

全文を見る
すると、全ての回答が全文表示されます。
  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.4

単純にシート名のところに飛ぶだけなら (1) Option Explicit Sub Sheet_jump() Worksheets(Range("A1").Value).Activate End Sub これでA1に書いてある名前のシートに移動します。 これをボタンかショートカットにすればいいかと また次のコードだと名前の書いてあるセルをダブルクリックすると移動します。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True Worksheets(Target.Value).Activate End Sub (1)の入力方法 Excelの通常画面からAlt+F11 (マクロ用のウインドが開く) 標準モジュールの挿入 そのモジュール内に上記のコードを記入(コピペ)する マクロ用のウインドを閉じる Excelの通常画面からAlt+F8(マクロ選択ウインドが開く) Sheet_jump(マクロの名前)を選び オプションからショートカットキーを登録する(例えばq) 今後はCtrl+qでそのシートに移動するようになります。 (2)の方法 同じようにマクロウインドを開いた後 左の「プロジェクト」の中からシート名(シート1)を選んでダブルクリックします。 同じようにコード入力の画面になるので上記のコードを記入(コピペ) マクロ用のウインドを閉じる 名前の書いてあるセルをダブルクリックするとそこへ移動します どちらにします? また画面に窓をだして入力する方法おありますが... どっちにしてもシート数が100枚というのは尋常じゃないですね。 なんらかの方法を考えないとまたどこかで破綻しそうな気がします。

15honbu
質問者

補足

早速のご回答ありがとうございます。 やっていることは全くはわかりませんが、ジャンプできました。 画面に窓を出す方法も教えて下さい。出来れば、ボタンを 押すと窓が出るなんて最高です。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

例えばシート1のA1セルに次の式を入力して下方にオートフィルドラッグします。この場合には同じブック内(Book1)でシート名が2,3,4、と連続的に変わる場合です。 ="[Book1]Sheet"&ROW(A1)+1&"!A1" もちろん作成するシート名を上のような形式で"[Book1]請求書あ!A1"のように入力してもよいでしょう。 その上でB1セルには=HYPERLINK(A1)と入力して下方にオートフィルドラッグします。 こうしたのちにB列のどれかのセルをクリックすれば該当のシートが即座に表示されます。

全文を見る
すると、全ての回答が全文表示されます。
  • xls88
  • ベストアンサー率56% (669/1189)
回答No.2

シート名のリストを作成 入力規則で、リストからシート名を選択入力できるようにする HYPERLINK関数で、入力されたシートへジャンプ といった仕組みを作ればどうでしょうか。 シート名を書き出すマクロが公開されています。 ワークシートの名前を取得する http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_sheet.html#name 入力規則の使い方は Excel2007(エクセル2007)基本講座:入力規則の使い方【リスト編】 http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html HYPERLINK関数の使い方は 同じブック内のシートにハイパーリンク-HYPERLINK関数 http://www.relief.jp/itnote/archives/000998.php Excel(エクセル)基本講座:ハイパーリンクの関数の使い方 http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/hyper.htm

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

関連するQ&A

  • excelでマクロシートをコピーしたとき

    excelでbook1のsheet1のセルA1に「1」を入力→プリントアウト→A1に「11」を入力→プリントアウト・・・以下「31」まで繰り返し。 というマクロが組んであります。 (ボタンにマクロが登録されています。) このシートをbook2にコピーをしたときに マクロを実行する(ボタンを押す)とbook1が開いてしまいます。 これをbook1を開かずにbook2でマクロを実行するには どのようにしたらよいでしょうか。 book2でマクロを作成し直して さらにボタンにマクロを登録していますが、 bookの数が多いのでけっこうな手間になります。 簡単な方法があれば教えて下さい。

  • エクセル2003 パスワードでシートを振り分ける方法

    エクセル2003をXPで使用しています。 ひとつのブックに全部で11のシートがあります。 ブックを開くときにパスワードを求め、パスワードに応じて 開くシートを振り分けたいと考えています。 たとえば・・・ パスワード「AAA」を入力するとシート1だけが見えて、他は見えない パスワード「BBB」を入力するとシート2だけが見えて、他は見えない ・ ・ ・ パスワード「KKK」を入力するとすべてのシートが見える こんな感じですが、過去ログを見る限りVBAならできそうだと思うのですが、自分なりの改造ができなく、困っています。 うまく説明できないのですが ☆データが入っているシート数は、11。(各シート名はsheet1~sheet11) ☆表紙がわりのシートを別に1つ作る。(シート名はmain) ☆パスはsheet1がAAA、sheet2がBBB、以下つづいてsheet1がKKKとする。 ☆ブックを開くとき、マクロを有効にしないと何も表示されない。 ☆マクロを有効にしてブックを開くと、mainだけが開き、ユーザーフォームが表示。(ユーザーフォームはパスワート入力とOKボタンのみ。) ☆パスワードを入力してOKボタンを押すと、パスワードに応じたシートだけが表示される。 100%他力本願で申し訳ございませんが、この条件を満たすマクロを組めるかた、よろしくお願いします。

  • Excelのシート名で検索はできませんか

    普段ファイル検索にはFileSeeker3を使ってファイル名のみで検索しています。 しかし、いただいたファイルなどでファイル名がわからなくなってしまったファイルの検索で時間を取られてしまうことが多くて悩んでいます。 WindowsやGoogleのデスクトップ検索では、Excelブックのシート上に入力したテキストで検索ができます。 しかし、思い出せるのはシート名程度の場合はどうにもならず、それらしい場所に保存したファイルを1つずつ開いて確認するしかありません。 なにかの外部ツールやマクロを使うなどでシート名での検索はできないものでしょうか。

  • Excelでブックを検索し表示する方法

    Excelで、複数のブックをひとつのフォルダに入れています。 この中のSTRAT.xlsのSheet1に通し番号とファイル名(*.xls)を記入して管理しています。 このSTART.xlsにテキストボックスとボタンを挿入して、管理番号を入力しボタンを押すとSheet1で通し番号(管理番号)と対応したブックが開くマクロを作りたいのですがどうすればいいのでしょうか? いろいろ調べたのですが、ブックやシート内の値の検索方法は、いろいろな方が質問しておられるのですが、私のやりたいことが見当たりません。 初歩的なことで手間取っているのかも知れませんが、ドンドン深みに嵌まってるような気がして書き込みさせていただきました。 ご存知の方、ご教示お願いいたします。

  • エクセルの検索マクロ

    以下のようなマクロを作成しようとしているのですが、なかなかうまくいきません。 どなたかご教授お願いいたします。 ・セル(A,2)に入力されている文字を検索ボタンを押すことで検索する  ※検索ボタンはコマンドボタン ・検索対象は、Book内の全シート ・検索後は、見つかったセルに移動 ・見つからなかった場合は、”ありません”を表示

  • Excelのマクロで検索ボタンを作るには

    Excelでマクロを使ってボタン(検索ボタンみたいなのを作って)を押すと検索ウィンドウが開いて検索できるようにしたいのですがどうすればいいでしょうか? 現在ブックの中に会員登録sheetと当日参加者sheetという風に分けていて当日の参加者一覧は会員登録者の中から会員番号で登録していくという形を作っています。そこで当日参加者の会員番号を抽出する為に当日参加者のsheetを開いている状態で会員登録者sheetの中から名前を検索して会員番号を抽出したいと思っています マクロの登録でCTRL+Fで検索ウィンドウを開いて検索(このときの検索条件はブック全体にしています) すると検索が終わった時点で会員登録sheetに切り替わっているのでsheetを当日参加者に 切り替えてマクロの登録終了にしたのですがマクロの実行を行っても何も起きませんでした。 なにかよい方法はありますでしょうか?教えて下さいm(__)m

  • エクセル関数、シート又はブック間での検索について

    「VLOOKUP 関数」を使用してシート又はブック間で検索し抽出しているのですが、その抽出したものが、そのシートの何行目にあったか、行番号が知りたいのですが、行番号も一緒に抽出する方法(関数)はありますか? 関数やマクロなど全く無知なので、どうかお助けいただきたいと思います。よろしくお願いします!

  • EXCELでの検索マクロを作りたいのですが

    マクロの初心者です。氏名の検索マクロを作成したいのですが分かりません。 A列:名前 B列:郵便番号 C列:住所 と 名前等のデータを(ランダムに)入力したシート1を作成し、 シート2にシート1の「A列:名前」から性(たとえば青木)で検索して検索ボタン(マクロボタン)を押して該当データを表示させるようにしたいのですが。

  • Excel シート検索 VBA

    現在、機器管理としてExcelで管理を行っているのですが、使用履歴等の情報が多い為、機器1台に対して1つのシートを使用しています。 ただ、機器が多くなってきており、現時点でも20シートを使用している状態で、今後も増えていく予定ですので、VBAで対象のシートを探すプログラムを作成して、効率を上げたいと思っております。 ただ、VBAの知識がない為、こちらに質問させて頂きました。 イメージとしては、機器の製造番号を入力して、ボタンを押すと、各シートの製造番号が記載されている指定のセルを検索して、その製造番号のシートにジャンプするプログラムを作りたいと思っています。 VBAに詳しい方、ご教授をお願いいたします。

  • EXCELのシート名を指定してそのシートを開くマクロ、VBA?

    いつもお世話になります。 次々とシートを追加していくブックがあります。 Sheet1にマクロボタンを作成して、例えばSheet1のA1に「5」と入力すればSheet5が、「8」と入力すればSheet8が、開くようにしたいのですがそのようなマクロは可能でしょうか? (シートのハイパーリンクを利用した目次ではありません。) 初心者ですがよろしくお願いします。

専門家に質問してみよう