[Hỏi] Về cách sử dụng vòng lặp (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

vampire23

Thành viên mới
Tham gia
29/8/13
Bài viết
2
Được thích
0
Xin chào các bạn,

Mình có 1 vấn đề muốn hỏi các bạn về vòng lặp trong excel, cơ bản như sau (xin xem file đính kèm):

-Mình có 1 danh sách model name, và brand trong sheet 1
-Mình muốn chọn tất cả các model name có tên brand là "n123", theo thứ tự từ trên xuống vào trong sheet 2 (cũng theo thứ tự từ trên xuống, và không bỏ trống hàng nào)
-Không dùng filter, vì mình sẽ phải phân loại, copy, paste rất nhiều lần cho từng brand vào các sheet khác nhau.

Xin chân thành cám ơn sự giúp đỡ của các bạn.
 

File đính kèm

Bạn thử xem đúng không !

Mã:
Sub gpe()
Dim i As Long, j As Long, arr(), sarr()
arr = Sheet1.Range("a3:b" & Sheet1.[b65500].End(3).Row)
ReDim sarr(1 To UBound(arr, 1), 1 To 2)
For i = 1 To UBound(arr, 1)
    If arr(i, 2) = "n123" Then
        j = j + 1
        sarr(j, 1) = arr(i, 1)
        sarr(j, 2) = arr(i, 2)
    End If
Next i
If j Then
    Sheet2.Range("a3").Resize(j, 2).Value = sarr
End If
End Sub
 
Upvote 0
Xin chào các bạn,

Mình có 1 vấn đề muốn hỏi các bạn về vòng lặp trong excel, cơ bản như sau (xin xem file đính kèm):

-Mình có 1 danh sách model name, và brand trong sheet 1
-Mình muốn chọn tất cả các model name có tên brand là "n123", theo thứ tự từ trên xuống vào trong sheet 2 (cũng theo thứ tự từ trên xuống, và không bỏ trống hàng nào)
-Không dùng filter, vì mình sẽ phải phân loại, copy, paste rất nhiều lần cho từng brand vào các sheet khác nhau.

Xin chân thành cám ơn sự giúp đỡ của các bạn.
Dùng autofilter cho bài này rất khoẻ, còn dùng vòng lặp thì như sau:
Mã:
Sub Test()
Dim rng As Range
Set rng = Sheet1.[B3:B264]
For Each rng In rng
    If rng = "n123" Then MsgBox rng.Address
Next

End Sub
 
Upvote 0

Bài viết mới nhất

Back
Top Bottom