マクロの構文2「対象.動作」構文

マクロ「対象.動作」構文

今回は、マクロの構文について、勉強します。
一つ目は「対象.属性=値」構文でしたが、今度は「対象.動作」構文です。

4回-その2 マクロの構文~

マクロの構文~「対象.動作」構文


では、構文の2つ目
「対象.動作」構文を使うマクロを記録してみましょう。


選択範囲をコピーして新規ブックに貼り付けマクロ

作るマクロは、選択範囲をコピーして、新規ブックに貼り付けるというマクロです。

(サンプルファイルは、こちらから マクロ講座4-2回サンプルデータ

(1)では、サンプルの表を選択しましょう。(選択だけ)
(2)そして、マクロの記録ボタンをクリック
(3)[マクロの記録]ダイアログボックスが表示されます。
マクロ名をつけます。 マクロ名にはアルファベットや数字のほか、全角の日本語文字(かなや漢字)も使用可能です。マクロ名は後で変更できるので、例では表示されるままの状態で使っています。  

(4)OKをクリックして記録を開始します。選択範囲をコピーします。ショートカットキーはCtrl+Cです。
(5)次は新規ファイルを作成します。
ショートカットキーはCtrl+Nです。
(6)新規ファイルが作成されて、アクティブセルが新規ファイルのA1にあります。

列幅も貼り付けるマクロ

(7)リボンの貼り付けから列幅を指定して貼り付けをクリックします。


(8)記録を終了して、コードを確認しましょう。
(10)マクロの記録終了ボタンをクリック
Sub Macro10()
'選択範囲をコピーして新規ブックに貼り付け
    Selection.Copy
    Workbooks.Add
    ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteColumnWidths, _
    	Operation:=xlNone, SkipBlanks:=False, Transpose:=False
 End Sub
以上で終了、これで、選択範囲をコピーして新規ブックに貼り付けマクロの完成です。汎用的に使うために、範囲を特定していません。このマクロを使うときは、事前に範囲を選択します。
列幅をコピーする必要がない場合のコードです。

Sub 選択範囲を新規ブックに貼り付け()
  Selection.Copy
  Workbooks.Add
  ActiveSheet.Paste
End Sub


 ここを見てください。

   Selection.Copy
   Workbooks.Add
   ActiveSheet.Paste
   
 これらは、みなすべて「対象.動作」構文です。
対象動作構文
 意味は、対象を動作するですから、
   
   Selection.Copy   選択したものをコピー
   
   Workbooks.Add   ワークブックを追加
   
   ActiveSheet.Paste アクティヴシートに貼り付ける

 ね、とても簡単です。
 マクロって難しそう、っていう先入観が消えたんじゃあないですか? 

 右上隅の「閉じる」ボタンをクリックして、VisualBasicEditorを閉じます。  何も変更していないので、このまま閉じてかまいません。

 今日は、ここまでです。
 お疲れ様。

こちらもおすすめ