フラッシュフィルを実行
フラッシュフィルをVBAで実行するには、AutoFillメソッドを使用します。
AutoFillメソッドの引数Typeに xlFlashFill を指定することで、前回の動きと同じ動作を繰り返してくれます。
基本の形
Range(“法則元のセル”).AutoFill Destination:=Range(“法則元を含む入力範囲”) , Type:=xlFlashFill
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メソッドの使用を検討してください。



コメント