HOME > 即効テクニック > Excel 一般 > セル操作関連のテクニック > 空白セルを探してデータを貼り付ける

空白セルを探してデータを貼り付ける|Excel 一般

セル操作関連のテクニック

空白セルを探してデータを貼り付ける

(Excel 2000/2002/2003/2007/2010)

データが入力されたセル範囲を別シートへコピーする際に、コピー先のシートの空白セルを探して貼り付けます。

次のサンプルは、Sheet1のセル範囲A1:D10をSheet2にコピーします。
Sheet2のA1セルから順に、10行4列のセル範囲に値が入力されているかどうかを確認し、すべてのセルが空白だったら貼り付けます。
値や数式を含むセルがあったら、下方向に10行ずつ範囲をずらして貼り付けます。

Sub Sample()
    Dim Flag As Boolean
    Dim c As Variant
    Const RowCount As Long = 10
    Const ColumnCount As Long = 4

    Application.ScreenUpdating = False
    
    Sheets("Sheet1").Range("A1").Resize(RowCount, ColumnCount).Copy
    Sheets("Sheet2").Select
    Range("A1").Activate
    
    Flag = False
    Do Until Flag
        '貼り付け先のセル範囲がすべて空白かどうかをチェック
        For Each c In ActiveCell.Resize(RowCount, ColumnCount)
            If IsEmpty(c) Then
                Flag = True
            Else
                '空白でないセルが見つかった
                Flag = False
                ActiveCell.Offset(RowCount, 0).Activate
                Exit For
            End If
        Next c
    Loop
    
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub