訪問して頂きありがとうございます。まさふくろーです。
この記事では使用例を使って、指定したセル範囲に「セルのコピー」「書式のみコピー」「書式なしコピー」をする方法をご紹介します。
使用例
「実行」ボタンをクリック
使用するメソッド
AutoFillメソッド
Rangeオブジェクト.AutoFill(Destination,[Type])
Rangeオブジェクトで指定したセルの値を基準として、引数Destinationで指定したセル範囲のデータを設定する。設定するデータの種類は引数Typeで指定する。
引数Typeの設定値
設定値 | 内容 |
xlFillCopy | セルのコピー |
xlFillFormats | 書式のみコピー |
xlFillValues | 書式なしコピー |
ボタンの作成
「開発」タブの確認
ボタンの作成
①「開発」タブをクリック⇒②「挿入」をクリック⇒③「ボタン」をクリックします。
シート上にカーソルを移動し、ポインターを「+」の状態にします。
左クリックを押したまま、緑の矢印の方向にズルズルっとカーソルを移動します。
「マクロの登録」画面が表示されます。
①「マクロ名」を変更⇒②「新規作成」ボタンをクリックします。
ボタンの名前を変更する
エクセルのブックに戻り、ボタンの上にフォーカスを当てます。すると、ポインターが「」マークに切り替わります。
右クリックでショートカットメニューを表示し、「テキストの編集」を選択します。
ボタンの名前を変更します。
サンプルプログラム
VBAコードの入力
VBE(Visual Basic Editor)のピンク枠の部分に、VBAコードを入力していきます。
1 2 3 4 5 6 7 8 9 10 11 12 |
Sub 実行ボタン_Click() Range("A2").Value = "test1" Range("A2").AutoFill Range("A2:A12"), xlFillCopy Range("B2").Value = "test2" Range("B2").AutoFill Range("B2:B12"), xlFillFormats Range("C2").Value = "test3" Range("C2").AutoFill Range("C2:C12"), xlFillValues End Sub |
3 | セルのコピー列「A2」セルに値「test1」を設定 |
4 | 「A2」セルの値を、「A2~A12」のセルにコピーする |
6 | 書式のみコピー列「B2」セルに値「test2」を設定 |
7 | 「B2」セルの書式を、「B2~B12」のセルにコピーする |
9 | 書式なしコピー列「C2」セルに値「test3」を設定 |
10 | 「C2」セルの値を、「C2~C12」のセルに書式なしでコピーする |
VBAコードの保存
「ファイル」タブをクリックします。
「名前を付けて保存」を選択し、ファイル保存画面を起動します。
①ファイル名を入力⇒②「Excel マクロ有効ブック(*.xlsm)」を選択⇒③「保存」ボタンをクリックします。
最後まで読んでいただき、ありがとうございました!
本のまとめ記事はこちら