2016年09月18日
エクセル(Excel)技,VBA
【Excel VBA(Visual Basic for Application)の話】
Excel VBA はMicrosoft Office Excel専用のマクロ言語です。
・「開発」タブの「Visual Basic」というボタンを押すと下のような画面が表示されます。
これがVBAの作成画面です。
![VBA1.png](/yoshimatsuex/file/undefined/VBA1-thumbnail2.png)
前回「マクロ」のところで「マクロの記録」を行いました。
それが残っているという前提で話をしていきます。
右側のウィンドウの下の方に「+標準モジュール」というところがあります。
そこの「+」を押すと「Module1」というアイコンが表示されるのでそれをダブルクリックしてください。
下記の画面になると思います。
![VBA2.png](/yoshimatsuex/file/undefined/VBA2-thumbnail2.png)
Sub Macro1()
'
' Macro1 Macro
'
'
Range("D2").Select
Selection.Copy
Range("D3:D5").Select
ActiveSheet.Paste
End Sub
上記がVBAで記述されたプログラムです。
簡単に説明しますと、最初の「Sub Macro1()」はマクロ名を表示しています。
これは前回記録したマクロ1の内容なので、名前が「Macro1」になっています。
次に「' Macro1 Macro」ここはコメント部分になります。
頭に「’」が付いている場合はプログラムではなくコメントとして扱われます。
この部分は緑色になっていると思います。このようにメモ感覚(覚書)で使用出来るので知っておくと便利です。
「Range("D2").Select」ここからがプログラムの本文でD2セルを選択しなさいという命令文です。
「Selection.Copy」選択したD2セルの内容をコピーしなさいという命令文です。
「Range("D3:D5").Select」D3からD5まで選択しなさいという命令文です。
「ActiveSheet.Paste」選択した範囲に貼り付けしなさいという命令文です。
このように見ていくとマクロ1の内容が明らかですね。D2をコピーしてD3からD5へ
貼り付けしなさいという指示ですね。
VBAというのはこのような指示をプログラムで作成することです。
![](https://www26.a8.net/svt/bgt?aid=160826403811&wid=001&eno=01&mid=s00000001642005015000&mc=1)
![](https://www19.a8.net/0.gif?a8mat=2NR2G3+DEUKDU+CO4+TUVZL)
![](https://www20.a8.net/svt/bgt?aid=160826403810&wid=001&eno=01&mid=s00000001642004021000&mc=1)
![](https://www17.a8.net/0.gif?a8mat=2NR2G3+DE94S2+CO4+NXU8H)
![](https://www26.a8.net/svt/bgt?aid=160826403809&wid=001&eno=01&mid=s00000001642006061000&mc=1)
![](https://www18.a8.net/0.gif?a8mat=2NR2G3+DDNP6A+CO4+1032Z5)
人気ブログランキングへ
Excel VBA はMicrosoft Office Excel専用のマクロ言語です。
・「開発」タブの「Visual Basic」というボタンを押すと下のような画面が表示されます。
これがVBAの作成画面です。
![VBA1.png](/yoshimatsuex/file/undefined/VBA1-thumbnail2.png)
前回「マクロ」のところで「マクロの記録」を行いました。
それが残っているという前提で話をしていきます。
右側のウィンドウの下の方に「+標準モジュール」というところがあります。
そこの「+」を押すと「Module1」というアイコンが表示されるのでそれをダブルクリックしてください。
下記の画面になると思います。
![VBA2.png](/yoshimatsuex/file/undefined/VBA2-thumbnail2.png)
Sub Macro1()
'
' Macro1 Macro
'
'
Range("D2").Select
Selection.Copy
Range("D3:D5").Select
ActiveSheet.Paste
End Sub
上記がVBAで記述されたプログラムです。
簡単に説明しますと、最初の「Sub Macro1()」はマクロ名を表示しています。
これは前回記録したマクロ1の内容なので、名前が「Macro1」になっています。
次に「' Macro1 Macro」ここはコメント部分になります。
頭に「’」が付いている場合はプログラムではなくコメントとして扱われます。
この部分は緑色になっていると思います。このようにメモ感覚(覚書)で使用出来るので知っておくと便利です。
「Range("D2").Select」ここからがプログラムの本文でD2セルを選択しなさいという命令文です。
「Selection.Copy」選択したD2セルの内容をコピーしなさいという命令文です。
「Range("D3:D5").Select」D3からD5まで選択しなさいという命令文です。
「ActiveSheet.Paste」選択した範囲に貼り付けしなさいという命令文です。
このように見ていくとマクロ1の内容が明らかですね。D2をコピーしてD3からD5へ
貼り付けしなさいという指示ですね。
VBAというのはこのような指示をプログラムで作成することです。
![](https://www19.a8.net/0.gif?a8mat=2NR2G3+DEUKDU+CO4+TUVZL)
![](https://www17.a8.net/0.gif?a8mat=2NR2G3+DE94S2+CO4+NXU8H)
![](https://www18.a8.net/0.gif?a8mat=2NR2G3+DDNP6A+CO4+1032Z5)
人気ブログランキングへ
![](http://blogranking.fc2.com/ranking_banner/b_02.gif)
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/5447752
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック