関数・メソッド

連続した値を自動で入力する【AutoFillメソッド】【ExcelVBA】

AutoFillメソッドとは

指定したセル範囲に連続した値を自動で入力してくれる機能です。
規則性のある値を入力したいときは、時短になってかなり便利ですね。

構文
Object.AutoFill(Destination,Type)

ObjectRangeオブジェクトを表す変数です。
Destinationオートフィルの書き込み先になる Range オブジェクトを指定します。
基準となるデータの入ったセル範囲も含むようにします。必須。
TypeXlAutoFillType を使ってオートフィルの種類を指定します。
XlAutoFillType説明
xlFillDefault0値と形式をExcelが自動で判定します。
xlFillCopy1指定した範囲の値をコピーします。
xlFillSeries2連続した数値を適用します。
xlFillFormats3値から形式のみをコピーします。
xlFillValues4値のみをコピーします。
xlFillDays5曜日名を連続して適用します。
xlFillWeekdays6平日のみを連続して適用します。
xlFillMonths7月の名前を連続して適用します。
xlFillYears8年を連続して適用します。
xlLinearTrend9数値が加算されていると推定して、連続した値を適用します。
xlGrowthTrend10数値が乗算されていると推定して、連続した値を適用します。
xlFlashFill11前のユーザーアクションに基づいて、連続した値を適用します。

 

AutoFillの使用方法をいくつか抜粋したサンプルコード

Public Sub Sample()

  'A1の値の連番をA10まで入力
  Range("A1").Value = 1   'A1セルの値
  Range("A1").AutoFill Range("A1:A10"), xlFillSeries
  
  'B1の曜日から連続する曜日をB7まで入力
  Range("B1") = "月曜日"  'B1セルの値
  Range("B1").AutoFill Range("B1:B7"), xlFillDays

  'C1,C2が加算されていると推定して、2ずつ増えた数をC10まで入力
  Range("C1") = "3"  'C1セルの値
  Range("C2") = "5"  'C2セルの値
  Range("C1:C2").AutoFill Range("C1:C10"), xlLinearTrend

End Sub

 

関連記事

コメント

タイトルとURLをコピーしました