【EXCEL VBA】指定したセル範囲に「セルのコピー」「書式のみコピー」「書式なしコピー」をする方法

訪問して頂きありがとうございます。まさふくろーです。

この記事では使用例を使って、指定したセル範囲に「セルのコピー」「書式のみコピー」「書式なしコピー」をする方法をご紹介します。

使用例

  1. 「実行」ボタンをクリック

  2. 指定したセル範囲に「セルのコピー」「書式のみコピー」「書式なしコピー」する

使用するメソッド

AutoFillメソッド

Rangeオブジェクト.AutoFill(Destination,[Type])


Rangeオブジェクトで指定したセルの値を基準として、引数Destinationで指定したセル範囲のデータを設定する。設定するデータの種類は引数Typeで指定する。

引数Typeの設定値

設定値 内容
xlFillCopy セルのコピー
xlFillFormats 書式のみコピー
xlFillValues 書式なしコピー

ボタンの作成

「開発」タブの確認

リボンに「開発」タブが表示されているかの確認をします。

 

 

「開発」タブが表示されていない場合は、「開発タブの表示」をご覧ください。

ボタンの作成

①「開発」タブをクリック⇒②「挿入」をクリック⇒③「ボタン」をクリックします。

シート上にカーソルを移動し、ポインターを「+」の状態にします。

 

左クリックを押したまま、緑の矢印の方向にズルズルっとカーソルを移動します。

 

「マクロの登録」画面が表示されます。

 

①「マクロ名」を変更⇒②「新規作成」ボタンをクリックします。

 

ボタンの名前を変更する

エクセルのブックに戻り、ボタンの上にフォーカスを当てます。すると、ポインターが「」マークに切り替わります。

 

右クリックでショートカットメニューを表示し、「テキストの編集」を選択します。

 

ボタンの名前を変更します。

 

サンプルプログラム

VBAコードの入力

VBE(Visual Basic Editor)のピンク枠の部分に、VBAコードを入力していきます。

3 セルのコピー列「A2」セルに値「test1」を設定
4 「A2」セルの値を、「A2~A12」のセルにコピーする
6 書式のみコピー列「B2」セルに値「test2」を設定
7 「B2」セルの書式を、「B2~B12」のセルにコピーする  
9 書式なしコピー列「C2」セルに値「test3」を設定
10 「C2」セルの値を、「C2~C12」のセルに書式なしでコピーする  

VBAコードの保存

「ファイル」タブをクリックします。

 

 

「名前を付けて保存」を選択し、ファイル保存画面を起動します。

 

 

①ファイル名を入力⇒②「Excel マクロ有効ブック(*.xlsm)」を選択⇒③「保存」ボタンをクリックします。

 

最後まで読んでいただき、ありがとうございました!