企業研修講師派遣のBESTグループ
出張パソコン教室ITスクール
webコンサルティングスクール
パソコンの家庭教師BEST

Home Excel(エクセル)マクロ・VBA 重複なしのデータ抽出(2)|エクセルVBA

データを配列に読み込んでFor~Nextで逐次チェックする方法

元のデータを配列(x)に読み込み、For~Nextで逐次チェックします。
配列でチェックしているため上の方法よりは短時間で処理できます。
コード例
Sub 配列()
  Dim x, y
  Dim myCnt As Long, myFlg As Boolean
  Dim i As Long, j As Long
    With Worksheets(“Sheet1″)
      x = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
    End With
    ReDim y(1 To UBound(x), 1 To 1)
    y(1, 1) = x(1, 1)
    myCnt = 1
    For i = LBound(x) To UBound(x)
      myFlg = False
      For j = 1 To myCnt
        If x(i, 1) = y(j, 1) Then myFlg = True: Exit For
      Next j
      If myFlg = False Then myCnt = myCnt + 1: y(myCnt, 1) = x(i, 1)
    Next i
    With Worksheets(“Sheet2″).
      Range(“C:C”).ClearContents
      .Range(“C1″).Resize(UBound(y), 1) = y
    End With
End Sub
 

類似の投稿記事を確認

ご質問や感想は上記からコメントをお願い致します

返信を残す