MS OfficeにVBAを追加するにはどうすればよいですか?


21

VBA(Visual Basic for Applications)コード/マクロを使用する回答を示す投稿を見てきましたが、VBAの使用方法(実装および実行方法)についての追加コメントも後で指摘しました。これがコードの実行に役立つことを願っています。

だから、私の質問は:

いくつかのVBAコードがあります。MS ExcelまたはWordまたはOutlookプロジェクトにVBAを追加するにはどうすればよいですか?


1
正規の質問を作成しようとしています。私が参照できる他の質問を追加したり、閉じたり、タグを追加したり、質問や回答を編集して改善したり、回答を投稿したりできます。
デイブ

関連:superuser.com/q/794590/346288-VBAコードをデバッグするための単純な「キックスタート」。
ハンヌ

回答:


19

Microsoft Office製品1でVBAエディターを開くには、Alt+を押しF11ます。

次に、VBAの実装方法を決定する必要があります。保存されるファイルや変更されるスプレッドシートの選択など、ソフトウェアの何らかのイベントによってトリガーされますか?または、好きなときにいつでも自分でコードを実行できるようにしたいですか?

前者の場合は、プロジェクトエクスプローラーを見て、現在作業中のファイルに関連付けられているプロジェクトを見つけます。

特定のシートに関連付けられたイベントによってコードをトリガーする場合(たとえば、Sheet1で値が変更されるたびにコードを実行する必要がある場合)、プロジェクトエクスプローラーにリストされている特定のシートオブジェクトをダブルクリックする必要があります。これにより、コードを貼り付けることができるテキストボックスが開きます。イベントが特定のシートではなくワークブック全体に関連付けられている場合(たとえば、ワークブックの保存時にコードを実行する必要がある場合)、ThisWorkbookプロジェクトエクスプローラーでオブジェクトをダブルクリックします。

ただし、イベントによってコードをトリガーしたくない場合は、モジュールにコードを配置する必要があります。記録されたマクロなど、ドキュメントまたはブックに他のコードがある場合、モジュールに表示されます。既存のモジュールがある場合、ほとんどの場合、既存のコードの下にある同じモジュールにコードを貼り付けます。既存のモジュールはプロジェクトエクスプローラーにリストされます。

モジュールが存在しない場合は、新しいモジュールを挿入する必要があります。これを行うには、VBAエディターウィンドウModuleInsertドロップダウンメニューから選択します。これにより、新しいモジュールが挿入され、エディターウィンドウ内にテキストウィンドウが表示されます。コードをそこに貼り付けます。

モジュールでコードを実行する場合、いくつかのオプションがあります。1つは、VBAエディターウィンドウからコードを実行することです。実行したいコードのどこかにカーソルを置いてを押すF5「再生」アイコン—右向きの緑色の三角形、メニューバーの下のツールバーの(実行)ボタンをクリックしてコードを実行します。

別のオプションは、Macrosダイアログボックスを使用することです。開くには、次のいずれかを実行します。

  • ViewリボンのタブのMacrosペイン(右端)で、Macrosボタンをクリックします
  • 上のDeveloperタブにCodeペイン(左端)、クリックMacrosボタンを
  • Alt+を押すF8

ダイアログボックスは次のようになります。

ここに画像の説明を入力してください

上記の例では、実行することができますYourCode

  • リストから選択して、をクリックするRun、または
  • リストから選択してダブルクリックします。

______
1によるエクセル2010初心者ですることができます私の使用VBA?、Excel 2010 Starter EditionではVBAを使用できません。


4

これらの手順は、Office 2010を使用して実行されます(特に明記されている場合を除きます)が、2007および2013でも同様に行う必要があります。私はExcelでそれをやっていますが、違いは微妙なはずです。

最初のステップは、開発者タブをリボンに追加することです。

Office 2007では、

  1. [Officeメニュー]-> [ (プログラム)オプション]をクリックします。(「Officeメニュー」とは、オフィスボタン左上隅のボタンを指します。)これにより、「Excelオプション」、「Wordオプション」などのボタンが下部にあるメニューが表示されます。

  2. オプションダイアログボックスで、[リボンに[開発者]タブを表示する]をオンにし、 オフィスメニュー [OK]をクリックします。

  3. 新しい「開発者」タブが表示されます。

Office 2010および2013では、

  1. [ ファイル] -> [ オプション]をクリックします

  2. [ リボンのカスタマイズ]を選択します。

  3. 右側で[ 開発者]を見つけて、チェックボックスをオンにします。OKをクリックします。

  4. 新しいタブが表示されているはずで、クリックしてからVisual Basicをクリックします。

VBAコード編集ウィンドウである気難しい画面が表示されます。

サイドノート:(開発者タブが表示されていない場合でも)Alt+ F11キーボードショートカットを使用してVBAコード編集ウィンドウを開くこともできます。

コード編集ウィンドウ内の左側に、Project-VBAProjectというペインがあります。これで、Microsoft Excelオブジェクト(この名前は、使用しているプログラム(Word、Outlookなど)によって異なります)の下に、ThisWorkbookと呼ばれる「もの」があります。ThisWorkbookをダブルクリックします

この例では、次のコードを使用します。

sub WarnMeOfDanger()
   MsgBox "Argh, a dragon is behind you!"
end sub 

上記はすべて、ダイアログボックスを開いて画面にメッセージを表示することです。

コードをコピーし、VBAコード編集ウィンドウの白いシートに貼り付けます。

VBAコードエディターウィンドウの上部にある緑色の再生ボタンをクリックすると、メッセージが表示されます。

したがって、コードを実行するたびに、この画面に戻って再生ボタンを押してください!

ただし、独自のボタンを追加することもできます。ボタンを追加する場合は、まず、コードの最初の行にがあることに注意してくださいWarnMeOfDanger()。これは実際には「サブルーチン」の名前です。これについては後で覚えておきます。ここで、使用していたウィンドウを閉じるだけです(コードは自動的に保存されます)。

開発者のリボンで、[ 挿入 ]をクリックし、ボタンである最初のアイテムを選択します。マウスカーソルが少し十字形になります(怒っていない、つまりその外観を意味します)。ボタンのサイズを描画します。新しいウィンドウが表示され、ボタンを機能に割り当てるオプションが表示されます。この場合、のようなものが表示されるはずThisWorkbook.WarnMeOfDangerです。これをクリックし、[ OK ]をクリックします。

ここで、新しいボタンを押すと、メッセージが表示されます。ボタンを右クリックして、移動、テキストの変更、サイズ変更などのオプションを取得します。


同じ人による質問と回答?奇妙な.......
プラザンナ

2
@Prasanna、質問をすると、すぐに答えるオプションがあります。覚えておいてください、これはQ&Aサイトです。関連性があり有用である限り、受け入れられていると思います。これらのいくつかは周りにあります。
デイブ14

今までそれを知りませんでした。情報をありがとう
プラザンナ14

2
コードウィンドウにアクセスする最初のいくつかの手順を、単純な「Alt + F11」で置き換えることができます。:)
Ƭᴇcʜιᴇ007

@Ƭᴇcʜιᴇ007、遠慮なく編集してください:) +1
デイブ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.