ExcelVBAFactory


FrontPage

ここは、ExcelVBA製作所で作られたプログラムなどを格納しておくところです。


マクロ解析サンプル(2009/05/13)

  • 使用方法
    • 本ExcelファイルのSheet1にあるコマンドボタンを押すと、約10秒でマクロが終了します。その間、メッセージ等は出力されません。マクロ実行後、VisualBasicEditor?のイミディエイトウィンドウに、マクロ実行時に通ったプロシージャの開始終了時刻が記されています。

ExcelVBA開発ことはじめ


ひらがな練習アプリケーションの設計メモとモックアップ版


ユーザフォームを使用したExcel画面制御のサンプル(2007/01/25)

  • 注意!!
    • 本Excelファイルを実行するときは、必ず他のExcelファイルを閉じてから実行して下さい。下記「処理途中で本プログラムを止めた場合」で書かれている動作を行うと、最悪の場合他のExcelファイルが保存できない場合があります。
  • 使用方法
    • 本ExcelファイルのSheet1に[フォームを開く]ボタンがあります。そのボタンを押すとユーザフォームが開きます。ユーザフォームの[処理開始]ボタンを押すと、ダミー処理が走り、5秒後に元の画面に戻ります。
  • 仕様
    • ユーザフォームの[処理開始]ボタンを押すと、Excelシートの画面が消え、フォーム内のボタン、テキストボックス、チェックボックスが使用不可になり、5秒間ダミー処理(中身は「5秒待つ」という処理)が走ります。ダミー処理が終了すると元に戻ります。
  • 処理途中で本プログラムを止めた場合
    • 本プログラムは、処理途中で([Ctrl]+[Pause]などで)デバッグモードに入るとExcelシートの画面が隠れたままになります。その際はイミディエイトウインドウにApplication.Visible = Trueと打ち込んで実行するか、何でも良いのでExcelファイルを起動させるとExcel画面が復活します。画面が出ていないのにEXCELが起動していて動作がおかしい場合は、いったん全てのExcelファイルを閉じ、(OSから)タスクマネージャの[プロセス]タブで起動しているイメージ名:EXCEL.EXEのプロセスが存在する場合はプロセスを終了させて下さい。それでもおかしい場合はOSを再起動させて下さい。
  • 制限
    • 特にありません。

シートのセルに入力した時に動くプロシージャのサンプル(2006/12/17)

  • 仕様
    • sheet1の特定の列(C列からZ列)の任意のセルに入力を行うと、入力後にセルの入力内容を判断し、特定の条件(入力内容が「1」から「4」で始まる)で特定の処理(入力内容によりセルに着色する)を行います。
  • 制限
    • sheet1以外のシートは入力をしても本機能は動きません。
  • バグ?
    • X,Y,Z列に同じ入力を行い、次にAA列に同じ入力内容を行うと、本機能が動作する前に前回入力内容と同じ動作をExcelが先に行ってしまいます。回避策は見つかっていません。(ただ、Excelの自動入力に関する設定を外せば回避可能?)