A/E forum viết code VBA đảo chiều từ 1=>>12 sang 12=>>1 mà các giá trị là 5,4,3,2,1 đều quy về 1 hết.
Cảm ơn mọi người đã quan tâm, giúp đỡ!
cảm ơn bác! Bác cứ cho em cai code cho nhanh. Video trên rất có ích cho em làm những bài phù hợp. thanks bácCái này làm bằng tay cũng được. Xem đoạn video clip dưới đây:
[video=youtube;xgSCm6TKRSs]http://www.youtube.com/watch?v=xgSCm6TKRSs&feature=youtu.be[/video]
Nếu vẫn muốn dùng code, cứ record macro quá trình làm bằng tay như trên sẽ có ngay code
cảm ơn bác! Bác cứ cho em cai code cho nhanh. Video trên rất có ích cho em làm những bài phù hợp. thanks bác
Sub Test()
With Sheet1.Range("B3:M100")
.Offset(1).SpecialCells(2).Value = 1
.Sort .Rows(1), 2, , , , , , xlYes, , , xlLeftToRight
End With
End Sub
chuẩn với lượng nhỏ luôn bác, sang lượng lớn thay đổi kinh khủng em gửi file lớn bác coi xem . Thanks bác và forum!!!
Sub Test()
With Sheet1.Range("[COLOR=#ff0000]B4:AC100[/COLOR]")
[COLOR=#ff0000].SpecialCells(2).Value = 1[/COLOR]
.Sort .Rows(1), 2, , , , , , [COLOR=#ff0000]xlNo[/COLOR], , , xlLeftToRight
End With
End Sub
em xem và thấy như vậy em lấy luôn làm ví dụ luôn. nội dung khác nhau vậy mà bác xem lại dùm em. thanks.Không biết chủ Topic này và chủ Topic http://www.giaiphapexcel.com/forum/showthread.php?75312-Code-VBA-%C4%91%E1%BA%A3o-chi%E1%BB%81u-A-Z-sang-Z-A/page2 có liên quan tới nhau không? Tôi thấy File yêu cầu giống nhau.
E thử rồi vẫn sai bác ah. bác xem lại đi. copy đảo chiều quy về 1 được. sai dòng.Tại bạn đưa dữ liệu không đúng thực tế chi
Với dữ liệu này thì sửa code thành:
Những chổ màu đỏ là những chổ sửa lạiMã:Sub Test() With Sheet1.Range("[COLOR=#ff0000]B4:AC100[/COLOR]") [COLOR=#ff0000].SpecialCells(2).Value = 1[/COLOR] .Sort .Rows(1), 2, , , , , , [COLOR=#ff0000]xlNo[/COLOR], , , xlLeftToRight End With End Sub
E thử rồi vẫn sai bác ah. bác xem lại đi. copy đảo chiều quy về 1 được. sai dòng.
Không hiểu sao em làm thì không đảo chiều hết(bác để ý kỹ những ô có chữ đỏ đó là dấu, sử dụng code xong đối chiếu xem sai khác không. của em hoàn toàn sai. mà không copy hết nữa. Bác cố gắng tìm hộ em lỗi này. (em thử với 28 cột, 36, 48 cột đều sai bác ah. em gửi bác làm thử rồi up file lên nhaCụ thể là sai chổ nào?
E thử rồi vẫn sai bác ah. bác xem lại đi. copy đảo chiều quy về 1 được. sai dòng.
Không hiểu sao em làm thì không đảo chiều hết(bác để ý kỹ những ô có chữ đỏ đó là dấu, sử dụng code xong đối chiếu xem sai khác không. của em hoàn toàn sai. mà không copy hết nữa. Bác cố gắng tìm hộ em lỗi này. (em thử với 28 cột, 36, 48 cột đều sai bác ah. em gửi bác làm thử rồi up file lên nha
bác ah! không phải không thay "B4:M" này mà thay rồi chạy sai kể cả cde ban đầu ấy. em thử với cái kia xem có thay đổi gì không. Nhưng vẫn sai. chứ không phải là em thay số liệu là nó sai. Ngay ban đầu rồi/ thế em có nhời với bác. bác coi lại giúp em. Thanks bác!- Lúc đầu bạn đưa dữ liệu là đến cột M
- Lần thứ 2 bạn đưa dữ liệu thêm đến cột AC
- Bây giờ dữ liệu mới của bạn lại đến cột AK
===> Code làm sao mà chính xác được đây?
Code
Hãy thay địa chỉ tại chổ màu đỏ cho phù hợp với dữ liệu thật của bạn chứMã:Sub Test() With Sheet1.Range([COLOR=#ff0000]"B4:AK100[/COLOR]") .SpecialCells(2).Value = 1 .Sort .Rows(1), 2, , , , , , xlNo, , , xlLeftToRight End With End Sub
Nếu làm mãi vẫn không xong, thôi thì làm bằng tay như video clip tôi đưa từ đầu cho... lành
bác ah! không phải không thay "B4:M" này mà thay rồi chạy sai kể cả cde ban đầu ấy. em thử với cái kia xem có thay đổi gì không. Nhưng vẫn sai. chứ không phải là em thay số liệu là nó sai. Ngay ban đầu rồi/ thế em có nhời với bác. bác coi lại giúp em. Thanks bác!
Em test rồi của bác đúng mọi trường hợp số liệu của em. Copy đảo chiều rồi quy gí trị về 1. rất ok.Mình thấy code của a Ndu rất ok
Hay ý bạn là như thế này :
[GPECODE=vb]
Sub Test()
Dim mycell As Range
Dim i As Byte
Application.ScreenUpdating = 0
For Each mycell In [B3:AC3]
i = i + 1
mycell.Value = i
Next
With Sheet1.Range("B3:AC100")
.Offset(1).SpecialCells(2).Value = 1
.Sort .Rows(1), 2, , , , , , xlYes, , , xlLeftToRight
End With
[B3:AC3].ClearContents
Application.ScreenUpdating = 1
End Sub
[/GPECODE]
Nếu code trên đúng yêu cầu của bạn --> thì đây không phải là bài toán " Đảo Chiều " mà kiểu " Mirror " thì đúng hơn