_基本ExcelVBA

AutoFillメソッドを使ってフラッシュフィルを実行する【AutoFillメソッド】【ExcelVBA】

フラッシュフィルを実行

フラッシュフィルをVBAで実行するには、AutoFillメソッドを使用します。
AutoFillメソッドの引数Typeに xlFlashFill を指定することで、前回の動きと同じ動作を繰り返してくれます。

基本の形
Range(“法則元のセル”).AutoFill Destination:=Range(“法則元を含む入力範囲”) , Type:=xlFlashFill

フラッシュフィル
入力されているデータを参考にExcelが規則性を見つけ出し、残りのセルに自動で入力します。
ショートカットキーCtlr+Eで瞬時に実行ができるので、作業効率が大幅に上がります。

 

AutoFillを使ったフラッシュフィルのサンプルコード

Public Sub Sample()
  'データを入力する
  Range("A1") = "鈴木 一郎"
  Range("A2") = "佐藤 二朗"
  Range("A3") = "北島 三郎"
  
  '■フラッシュフィルを実行する
  '法則となるデータ(姓と名を別の列に分ける)
  Range("B1") = "鈴木"
  Range("C1") = "一郎"
  
  'B列の処理
  Range("B1").AutoFill Destination:=Range("B1:B3"), Type:=xlFlashFill
  'C列の処理
  Range("C1").AutoFill Destination:=Range("C1:C3"), Type:=xlFlashFill

End Sub



 

注意点

  • フラッシュフィルは複数列に対して実行することができないので、一列ごとに実行する必要があります。
  • Excel2013以降であればFlashFillメソッドを使う事もできますが、
    規則性の判断をExcel側に任せることになるので、予測が外れることがあります。
    上手くいかない場合は、法則の種類を指示できるこちらのAutoFillメソッドの使用を検討してください。

 

関連記事

コメント

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