VBA sample
<EXCEL97>

最終更新日
2009/7/4


ここで紹介している
VBAは、自身の学習の
為に作成したものです。
実務上での使用に際
しては、利用者の責任
の下にご利用ください。


ここで公開されている
VBAサンプルは
フリーソフト扱いであり、
ベクター様が記載されている
基礎知識の基本的な考えに
従った取り扱いを
お願いします。

Excel VBA のPageへ | VBA SampleのPageへ | TopPageへ |

ここで紹介するマクロはソースフリーになっているので、自由に編集・変更が可能です。
      <ご一読下さい。--> フリーソフトの基礎知識 Vector'sPage> 


☆ EXCEL2007での動作確認。こちらから。New


■ Excelで画像検索表示   Excel画像検索表示 説明ページ 
画像のファイル名を検索して、画像表示させます。
この類の画像表示については、いろいろとありますが、 多機能すぎたり、ネットワークフォルダが使えないなどの 制約があり、低機能特化で作ってみました。

図面やレポートなどをJPGで保存し、その時のファイル名を キー(図面番号や検索したい語句をいれる)にすることで、ファイル名を検索・対象画像を絞り、そこから選択して目的の画像を表示させるなどすると、便利です。普通の画像表示も当然できますが・・

                 Ver1.1 2008/6/14 スライドショーもどき追加。
                 Ver1.1a 2009/7/3    XL2007に対応した(互換モードにて)
■ やってみよう!Excelで問題   Excelで問題 説明ページ
 Excelで五択問題や英単語問題などの問題をやってみたくて、作りました。
エクセルの問題集ではありません。でも、問題を用意すれば、可能です。
問題形式は、問題をJPG画像で作成(問題と解答と別々に)するのと、シート上に問題をテキスト入力するのと、2つのタイプを用意しています。
 エクセルVBAなので、フォームの変更も可能です。


■ Excel図書DT移行ツール  tosyo_ikou,lzh Ver1.1 説明ページ
 *図書管理.xlsのデータ移行を行うツールです。従来使用している図書管理.xlsのデータを新らしい図書管理.xlsに複写します。これで、バージョンアップがやりやすくなったのではないかと思います。 また、新規に図書管理.xlsを使われる場合に、サンプルデータを自動でクリアする「初期化処理」も追加しています。 現状使用中の図書管理.xlsを指定すると、データが消えますのでご注意下さい。
 (移行処理では、従来のブックの別名保管を行いますが、初期化処理では行いません。)
 *当移行ブックはVer1.4以上でないと、正常動作しません。それ以前Verの場合は手動
にてデータ移行してくださいませ。

※ 図書管理Ver1.50用です。新ブックは1.50のものを指定して実行してください。
  Ver1.52以上では、移行が完全でない場合があります。

■ Excel図書管理
  注)EXCEL2007でVer2.00を使う場合の注意点
       1)タイトル変更は行わない。行った場合はシート保護解除し、新たにテキストボックス
         等で作り直してください。
       2)終了する場合は、menuシート上の終了ボタンを使ってください。

       3)他のエクセルブックと同時に使用しないでください。

□Ver2.00の使い方・説明はこちら 
    ※画像が多くて、重たいかもしれません。

Ver2.01      Excel図書管理2.01                              Excel図書管理2.01-2007(XL2007専用)
                Xl2007動作確認中(互換モード)に            拡張子xlsm
                見つかったバグ修正。                              1,048,576行。
                行は65535のままです。
