ExcelVBA【実践】データベースのデータ検索を簡単に!オリジナルの検索ボックスを作成!【解説】
▼動画を見ながら実践できるようにコンテンツを配布中
it-yobi.com/excel-p-no57/?link=4
【おすすめの参考書】
it-yobi.com/office-excel/#doc...
VBAでフィルターを操作する方法について
• ExcelVBA【実践】ボタン1つで並び順を...
+---------------------------+
■IT予備メンバー募集
+---------------------------+
勉強を継続するためのサポートを行います。
その中には、動画内の作品の配布や質問し放題などを用意しています。
▼詳しくはこちら▼
it-yobi.com/member/
+---------------------------+
■目次
+---------------------------+
00:00 挨拶
00:09 完成イメージ
01:05 準備
01:28 アルゴリズム
01:56 作成(立ち上げ関数)
02:22 作成(ユーザーフォーム)
06:56 作成(立ち上げ関数)
07:28 作成(検索関数)
14:52 作成(ボタン)
15:37 完成
16:57 プログラムの全体
19:01 まとめ
+---------------------------+
■マンツーマンの講座(基礎から業務改善まで)
+---------------------------+
基本的な使い方から、業務相談、開発サポートまで行っています。
【Excel】基本操作からVBAまで
www.street-academy.com/myclas...
【Googleスプレッドシート】基本操作からGASまで
www.street-academy.com/myclas...
+---------------------------+
■開発依頼・相談・その他の仕事の連絡はこちら
+---------------------------+
気になることがあれば、ご連絡ください。
word07q@gmail.com
+---------------------------+
■再生リストはこちら(Excel・Googleスプレッドシート・Pythonなど)
+---------------------------+
タスク管理表やカレンダーなど細かくまとめています。
/ @chanryo_eff
+---------------------------+
■SNS
+---------------------------+
TwitterではKZreadでは発信していない小技などを定期的に配信しています。
【Twitter】効率化の小技を発信
/ chanryo_eff
【Instagram】作品を発信
/ chanryo_eff
【TikTok】Shorts動画を発信
/ program_chanryo
#IT予備にてファイル配布中
Пікірлер: 88
【配布あり】こちらでExcel講座をまとめています! it-yobi.com/course/?pageNo=1&orderNo=2&categoryNo=10&link=4 ●---Excel【基礎】---● Excelを始めるにあたり、必要な知識をまとめています! 詳しくは再生リストにて! kzread.info/head/PLuUrleRMhKDc1thXw-EmZAU34vhLrKnm3 ●---Excel【実践】---● 実際に開発しながら解説しています! 詳しくは再生リストにて! kzread.info/head/PLuUrleRMhKDf4BrAPNt5lfJ7bGCcgCQUw ●---Excelその他---● 他にもデータベースなど再生リストを用意! kzread.info/dron/y5cpoeTKqZ2cDzWX8NB3Gg.htmlplaylists ●---Googleスプレッドシート【基礎】---● Googleスプレッドシートを始めるにあたり、必要な知識をまとめています! 詳しくは再生リストにて! kzread.info/head/PLuUrleRMhKDe5kCiV88fRUuxsMvZ5asJC 00:00 挨拶 00:09 完成イメージ 01:05 準備 01:28 アルゴリズム 01:56 作成(立ち上げ関数) 02:22 作成(ユーザーフォーム) 06:56 作成(立ち上げ関数) 07:28 作成(検索関数) 14:52 作成(ボタン) 15:37 完成 16:57 プログラムの全体 19:01 まとめ
先生今回もいい勉強になりました!ありがとうございます!
この動画を参考にして住所から郵便番号を曖昧検索できるツールを作成しました。初めてVBAを作ったので苦労しましたが満足できる動作をしています。ありがとうございました。
@chanryo_eff
3 жыл бұрын
こちらそこ参考にしていただきありがとうございます!😊
目の覚めるような感じだった。本当にためになる。
@chanryo_eff
2 жыл бұрын
嬉しいお言葉、ありがとうございます!😆
実際に作ってみました。凄く使いやすいです、ありがとうございます!
@chanryo_eff
Жыл бұрын
実践いただきありがとうございます!! また嬉しいコメントありがとうございます😊
すごくわかりやすかったです! ありがとうございます!
@chanryo_eff
Жыл бұрын
ありがとうございます😆
列が多いシートの右のほうの途中でフィルタかける時いつも不便だと思ってましたが、良く使う列で作成してみたら楽になりました!ありがとうございます♪
@chanryo_eff
3 жыл бұрын
たしかに、そのような時に便利ですね!! そこまで頭が回ってませんでした😅 逆に勉強になりました!! ありがとうございます!😊
この後作成しますがとりあえずわかりやすい❗
@chanryo_eff
2 жыл бұрын
ありがとうございます!😆
わかりやすい映像および解説で大変たすかりました。動画を再生して、止めて、まねして入力して また再生して・・・をくりかえし、思うように動くものがつくれました。扱うファイルは日々更新され、行が増え続けるのですが、この場合オートフィルタをやりなおししないと、フィルタがうまく機能しなかったのですが、この動画の方法であれば、うまくいきそうです。
@chanryo_eff
2 жыл бұрын
こちらこそ見ていただきありがとうございます!! 行が増える場合の対策として、テーブルにするのも1つの手になります😄 (Ctrl+T) 何か要望など出てきましたら、 参考にしたいと思います!😊
これ便利ですね!
@chanryo_eff
3 жыл бұрын
ありがとうございます!!
これは便利!
@chanryo_eff
3 жыл бұрын
ありがとうございます!😊
VBAプログラムを組んで2年目の私が、自分で言うのもおこがましいのですが、レベルがちょうどいい! 分からないところをズバッと的中させ、具体的な例を挙げてわかりやすく説明してくれてありがとう(^_^);
@chanryo_eff
3 жыл бұрын
ありがとうございます!😂
はじめまして、草加に住む社会人です。 マクロを使っての検索ツールは知りたい内容なので興味があり動画を閲覧させて頂きました。 解りやすい解説ありがとう御座います。
@chanryo_eff
3 жыл бұрын
ありがとうございます!!😄 そう言っていただけると本当にやりがいになります!😂
@keid419
3 жыл бұрын
動画を私のSNSでシェアさせて頂きたいのですが、よろしいでしょうか?
@chanryo_eff
3 жыл бұрын
はい!問題ございません😊
初心者です。 同じように作っても全く上手く作動しなかったのでIT予備メンバーに入会しました。 宜しくお願い致します。
@chanryo_eff
Жыл бұрын
プログラミングは少しでも構文が違うとエラーになってしまうので難しいですよね💦 またメンバー登録ありがとうございます! 是非ダウンロードでご確認ください😆
@kickboxer_eiji0519
Жыл бұрын
お世話になります。 質問があり会員ページに質問した所、Bプランのみが個別に質問出来ます。Bプランに加入するか、該当のKZread番組のコメント欄に・・・ということでこちらに書かせて頂きます。 こちらのプログラムと同じ内容で検索ツールを作成しました。 当初はKINGSOFTでも正常稼働しましたがいつの間にかKINGSOFTで開くとマクロ・・・立ち上がりが見つかりませんでした。となります。 Excelで開くと正常稼働します。 何が原因か分かりましたら教えて頂けますでしょうか?
@chanryo_eff
Жыл бұрын
@@kickboxer_eiji0519 ご連絡ありがとうございます。 KINGSOF自体使ったことがないのでわかりかねます💦 また、その問題はKINGSOF自体のものかと思われますので、KINGSOFへの問い合わせが良いかとは思いますが、そもそも互換ソフトなので、解決できない可能性もあります🙇♂
ちゃんりょうさん、この動画1ヶ月前に出してほしかったー。。。(泣) 自分で、ほぼ動作同じのコード作りましたよ。。。悩みながら!!!(泣) こんなに簡素なコードで動くなんて信じられない。。。。 また、コード送るので、一度、チェックしてほしいです。
@chanryo_eff
3 жыл бұрын
つとじぃさん ありがとうございます!! そう言っていただけて嬉しいです!!!😊 コードの件、承知しました!!
こういう動画探してました!!質問ですが、同じ項目・並びで複数シートがある場合、動画のように一つの検索ボックスでまとめて検索結果を出す方法もお願いしたいです!
@chanryo_eff
Жыл бұрын
コメントありがとうございます! 検討してみますね。
分かりやすいご説明すごく助かります🙇♂️ ひとつ質問があります。 検索欄に2つのキーワードを入力することは可能でしょうか? 例えば、「恋」と「彼氏」の2つのキーワードに半角を入れて検索すればその2つのキーワードが表示されるのでしょうか?🙏
@chanryo_eff
3 жыл бұрын
コメントありがとうございます! このままだと、ひとつの項目に対する2つ条件の検索は実装されていないので実現できません💦 もし実装する場合は、 プログラムにてOR条件で検索できるようにしてあげる必要があります。 例: .AutoFilter Field:=検索項目番号, _ Criteria1:=条件1, _ Operator:=xlOr, _ Criteria2:=条件2 このように修正して、 条件1は、もともとのままで、 条件2用のテキストボックスを加えてあげる もしくは、 半角スペースか何かを基準に分割(Split関数)して割り当てる などの対応が必要かと思います🙇♂️
@daigoroom7491
3 жыл бұрын
@@chanryo_eff そうなんですね! ちょこちょこいじって見ます😊 お忙しい中すみません🙇♂️ そして、ありがとうございます!😊
@chanryo_eff
3 жыл бұрын
また不明点があれば連絡ください😊
@kiyomorimail
Жыл бұрын
@@chanryo_eff ちゃんりょうさん、こんにちは! 検索ボックスの設定のマクロを真似して自分のデータに検索ボックスを設置しました。 何度も試行錯誤しながら、動画のKZreadを止めたり動かしたりしながらでしたから、かなり苦戦しましたが、ほぼお教えいただいた仕様の検索ボックスが出来ました。 検索項目を15個も作ったので、まともに動いたときは感激しました。 ありがとうございます。 元のデータは2450件もあるので、これまではオートフィルターで条件を設定していましたが、列を一つずつしか指定できないので、列をまたいだ複合した条件を一度に設定できる「検索ボックス」はユーザーから大好評です。 使い始めると欲が出るもので、ある利用者から「複数の条件で検索できたらもっと使いやすくなる」との要望が出ています。 自分でやってみようとしましたが、VBAは全くの素人で昨夜からあちこちのHPで調べてみましたが、なかなか理解できず、 今朝になってちゃんりょうさんが同じような要望を出されたユーザー(@daigoroom74911 年前)に対するちゃんりょうさんの回答で、"Criterial"、"Operator"、"xlOr"を組み合わせれば、or条件で複数のキーの抽出が可能だと書かれておられるのを見つけました。 このコメントをヒントに自分で作れれば亞よいのですが、コマンドが判っても具体的にどのように記述すればよいのか、VBAを使いこなせていない現状では敷居が高すぎます。 複数キーワードで検索ボックスを作る具体例を公開していただけないでしょうか? 検索ボックスの入れる文字は数文字なので、複数キーを入れる方法は現在の項目別の入力ボックスの右にもうひとつ入力ボックスを追加したいと思っています。 よろしくご検討ください。 きよもり
ためになります 本当にありがたいです これにシート保護をかけたいですけど 無理なんでしょうか?
@chanryo_eff
2 жыл бұрын
ありがとうございます! シートを保護していると実行できないので、やるとしたらプログラム内容を、「保護の解除 → メインの内容 → 保護」というような構成にする必要があるかもです💦 ▼こちらが参考になるかもです🙇♂️ kzread.info/dash/bejne/oJlp1NmQcbu3gsY.html
わかりやすい動画をありがとうございます。 同じように作ったつもりなのですが、うまくいきません。文字が含まれている検索は問題なくピックアップできるのですが、数字だとピックアップせずに何も表示されなくなってしまいます。 動画を見返してもいまいち原因がわからないので「これかな?」て思う原因があれば教えてほしいです。
@chanryo_eff
2 жыл бұрын
コメントありがとうございます! 数字だと検索できないということでしょうか? 「○○を含む」検索がもともと文字列専用で数字には使用できないのが原因です💦 数字を適応した場合は、数字全体を書式「文字列」にして、数字から文字列に入力し直すと検索できると思います!
@user-bq5sr4bn3h
2 жыл бұрын
無事にできました!ありがとうございます。
VBAをやりはじめたものでいくつか疑問点があるのですが、 ①検索システムの中でリストボックスやチェッ クボックスを含むSUUMOみたいなものを作るときに参考にしたら良い動画や方法等あれば教えて頂きたいです。 ②また、検索条件の中で完全一致ではなくあいまい検索をしたい場合につきましても教えていただけたらと思います。 ざっくりとしていると思いますがよろしくお願いします。
@chanryo_eff
2 жыл бұрын
コメントありがとうございます! ① チェックボックスについてはまだ動画にしていませんね💦SUMMOみたいなものの解説動画を検討してみます! →リストボックスの参考 kzread.info/dash/bejne/pWWDw6ZuiLXgo6g.html ② こちらの動画で「あいまい検索」をしていると思うのですが、理想と異なりますでしょうか? フィルター以外での「あいまい検索」は「Like」という演算子を使います!
いつも勉強させていただいています。 今回の検索ボックスを業務に取り入れ、データ検索ができるようになり完成したと思ったのですが………。 データベースの範囲をテーブルにしていて、項目を必要に応じて都度追加していっていたところ、 追加した項目を検索しても表示されない現象で困っていました。 しかし、このコメントを書いている途中で「きもきもきもすけ」さんの質問への回答を見つけ、全て解決しました。 これからも、業務の参考になる動画を楽しみにしています。
@chanryo_eff
2 жыл бұрын
いつもありがとうございます😆 無事解決してよかったです!!
検索結果を1行だけじゃなくて4行で表示できたりするのかなぁ?
はじめましていつも勉強させて頂きいてます。 シート1.2.3.から の検索方法は何かありますか?
@chanryo_eff
2 жыл бұрын
複数のシートから検索ということでしょうか? 今回のはフィルターを自動化しているだけですので、別シートの内容はこのままですとできかねます😂 検索のプログラム内の参照場所を別シートに変更したり、複数のシートで順番に適応するようにFor文で繰り返したりすると実現できるかと思います! また僕の他の動画で、別シートの内容を検索するものもあるので、再生リストの「データベース」を確認していただいて参考になればと思います!
@user-eb1vf7ru4o
2 жыл бұрын
返信ありがとうございます 丁寧に感激です。 背景させて頂きます
@chanryo_eff
2 жыл бұрын
ありがとうございます! また不明点があればよろしくお願いします😄
すごく参考になりました! ありがとうございます。 一点質問があります。 検索を押して再度ユーザフォームを開いた時、前に入力した内容を出したいです。 色々調べて試みているのですがうまくいかないのですがどうしたらいいでしょうか?
@chanryo_eff
7 ай бұрын
コメントありがとうございます! 検索内容を残す場合は、静的変数を活用するのが良いかと思います。 静的変数についてはこちらの動画が参考になるかと思います! it-yobi.com/excel-b-no4-25/?link=4
@user-kn7br5dy7m
5 ай бұрын
ありがとうございます! 助かりました!
とてもわかりやすい動画で、見ながら目的の検索BOXを作成することが出来ました。 1つ質問させてください。 1つのテキストBOXの検索ワードに対して、2つの列の検索をさせることは可能でしょうか? 2つの列には重複している文字はないので、1つの列を検索したあとに、無ければ全件表示にして次の列を検索する とかにすれば、できそうな気がしたのですが、どのように書いたらいいのかわかりません。。 ご教示いただけると嬉しいです。
@chanryo_eff
2 жыл бұрын
コメントありがとうございます! A 1 B 2 C 3 という表があって、Aと2で検索したら、 A 1 B 2 を抽出したいというイメージでしょうか? 本来のフィルターの機能だけだと難しそうですが、一列目検索した段階でヒットしたものを、どこかの列(仮でA列とした場合)に●と入力するようにする。 次に二列目を検索し、ヒットしたものを、同じく●と入力する そして、最後にA列に●が含まれている場所を抽出する というようなプログラムに変更すれば実現はできるかもですね!
@fuminomomose4881
2 жыл бұрын
返答ありがとうございます。ちょっと考えてみます。またわからなかったら質問させてください。
自分で作ったユーザーホームに、HPから画像を表示させる事は出来るのでしょうか?
@chanryo_eff
2 жыл бұрын
WebBrowserコントロールでできるみたいです!
2日前に初めてVBAをやり始めまして、検索ボックスを作成しようと、以下のように入力したのですが、【コンパイルエラー 修正候補:ステートメントの最後】と表示されて、最後の"✳︎"のところに色がついてしまいます。 sub 検索() If 患者.name1.Text〈〉""Then Range ("A5"),AutoFilter3,"✳︎"&患者.name1.Text"✳︎" Else Range("A5").AutoFilter3 End If ※A5が表の1番左端で、3列目に氏名(name1)になるので、このようにしたのですが、うまくいきません。 ここ以外の登録が間違っているのかもしれませんが。
@chanryo_eff
2 жыл бұрын
「,」と「.」や半角スペースと全角スペース、 半角文字と全角文字、「&」マークのつけ忘れとかではないでしょうか😅 送っていただいた内容がそのままだとしたら、 初めのAutoFilter3の後が「,」になっているのと、.Textの後に「&」がありません。
こちらの動画を参考にさせていただき、マクロを組ませていただきました 一部変更し、検索項目を・日付、・社員氏名、・所属番号(①~④)にして検索ボックスを作成しています 質問なんですが 1.textbox1とtextbox2の2つを用意して日付を1/1~1/9までに該当する社員を検索するようにするにはどのようにVBAを記述すればよいのか 2.日付で該当させた上で、なおかつ所属番号(①~④)の①~②に該当する社員、③~④に該当する社員を検索するようにするにはどのように記述すればよいのか ご教示いただけないでしょうか?
@user-pr5mw5lm2b
Жыл бұрын
すみません、追記なんですが1のtextbox1のみに日付を入力した場合はその日付のみ検索することも可能でしたら教えてください
@chanryo_eff
Жыл бұрын
コメントありがとうございます。 日付に関してはこちらが参考になります! kzread.info/dash/bejne/jJ-Yw5presydmNY.html VBAでのフィルター操作を覚えるとイメージができるかと思います!
@user-pr5mw5lm2b
Жыл бұрын
@@chanryo_eff 返信ありがとうございます 参考にしてみて解決しないようであればまた質問させてください
動画為になります! 検索した結果のリセットボタンみたいに作りないときの参考になる動画ありますか?
@chanryo_eff
5 ай бұрын
ありがとうございます! フィルターのリセットは、「Worksheets("シート名").ShowAllData」だけで行えます。 こちらの処理をボタンなどに割り当てると良いかもです!
@nolittle6373
5 ай бұрын
お早い返信ありがとうございます。 出来ました! がしかし、実行時エラー1004出たり出なかったり💧頑張ってみます🦾
SUB検索の部分で、1番最初のELSEのところでエラーが出てきちゃいます。 オブジェクトは、このプロパティまたはメゾッドをサポートしていません。と表示されてしまいます。 どうすればうまくいきますか?
@chanryo_eff
Жыл бұрын
Windowsの環境であれば、同じ内容なら実現できるはずですので、入力ミスがないか確認する必要があります💦
最後まで入力し実行するとsub 検索()が黄色くなり、その下のtext部分がチェックされ、メソッドまたはデータメンバーが見つかりませんとなりました。何度もチェックして打ち間違いはないと思うのですが…。
@chanryo_eff
Жыл бұрын
「メソッドまたはデータメンバーが見つかりません。」という内容がどのような時に起こるのかを調べられるとわかるかと思います。 ※動画の作成手順に沿って作成した場合はそのようなエラーは起こらないはずです…
VBA最近始めました。フィルター抽出したい元データが数値のみの場合、その数値を”含み”で検索する為にはどうすればいいんでしょうか?試したのですが、文字を含んだ数値のみ抽出されて、数値だけのデータは抽出できません。
@chanryo_eff
6 ай бұрын
文字と数値は、同じ値でもデータの種類が異なります。 ○○を含むという条件は、通常、文字に適用する条件ですので、数値には使用できません。 そのため、数値に関しても表示形式を「文字列」にして文字として扱うのが一番簡単な解決策かと思います。 数値のままで実現しようと思えばできますが、単純ではないため、少し複雑なアルゴリズムを自力で考える必要があります。
@shintazz567
6 ай бұрын
@@chanryo_eff ありがとうございます。文字列として表示して出来ました。 また他の動画にもお邪魔させて頂きます。
検索から特定のシートにコピー&ペースト出来ませんか?
@chanryo_eff
3 жыл бұрын
すいません💦 ちょっとイメージがわかないので、もう少し詳しく教えてください!😄
@taktak4096
3 жыл бұрын
言葉足らずで恐れ入ります。 Sheet1 の10行に1~10までナンバリングして、Sheet2に大量にある商品を検索して 検索Boxでリンゴと検索するとsheet1の1行目にリンゴしたのちに、続けて検索ボックスでメロンを検索したのちに2行目に登録したいのですが、現在1行目のリンゴの登録しかできません。
@chanryo_eff
3 жыл бұрын
検索ボックスに入力した内容を登録するとはどういうことでしょうか🙇♂️
4桁の数字の場合検索できないのですが何か理由がありますか?
@shintazz567
6 ай бұрын
これ自分も最近やってみてぶつかった壁。数字に一文字だけでも加えると大丈夫みたいなんで、数値と文字列の認識なのかな?
Private Sub search_Click() End Sub の上に Private Sub TextBox5_Change() End Sub Private Sub Label1_Click() End Sub Private Sub Label3_Click() End Sub と出ているのですがこれは、無視していいのでしょうか?
@chanryo_eff
2 жыл бұрын
これは作成した「それぞれの要素」になります。 クリックしたときにでも作られてしまったものだと思うので、不要なら削除しても問題ありません!
@user-wu3gu5nk3g
2 жыл бұрын
@@chanryo_eff ありがとうございます。 あと数字で検索しても表示されないのですがどうすればいいでしょうか? 感じ的には、従業員No欄に近いです。
@chanryo_eff
2 жыл бұрын
中身を見ていないのでなんとも言えませんが、数字と文字列は別の文字になります。 「1」と「1」でも数字なのか文字列なのかによって全く同じものに見えても違うものとされます。 対処する方法としたら、検索をする際に、文字列に変換してから検索をかけると解決するかと思います!
◎データベースの作成 開発タブ ぷ立ち上げ