ExcelマクロVBA入門
第57回.Applicationのプロパティ

Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説
最終更新日:2018-01-27

第57回.Applicationのプロパティ


Applicationは、Excel全体をあらわすオブジェクトです


つまり、エクセルそのものだと考えて下さい。

ここでは、そのプロパティの一部を紹介します。

ほんの一部です。

Applicationは、Excel全体をあらわすオブジェクトなのですから、

このオブジェクトを説明すると言う事は、Excel全てを説明する事になってしまいますので。

WorkbooksもApplicationのプロパティですが、

Applicationを明示して書く事はありませんので、意識する必要はありません。

また、

当然、メソッドもあります。

しかし、Applicationのメソッドは、その使い方が難しいものが多いので、

今後、個別に紹介します。


Applicationオブジェクトに含まれるプロパティ・メソッドは、非常にたくさんあります。

Applicationのプロパティ、メソッド、イベントの一覧
エクセルそのものであるApplicationオブジェクトのプロパティメソッドイベントの一覧です。覚えるというより必要に応じて調べて使うものになります。Applicationオブジェクトのプロパティ一覧 名前 説明 ActiveCell 最前面に表示されているアクティブウィンドウ(一番手前のウィンドウ)または指定されたウィンドウでのアクティブセルを表すRa…

ごく一部、良く使うものを以下に紹介します。


Applicationのプロパティ



プロパティ 説明
Calculation 計算方法のモード、自動・手動の切り替え
Caller Visual Basic を呼び出した方法についての情報
Cursor ポインターの形状を設定
Dialogs すべての組み込みダイアログ ボックス
DisplayAlerts マクロの実行中に特定の警告やメッセージの表示を制御
EnableEvents 指定されたオブジェクトに対してイベントの発生を制御
FileDialog ファイル ダイアログ
Interactive キーボードやマウスからの入力を受け付けるかどうか制御
ScreenUpdating マクロの実行中に画面表示の更新を制御
StatusBar ステータス バーの文字列を設定


重要なものから順に説明します。



ScreenUpdatin

マクロの実行中に画面表示の更新を止めて、マクロを高速に処理されるようにします。

マクロの先頭の方で、

ScreenUpdating = False

こうすることで、マクロ実行中の画面表示が更新されないので、

その画面更新にかかる時間が不要になり、それだけ早く処理が終了します。

マクロが終了すると、自動的に画面表示が更新されますが、

マクロの最期で、

ScreenUpdating = True

と、明示的に書いておく方が良いでしょう。



DisplayAlerts



マクロの実行中に特定の警告やメッセージが表示される事があります。

例えば、シートを削除したりする場合です。

この応答が出ると、マクロはそこで応答待ちになり、ボタンのクリックが必要になります。

このような、応答が必要なメッセージの表示を止める為に使用します。

DisplayAlerts = False

これで、応答メッセージは表示されず、マクロは自動的に次に進むようになります。

マクロが終了すると、自動的に表示する状態になりますが、

マクロの最期で、

DisplayAlerts = True

と、明示的に書いておく方が良いでしょう。



Interactive

キーボードやマウスからの入力を受け付けを停止できます。

Interactive = False

とすると、その間は、キーボードやマウスの入力を受け付けなくなります。

ただし、マクロの終了で、自動的にも戻りません。

必ず

Interactive = True

として下さい。

忘れると、マクロ終了後も、キーボード操作が効かなくなってしまいます



Calculation

計算モードを変更します。

設定値

xlCalculationAutomatic Excel が再計算を制御します。
xlCalculationManual ユーザーが要求すると、計算が完了します。
xlCalculationSemiautomatic Excel が再計算を制御しますが、テーブル内の変更は無視します。



Calculation = xlCalculationManual

とすることで、これ以降、自動計算はされなくなります。

この設定は、マクロ終了後も引き続き有効となりますので、

必要に応じて、xlCalculationAutomaticに戻してください。



StatusBar

ステータス バーに文字列を設定します。

StatusBar = "文字列"

これで、ステータスバーに文字列が表示されます。

ステータス バーの文字列を既定値に戻すには、

StatusBar = False

とします。



Cursor

マウスポインターの形状を設定します。

設定値

xlDefault 標準のポインター
xlIBeam I 字型ポインター
xlNorthwestArrow 矢印型ポインター
xlWait 砂時計型ポインター

Cursor = xlWait

・・・

Cursor = xlDefault

のように使用します。



その他

上記以外では、

Dialogs
FileDialog
VBAでファイルを指定するダイアログを扱うにはすでに紹介したGetOpenFilenameGetSaveAsFilenameがありますがさらに今回紹介する FileDialogオブジェクト こちらも使用することができ便利な機能が提供されています。FileDialogオブジェクト Application.FileDialog(fileDialogType)…
Caller
メニューのシートを作成してボタンを配置そしてボタンにより指定シートに移動するよくありますがボタン一つずつに別々(移動先のシート毎に)のマクロを作成するのは面倒ですそこで一つのマクロで済ませる方法の紹介です。Subsample() Sheets(ActiveSheet.Shapes(Application.Caller).TextFrame.Characte…
EnableEvents
マクロの開始・終了時に指定した方が良いものです。処理時間の短縮になるものも多いです。Subマクロ開始()Application.ScreenUpdating=False '画面描画を停止Application.EnableEvents= False'イベントを抑止Application.DisplayAlerts=False '確認メッセージを抑止Appl…

このあたりも押さえておくべきプロパティになります。

これについては、今後個別に紹介します。


同じテーマ「マクロVBA入門」の記事

Windowsオブジェクト
Worksheetオブジェクト
Rangeオブジェクト
Applicationのプロパティ
コレクションとは
コレクション処理(For Each)
エラー処理(On Error)
「On Error Go To」と「Exit Sub」
「On Error Resume Next」とErrオブジェクト
ブックを開く(Open)
ブックを閉じる・保存(Close,Save,SaveAs)


新着記事NEW ・・・新着記事一覧を見る

IfステートメントとIIF関数とMax関数の速度比較|VBA技術解説(6月23日)
Withステートメントの実行速度と注意点|VBA技術解説(6月6日)
VBA+SeleniumBasicで検索順位チェッカー(改)|VBA技術解説(6月2日)
マクロでShift_JIS文字コードか判定する|VBA技術解説(6月1日)
Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(5月31日)
「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(5月21日)
VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(5月18日)
テーブル操作のVBAコード(ListObject)|VBA入門(5月12日)
テーブル操作の概要(ListObject)|VBA入門(5月12日)
VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(5月6日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数とデータ型(Dim)|ExcelマクロVBA入門
6.ひらがな⇔カタカナの変換|エクセル基本操作
7.繰り返し処理(For Next)|ExcelマクロVBA入門
8.マクロって何?VBAって何?|ExcelマクロVBA入門
9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説
10.ExcelマクロVBAの基礎を学習する方法|エクセルの神髄


  • >
  • >
  • >
  • Applicationのプロパティ

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。






    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
    本文下部へ