Skill Note

平凡なエンジニアがメモ代わりにプログラミング, インフラ, ネットワークを書き綴るブログ

Excel VBAでOracleのデータを参照するマスター検索機能を作成する

      2020/01/09

エクセルのVBAでOracleに保存されているマスタを検索する機能を作成する機会がありましたので、サンプルプログラムを記載します。

Oracleへの接続設定

VBAからOracleに接続するにはADOの参照追加とOracle Clientのインストールが必要になります。
詳しくは以前に記載した「VBAからOracleに接続する方法」を参照して各種設定を行ってください。

検索フォームを作成する

Visual Basic Editor(VBE)を起動します。(Alt + F11 キーを押すと起動します)
VBEが起動したら新規のユーザーフォームを追加します。
ツールボックスから検索文字入力用のテキストボックス、明細表示用のリストボックス、検索ボタンを配置し、その他に必要に応じてラベルなどを追加してください。

検索ボタンクリック時の処理

フォーム上の検索ボタンをダブルクリックするとプロシージャが作成されますので、ここにクリック時の処理を記載します。
下記はテキストボックスの文字列に部分一致するデータを表示するサンプルプログラムです。

検索フォームの動作確認

プロシージャの記載が終わったら検索処理が正しく動作するか確認します。
F5キーを押すと検索フォームが起動されますので、検索ボタンを押し、データベースの接続・データの取得ができるか確認します。

検索フォームの表示

標準モジュールを追加して検索フォームを表示するプロシージャを作成します。

あとは、ワークシート上に追加したボタンから作成したプロシージャを呼び出します。

Google AdSense PC

Google AdSense PC

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

microsoft
[Windows]WSUSサーバの構築手順 1/6

Windows 2008 R2サーバにWSUSサーバを構築する Windows Server Update Services(WSUS)とは Windows S …

microsoft
[Windows]VBAからOracleのストアドプロシージャを実行する方法

VBAでOracleのストアドプロシージャを実行する方法について記載します。 VBAからOracleに接続する方法は以前の記事を参考にしてください。 http: …

microsoft
[Windows]Active ReportsでPDF出力時の注意事項

PDF出力時の「LicenseException」対応方法 環境 ActiveReports for .NET 7.0J 言語:C# 設定 Active Rep …

microsoft
[Windows]Windows 7 リモートデスクトップの有効化

Windows 7にリモートデスクトップ接続する 「コントロールパネル」ー「システムとセキュリティ」をクリック 「システム」をクリック   「リモート …

microsoft
[Windows]IISセッションタイムアウト設定

IISのセッションタイムアウトを設定する機会がありましたので、設定手順について記載します。 IIS7にセッションタイムアウトを設定する IISではASP.NET …

microsoft
【パソコン不要】HDDのデータをSSDに丸ごとコピーして交換する方法

近頃はSSDの記憶容量の増加、価格の値下がりが続き、HDDとの容量・価格差も縮まり購入しやすい状況となっています。HDDからSSDに交換することで読込・書込速度 …

microsoft
[Windows]指定サイズのファイルを作成する

ネットワークの通信速度などを調査する場合にサイズの大きなファイルを作成する必要があります。 この記事では「fsutil」コマンドを使用したダミーファイルの作成方 …

microsoft
[Windows]WSUSサーバの構築手順 6/6

Windows 2008 R2サーバにWSUSサーバを構築する クライアントPCがWSUSサーバから更新プログラムをダウンロードするにはグループポリシーを設定す …

microsoft
[Windows]「このリモートコンピューターのIDを識別できません。接続しますか?」の対応方法

警告の原因と対応方法 リモートデスクトップ接続をしたときに表示されるこのメッセージ 「このリモートコンピューターのIDを識別できません。接続しますか?」 「はい …

microsoft
[Windows]ネットワーク一覧にコンピュータ名を表示させない方法

Windowsのエクスプローラでネットワーク上に存在するコンピュータの一覧を表示することができます。 一覧の中には開発機やユーザに公開したくないサーバなども表示 …