• 締切済み

エクセルでシートの検索ツールをVBAで作成したい

エクセルでシートの検索方法を教えて欲しいんですが、 ボタンを押す→入力のコメント画面が出てくる→シート名入力する→ 入力されたシートが選択される。→シート名ない場合はエラー VBAのソースを教えて頂きたいです。 初心者なので宜しくお願いします。。

みんなの回答

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

>「3」と入力すると出てくるようにしたいのですが。。。 IF文を下記のように書き換えて見てください。 If InStr(sht.name, name) > 0 Then

mari090882
質問者

お礼

ありがとうございます!!出来ました☆ 初めて質問したもので、しかも VBA初心者なので分からなくって。。。 とても助かりました☆ありがとうございました!!

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

Sub test() Dim name As String Dim sht As Worksheet Dim flg As Boolean name = InputBox("シート名") For Each sht In Worksheets If sht.name = name Then flg = True sht.Activate Exit For End If Next If flg = False Then MsgBox "シート名が違います" End Sub

mari090882
質問者

お礼

またよろしくお願いします☆

mari090882
質問者

補足

ソースありがとうございます! 一応出来たんですが、検索する時にシート名を全て入力しないと エラーになってしまいます。 例えば sheet3 があったとして、 「3」と入力すると出てくるようにしたいのですが。。。 すみませんが教えて下さい!!

関連するQ&A

  • エクセル複数シートの検索とVBA

    エクセルVBA初心者です。 今エクセル2007で、下画像の上段・中段のような売上げシートを ブックの中に複数シート作成しています。 シートは売上げのあった日毎に作成しており、シート名は「1.1」のように日付にしています。 売上日はシートの左上のA1セルに入力しています。 ここでしたい処理なのですが、画像の下段のように検索用の シートを1枚作り、そこに売上内容を入力し、マクロコードを実行すれま、自動的に 該当するデータ(売上内容から支払い方法まで)を表示するコードはあるのでしょうか。 今は手作業で、シートを目視で確認しているので大変になってきました。 よろしくお願いします。

  • Excel シート検索 VBA

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

  • エクセル VBA ユーザーフォームで検索したいのですが

    つい昨日触り始めた大初心者です。。 エクセルシートにて 数値を記した列と、詳細を記した列があります。 ユーザーフォームにて textboxに数値を入力し、ボタンをクリックすると 検索をして、ユーザーフォーム内のlabelに詳細が表示される、といったvbaを書いているのですが、どうにもうまくいきません。 また、textboxに検索範囲にない数値が入力されたときには Labelに「なし」と表示させたいのですが、 エラーが出てしまい、その処理もやはりうまく出来ません。 どなたかご教授いただけますでしょうか。

  • VBAワーク シート名前を付けて作成

    エクセルVBAにて 原紙とゆう名前のワークシートをコピー処理して 入力フォームにテキストボックス1と2があり コピーした原紙とゆうワークシート名から テキストボックス1と2に入力した項目が 合わさってワークシート名に変更する方法はあるのでしょうか? 例)テキストボックス1に 123   テキストボックス2に 456 コマンドボタン1をクリックすることによって ワークシート名が123456となるようにしたいのですが? 宜しくお願いいたします。

  • エクセルVBAでデータ検索について

    顧客情報の管理をしようと思っています。 (マクロ初心者です) エクセルのシートを2つに分けて、1つは顧客情報を入力したり検索したりするシート、もう1つは入力した顧客情報を蓄積するシートです。顧客情報を蓄積シートから検索する時に、顧客番号から検索するのですが、それ以外に検索したい時や番号にローマ字が入っている時はどのようなVBAを組めばよいですか? 今参考書のとおりやっていると、 tmpInt = Sheet("入力").Range("C4").Value でエラーが出てしまいます。 数値しか検索しないようになっているからだというのはわかるのですが、それに変わるマクロがわかりません。 教えてください。 また昨日本屋に行き、このような時に対処できる本を探しましたが見つかりませんでした。何か良いのがあれば教えてください。

  • エクセル2000 他シートで絞り込み検索したい

    【物件名】【住所】【電話番号】【担当者】 1000件が一覧になったデータがSheet1にあります。 そのデータの物件名の一部をSheet2に入力して、その物件名に近いものを絞り込んで、その中から探している物件を選択して、住所・電話番号・担当者 を抽出したいのですが、その方法がわかりません。 ポイントはSheet2に抽出する事と、物件名の一部を入力する事と、入力したら検索ボタンを付ける事です。 ヒントは、入力規則、フィルタオプション、マクロ、VLOOKUP関数だと言っていましたが、全然出来なくて困っています。助けてください・・・(VBAなるものはわかりません)

  • エクセルVBAでファイル・シート名を指定して、現在のブックのシートにコピーしたい

    エクセルVBA独学中の超初心者です。 VBAを利用して以下のことがしたいのですが、わかりません。 助けて下さい。よろしくお願いいたします。 1. ファイルを選択する。 2. 1で選択したファイルから、シート名を選択する 3. 2で選択したシートを現在のブックのSheet1にコピーする

  • エクセルシートでVBAについての質問です。

    VBA初心者です。 エクセルのシート上にコンボボックスを配置してリストを選択すると同じシート上のセルに選択されたリストが表示されるようにしたいのですが、よくわかりません。 コンボボックスのオブジェクト名は名前ボックスに表示される名前でいいのでしょうか? 詳しい方ご教授お願いします。

  • VBAでのエクセルワークシート作成について

    お世話になります。 VBAで、オープンにしているエクセルファイルで、 シートを検索してシート「TEST」(仮名)が見つからなければ 「TEST」名で新規ワークシートを作成する。 尚且つ、「TEST2」のシート(一番後ろにあるシート)の前に 作成したいのです。 何卒、ご教示下さいます様、宜しくお願いします。

  • VBAでの検索抽出が出来るプログラムを作成したいで

    エクセルのsheet2~8のA2~O2までは項目(sheet2~8の項目は全て同じです。)、A3~データが入力されています。 検索し、その結果の行すべてを抽出できるようにしたいのですがどのようにVBAを作成すれば良いでしょうか? 検索条件は文字列で”注文業者名”、”注文番号”2つの項目で両方の項目または片方の項目で、検索ボックスにキーワードを入力し「検索開始」のコマンドボタンを押して検索が出来るようにしたいです。 漠然とした質問で申し訳ありません。 宜しくお願いします。