Ver2.00d2 Excel図書管理2.00 
                1.52と1.53を統合し、バーコードモード、amazonからの図書情報取得などが使えるようになりました。
                 洗練はされてません(汗 それは貴方の手で(ぇ 予約機能は実装途上です。
        2008/6/3 Ver2.00
                  2008/6/7 Ver2.00c
        ・予約機能を追加。図書管理表のM列は予約可否、貸出可否列に
         なりました。貸出フォームから予約フォームに行く。
         (予約機能を使うかどうか設定可能にした。)
         M列:0又はブランク=貸出・予約OK、1=予約不可、2=貸出不可
        ・図書データ・会員データ入力行取り出しの関数を見直し。
        ・保守・管理で、図書データの更新ができるようになった。
        ・終了ボタンで、menuシートのタイトル名とバージョン名で別名保存するようにした。
         (ファイル名固定)
        ・現在、バーコードリーダーでの図書貸出では、貸出制限なし。
       2008/6/8 Ver2.00d
        ・予約状況リストの出力を追加。保守管理からリスト出力より選ぶ。
         Workシートにピボットテーブルが作成される。
        ・Bコード印刷用シートの体裁を修正。6/9
       2008/6/10 Ver2.00d1
        ・予約受付:キャンセルの定義修正

□EXCEL図書管理で、バーコードリーダーを使う
     <バーコードモードの説明> New

□amazon.co.jpのWEBサービスを利用して、ISBNコードから図書情報をエクセルシートに、 
 取り出すサンプル。  <amazonからタイトルなどを取り出す,x;ls>


Ver1.53 -11B テストバージョン 
 貸与品管理(PC管理など)に切り替えられるよう(ボタン名などですが)しつつ
あります。保守管理〜利用者項目名変更+管理物項目名変更。PC管理などで
対応記録をとるときは、保守管理〜補助処理〜その他記録から行います。

Ver1.52H3  図書管理152H3    説明ページ
      (貸出・返却フォーム上に、返却・貸出ボタンがあります。それぞれ
       各フォームを開きます。また、会員番号・図書番号のみで受け付けられるようフォーム上の
       カーソルの動きを少なくしてみました。思うようにカーソル
       移動が制御できないのが、残念です。保守で返却期間等を利用しないで、
       無にすると、余分なメッセージ等を表示しなくなります。デフォルトは無に
       なっています。〜貸出時の図書検索フォームでの選択値が貸出フォームに
       反映しない件を修正しました。)
    *図書の貸出・返却・蔵書・会員の管理を行います。

Excel図書管理をダウンロードありがとうございます。
当VBAブックは、VBAの勉強の為に作成したのですが、
公開後、多くの方から反響があり、現場でもお使い頂いているようで、
 嬉しい限りです。
 当初の目的がVBAのサンプルでしたので、パスワードは一切掛けていません。 
 機能は、図書を管理する上で必要なものは用意していると思っています。
 図書の登録、貸出処理、返却受付処理、会員管理、貸出・返却のログ記録、図書の検索などが出来ます。
 エクセルVBAで作成していますので、エクセルの行制限の為約6万冊以上は管理できません。 仕様的には9000冊ぐらいを目処にしています。(2万件、3万件となるごとに、検索時間がかかるようになります。)
 まだまだ細かいバグがあるかもしれません。
動作がおかしい場合は、連絡頂けると助かります。
解決できるかどうかは分りませんが、解決に向けて、努力いたします。

会員の管理では、画像の表示もできます。会員番号と同じ番号のjpgを同ディレクトリ下photoディレクトリに保存しておきます。貸出・返却においては、それぞれ会員や図書の検索結果から、対象図 書を選択できます。

 


■ モーターレク・ゼッケン別カウンター  
 *モーターレクを楽しむのに、やはり順位を競いたいものです。でも、草レースなど用の計測システムはなかなかありません(でした?!) そこで、10数年前にBASICで作成し、入力の達人と運営の達人のもと、多少のお役立ちができたと思います。しかし、Windowsの時代となり、以前のBASICが動く(特殊なBasicの為)環境もなくなり、やむなく、そのロジックをエクセルに移し替えてみました。Excel97でのみ動作確認しています。Excel2000でも動作したとの報告があります。

 モーターレク・ゼッケン・カウンタ mrec14.lzh [評価版14] 
以下、3項目の機能追加を行いました。
(1)短冊印刷(競技前)の追加。
(2)短冊印刷(競技後)の追加。
(3)ポイント計算・出力。

(1)MREC2.XLSの「短冊2」シートを印刷します。(プレビュー表示)
   単に、シートの印刷なので、自由に変更することが可能です。
(2)競技後の短冊印刷として、MREC2.XLS:管理表:A14セル値(ヒート1〜3)で対象ヒートを判断し、各ヒートに対応して、MREC1.XLS:RESULT1〜3の各シートを処理対象とします。例:上記A14セル値が「ヒート1」である場合、MREC1.XLSのRESULT1シートを処理対象とします。
   *A14セル値は、全ての文字が全角です。
(3)上記(2)と同様に、対象シートを確定したあと、Topの周回数に対する完走とみなす割合(%)の周回数以上を完走とし、再度順位を計算し、その後ポイント計算を行います。
   *Topの周回数に対する完走とみなす割合(%)は、「計測項目設定」ボタンから入って設定します。この処理を行わない場合は、0(ゼロ)を入力します。
   *この値(%)は、MREC2.XLS:管理表:K18セルで管理されます。
上記すべては、MREC2.XLS:WORKシートに出力されます。保存はされないので、必要な場合は別途手操作で別名保存・他ブックにシート貼り付け等行って下さい。


 mrec.lzh  [評価版13]
 *50位まで順位表示するようにしました。(非推奨(;´_`;)
 *短冊表示ができるようになりました。
 *印刷処理を修正。
 *参加者登録用ブックを用意しました。 [評価版13] 

■ ガントチャート gantt_chart.lzh
 *エクセルでガントチャートが簡単に表示できます。スケジュールをビジュアルに表示します。【特徴】計画・実績を色分けして表示。 内部処理でカレンダー作成を行いますから、いつの年でもOK。開始日と終了日を入力(yyyy/mm/dd形式)してボタンを押すだけでチャート表示。ただ、1日=1セルで作っていますので、1年間のスケジュール表示はできません。年跨ぎの表示は可能です。 サンプル画面

■ 住所分割 住所分割.lzh <--juusyo_bunkatu02.lzh (新)

※いや〜、地名って、いろいろあるんですね。

 *千葉県八日市場市、三重県四日市市、広島県廿日市市市場町、栃木県今市市、千葉県八日市市栄町に対応。

 住所分割.lzh <--juusyo_bunkatu01.lzh  (旧)
 *千葉県市原市田町 東京都新宿区市谷八幡町でも、正しく分割するよう修正。
 *1フィールドの住所データを3フィールド(セル)に分割します。 説明
 

■ 簡単に開く easy_act.lzh Ver1.1
 *オープンしている全ブックの全シート名をコマンドバー上のコンボボックスからアクティブにできるvbaです。複数ブックをオープンして作業している場合、目的のシートを開くのが面倒ですが、これを使えば簡単に目的のシートを開く事ができます。

簡単入力ブック(マクロ) input.lzh
  *エクセルの機能であるデータ〜フォームは一見便利ですが、項目数が多くなると、ウインドウにすべての項目が収まらないとか、自分なりのカスタマイズが効かないなど不便を感じる人にはお役に立つかと思います.入力シートに入力すると、dataシートに行列を入れ替えて貼り付けられます.入力シートで、修正ボタンを押して、dataシートでダブルクリックすると、入力シートに該当行が行列入れ替えられて貼りつきます.修正後、登録ボタンをクリックすると、元の行に貼りつきます.

カレンダー表示マクロ karenda.lzh
 *ふるいBasicの参考書を引っ張り出して,その中にあったカレンダー作成の文をVBAに置き換えてみました。シート上に結果を書き出す処理のみ変更すれば、まだまだ古い(10数年前の)Basic文が動きますね。やはりVBAはBASICでした。(^^;;
 *2003/1:2月末日処理を修正しました。

エクセル上から、電話をかける。(1) denwa.lzh
 *エクセルから他のアプリケーションを起動します。c:\windows\dialer.exeを利用しています。windowsには標準にあると思います.

エクセル上から、電話をかける。(2)(シート上の電話帳を利用します。)
 denwa2.lzh  cdb.lzh(ねじ式さんのクリップボード電話が必要です。)
 *(1)では、dialer.exe内部で電話番号を管理しますが、(2)では、シート上の電話番号を利用して電話をかけます。電話番号をコピーしてクリップボードに格納し、それを利用して、電話をかけます。電話をかけるには、クリップボード電話が必要です。
※リストボックス例もあります。

■JPGやBMPなどの画像ファイルをエクセルシート上に貼り付ける。 gazou.lzh
 *エクセルシート上に画像ファイルを貼り付けます。(挿入〜図〜ファイルから)
貼付けのサイズ(縮小・拡大)指定や何列にきちんと貼り付けるかの指定ができます。3種類があります。だんだんと機能を追加していったので、それぞれの段階のマクロ・フォームを残しています。

重複データを省くサンプルマクロです。
 *2種類を紹介しています。セル毎に順番に調べる方法とピボットテーブルを使用する方法です。 juuhuku.lzh (重複省く.xls) 

商品等などの「もの」を管理するマクロです。
 *仕入・出荷・在庫の処理が行えます。エクセルでデータ-ベース的な業務を行う場合のモデルとして作成してみました。説明  butu_kannri.lzh (202KB)

条件に合った行を削除する例
 *条件に合った行を削除する例です。 del_row.lzh

ドライブ・ディレクトリを指定して、ファイルを開く
 *マクロ中で、ユーザーにファイルを指定させる場合などの処理に参考になると思います。 dir.lzh  ※ドライブの指定ができます。(^^) 

エクセルデータを、フォームを使ってデータの修正や追加を行う例です。
 *例として、住所管理データを扱っています。5項目までのデータ管理であれば、項目名は自由に決められます。汎用性があるので、このまま使用できます。
 こんな画面です。   form_seigyo.lzh

 Excel VBA のPageへ | EXCEL FaqのPageへ | TopPageへ |