Nhờ xử lý nhanh việc đảo dữ liệu dòng (có thể ứng dụng mảng?) (1 người xem)

  • Thread starter Thread starter syquan
  • Ngày gửi Ngày gửi
Liên hệ QC

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

syquan

Thành viên mới
Tham gia
4/4/07
Bài viết
35
Được thích
2
Em có cột số liệu,bây giờ em muốn các số liệu xếp ngược lại.Tức là số dưới lên đầu,số thứ 2 từ dưới lên về thứ 2 từ trên xuống,số thứ 3 từ dưới lên về thứ 3 từ trên xuống,...cuối cùng số đầu về cuối cùng vd: a1:a , a2: b, a3: c thì sẽ đảo thành a1:c , a2: b, a3: a.
Em dùng Sub DaoCotDL() tuy nhiên với dữ liệu vài chục dòng thì chạy rất chậm. Nhờ các anh chị sử dụng mảng để có thể xử lý nhanh hơn được không ah.

Sub DaoCotDL()
Dim DongCuoi As Integer, d0 As Integer
Range("B4").Select
DongCuoi = Range("B" & Rows.Count).End(xlUp).Row
'Tim buoc di chuyen xa nhat cua DL
d0 = DongCuoi - 4
'Tao vong lap lay DL va dao
For i = d0 To 0 Step -1
Range("B4").Offset(i, 2).Value = ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Next i
End Sub
 

File đính kèm

Em có cột số liệu,bây giờ em muốn các số liệu xếp ngược lại.Tức là số dưới lên đầu,số thứ 2 từ dưới lên về thứ 2 từ trên xuống,số thứ 3 từ dưới lên về thứ 3 từ trên xuống,...cuối cùng số đầu về cuối cùng vd: a1:a , a2: b, a3: c thì sẽ đảo thành a1:c , a2: b, a3: a.
Em dùng Sub DaoCotDL() tuy nhiên với dữ liệu vài chục dòng thì chạy rất chậm. Nhờ các anh chị sử dụng mảng để có thể xử lý nhanh hơn được không ah.

Sub DaoCotDL()
Dim DongCuoi As Integer, d0 As Integer
Range("B4").Select
DongCuoi = Range("B" & Rows.Count).End(xlUp).Row
'Tim buoc di chuyen xa nhat cua DL
d0 = DongCuoi - 4
'Tao vong lap lay DL va dao
For i = d0 To 0 Step -1
Range("B4").Offset(i, 2).Value = ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Next i
End Sub
Nếu thực dụng, thì viết code làm chi, làm cột phụ, nhập số thứ tự: 1 2 3 ...., rồi sắp xếp Z->A theo cột phụ này là xong
 
Upvote 0
Nếu thực dụng, thì viết code làm chi, làm cột phụ, nhập số thứ tự: 1 2 3 ...., rồi sắp xếp Z->A theo cột phụ này là xong
Vì sau khi lộn ngược lại thì copy dòng và thêm chu CP sau đó copy DL ở cột F
Bài đã được tự động gộp:

.
"Đảo ngược" không phải "Đão ngược"
Cảm ơn bạn nhiều!!!
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom