スポンサーリンク
前回の記事で、Excelの「形式を選択して貼付け」の諸機能について述べた。
しかしこれら便利機能も、毎回「形式を選択して貼付け」ダイアログボックスを出してチェックボックスにチェックを入れたりしてると、面倒になってくる。
そこで、それらをマクロに組み込めば、簡単にワンタッチで出来るようになる。
私も何個かは個人用マクロブックに「形式を選択して貼付け」関係の機能は組み込んであるので、簡単にそのマクロの書き方について述べる。
マクロの自動記録をすれば簡単に分かるレベルの話ばかりだけどね。個人用マクロブックについてはこちら。
「形式を選択して貼付け」関係の機能をマクロ記述するには、まず最初に Selection.PasteSpecial と書く。
言わずもがな、PasteSpecialというのが「形式を選択して貼付け」のこと。
そしてこれに続けて、「値のみ」など選んで貼付ける場合は、次の中から選んで書く。(これ以外にも「入力規則」の貼付けとか色々とあるけど、よく使うものだけ抽出した)
機能 | マクロのソースコード |
---|---|
値のみ貼付け | Paste:=xlPasteValues |
数式のみ貼付け | Paste:=xlPasteFormulas |
コメントのみ貼付け | Paste:=xlPasteComments |
次に、加減乗除の演算貼付けをしたい場合は、次の中から選んで書き加える。
機能 | マクロのソースコード |
---|---|
加算貼付け | Operation:=xlAdd |
減算貼付け | Operation:=xlSubtract |
乗算貼付け | Operation:=xlMultiply |
除算貼付け | Operation:=xlDivide |
そして、「空白セルを無視する」「行列を入れ替える」については次のものを書き加える。
機能 | マクロのソースコード |
---|---|
空白セルを無視する | SkipBlanks:=True |
行列を入れ替える | Transpose:=True |
以上を踏まえて、私が個人用マクロブックでよく使うのは下記のようなパターンだ。
いずれも、マクロなしで単にリボンに追加したりすることはできないので、自分が必要なものを追加しておくと良い。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
'値・加算貼付け Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd '値・減算貼付け Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlSubtract '値・乗算貼付け Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply '値・除算貼付け Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlDivide '単なる行列入れ替え Selection.PasteSpecial Transpose:=True '値のみ行列入れ替え Selection.PasteSpecial Paste:=xlPasteValues, Transpose:=True '数式のみ行列入れ替え Selection.PasteSpecial Paste:=xlPasteFormulas, Transpose:=True 'コメント貼付け Selection.PasteSpecial Paste:=xlPasteComments |
スポンサーリンク