Trong file bạn nói rằng:Kính gửi các anh chị và các bạn mình có file cần giúp đỡ .Nội dung cần giúp đỡ như tên chủ đề bài này .Chi tiết trong file đính kèm .Xim cám ơn các anh chị và các bạn.
Tôi không hiểu tại sao copy B1 sang C1, sau đó lại xóa cột C ---> Vậy copy làm gì cho mất công?Yêu cầu cần giúp đỡ
Copy từ B1 sang C1, D1, copy E1 sang F1, G1>> cứ như vậy đến hết tên tiêu đề
sau đó xóa cột C,cột F,cột I
cứ liên tục như vậy cho hết 250 cột luôn
Cám ơn các bạn và các anh chị nhìu lắm đó.
Xài tạm code củ chuối này xem có được không.Ôi đúng là ngớ ngẩn nhỉ ,chắc tại hay hài nên mới có yêu cầu hài hước này đây.Đúng ra là sau khi copy sang phải rồi thì xóa 2 cột B và D (xóa hai cột 2 bên chỉ lấy cột C giữa thôi) HjHj cám ơn A NDU nhìu lắm .Em đọc xong mà cứ cười chết thui.Vậy nhờ A NDU và các bạn giúp Thúy nha .Cám ơn các bạn và các anh chị.Em nhờ Mod sửa tiêu đề lại là xóa 2 cột 2 bên chỉ lấy cột giữa thôi.Em xin lỗi vì lơ mơ wá (tâm hồn đang để ở nhà anh nào ấy ...hjhj)
Public Sub GPE_1()
Dim iI As Long
For iI = 3 To 252 Step 3
Cells(1, iI) = Cells(1, iI - 1)
Cells(1, iI - 1).Clear
Cells(1, iI + 1).Clear
Next
End Sub
Vậy thì bạn thay các câu lệnh:cám ơn bác Ba Tê nhiều nhưng ý em là xoá hẳn 2 cột 2 bên lun đó chứ ko phải xoá dữ liệu trên 2 cột đó .sau khi xóa là chì còn lại 3 cột ABC thôi.
bởi các câu lệnh:Cells(1, iI - 1).Clear
Cells(1, iI + 1).Clear
Columns(iI - 1).Delete
Columns(iI + 1).Delete
Thay code trên thành cái này thử xem:cám ơn bác Ba Tê nhiều nhưng ý em là xoá hẳn 2 cột 2 bên lun đó chứ ko phải xoá dữ liệu trên 2 cột đó .sau khi xóa là chì còn lại 3 cột ABC thôi.
Public Sub GPE_2()
Application.ScreenUpdating = False
Dim iI As Long
For iI = 3 To 252 Step 3
Cells(1, iI) = Cells(1, iI - 1)
Cells(1, iI - 1).Clear
Cells(1, iI + 1).Clear
Next
For iI = 252 To 2 Step -1
If Cells(1, iI) = "" Then
Cells(1, iI).EntireColumn.Delete
End If
Next
End Sub
Mắc chi mà phía trên thì Clear, rồi xuống phía dưới lại Delete cho cực vậy anh? Delete luôn ở phía trên có phải đỡ 1 vòng For phía dưới không?Thay code trên thành cái này thử xem:
Bạn có chạy thử code viết theo kiểu của Bạn chưa, không được đâu.Mắc chi mà phía trên thì Clear, rồi xuống phía dưới lại Delete cho cực vậy anh? Delete luôn ở phía trên có phải đỡ 1 vòng For phía dưới không?
Xin lỗi anh, em nhận định sai (do chưa thử).Bạn có chạy thử code viết theo kiểu của Bạn chưa, không được đâu.
For đầu là chuyển tiêu đề về đúng cột có dữ liệu, xóa tiêu đề nằm sai cột.
For sau, cột nào không có tiêu đề cột thì xóa cả cột, chưa chuyển tiêu đề làm sao xóa cột được.
Sub GPE_3()
Dim i As Long
i = 3
Do While WorksheetFunction.CountA(Columns(i)) > 1
Cells(1, i) = Cells(1, i - 1)
Columns(i + 1).Delete
Columns(i - 1).Delete
i = i + 1
Loop
End Sub
Tôi mới tập tành VBA thôi, không biết cái nào nhanh hơn cái nào,Cám ơn bác Ba nha ,em thử theo a Nghiaphuc đúng là ko dc rùi .Code của bác Ba ok lun đó nhưng hơi chậm một tý .Bác có thề cho code khác chạy nhanh hơn dc ko .Em còn trẻ nên ham mê tốc độ lắm bác Ba à .Hjhj cám ơn các anh chị và các bác nhiệt tình giúp đỡ nhìu lắm.
Public Sub GPE3()
Application.ScreenUpdating = False
Dim iI As Long
For iI = 252 To 2 Step -1
If Cells(2, iI) = "" Then
Cells(2, iI).EntireColumn.Delete
Else
Cells(1, iI) = Cells(1, iI - 1)
End If
Next
End Sub
File của Bạn có bị "khác" không, File mẫu của Bạn gởi nó chưa kịp "chớp" là xong rồi.Ui sao vậy nè ! hai cái code của bác Ba và a nghiaphuc sau này sao cho chạy mà đơ lun(kết quả hổng như ý lun) .Ko bít A và bác Ba có test trước khi gửi lên hông mà lạ vậy ...hjhj .Mong bác Ba và A xem lại cho Thúy nha..
Dễ lắm, bạn cứ đưa dữ liệu thật giống với thực tế lên đây! Chúng ta chỉ quan tâm đến dòng 1 (là dòng tiêu đề) nên bạn chỉ cần đưa dữ liệu của dòng này đầy đủ là được rồi (dữ liệu từ dòng 2 trở xuống không cần thiết, chỉ cần đưa lên 1 vài dòng lên để minh họa)Cái code này của bác Ba rất chi là lạ .để nguyên chạy code thì ok mà thêm vào vài tiêu đề nữa rồi chạy code thì kết quả cũng lạ lun.Cái code đầu tiên mà bác giúp em đó ,em thêm vào nhiều tiêu đề chạy ok lun (file rất ok nhưng chỉ có là hơi châm thui,vì file em vd nên ít ,chứ file thực nó nhiều tiêu đề lắm ...)thôi để khi nào bác Ba rảnh làm típ hen .Em dùng cái này dc rùi (nói vậy thui chứ nó chạy cũng ko chậm lắm đâu, chạy 70 km/h chứ có ít gì ) .cám ơn bác Ba nhìu lắm lun đó .
Chắc là bị lệch dòng tiêu đề thôi nhưng do chủ topic giải thích lòng vòng nên mới thế. Tôi thấy dữ liệu xuất ra từ Fox thường bị như vậy. Bạn tải file này về test thử. Nếu giống như vậy thì lấy code trong file mà dùng.Cái code này của bác Ba rất chi là lạ .để nguyên chạy code thì ok mà thêm vào vài tiêu đề nữa rồi chạy code thì kết quả cũng lạ lun.Cái code đầu tiên mà bác giúp em đó ,em thêm vào nhiều tiêu đề chạy ok lun (file rất ok nhưng chỉ có là hơi châm thui,vì file em vd nên ít ,chứ file thực nó nhiều tiêu đề lắm ...)thôi để khi nào bác Ba rảnh làm típ hen .Em dùng cái này dc rùi (nói vậy thui chứ nó chạy cũng ko chậm lắm đâu, chạy 70 km/h chứ có ít gì ) .cám ơn bác Ba nhìu lắm lun đó .