Excel VBA – 条件に当てはまるセルデータをコピーする

どんなにたくさんのセルの中からでも、特定の条件さえわかればそれだけコピーして取ってくることができる。

意地悪な上司が目検で何万セルチェックとかさせようとしてきたら、このマクロとおぼえておいてください。笑

何万セルでも検索してコピーするVBA

人間がコンピュータにかなわないところって思うと辛くなってきますが、使いこなす人になれば良いと思います。

Sub 何万せるでも()
r2 = 1
For r = 1 To 10000
    For c = 1 To 10000
        If Len( Cells(r, c).Value ) = 10 Then
            Sheets(2).Cells(r2, 1).Value = Cells(r, c).Value
            r2 = r2 + 1
        End If
    Next c
Next r
End Sub

上のプログラムの場合は、Len関数で文字数を計算して「ちょうど10文字のときだけ」シート2にコピーします。

シート2は、変数r2でセルA1、A2と順番に見つかった値をコピーしていきます。

組むのに時間がかかっても時短になる

1回で済むような作業は例外として、たとえば半日かけてこのExcelから探してみたいな作業にはVBAがうってつけです。

うってつけなんていう言葉を口では絶対言わない気もしつつ、、もってこいとかも言わないなぁ、、そんなテンションで今日も締めくくります。。笑

VBA

Posted by SNOW