Xin giúp đỡ chèn dòng tự động trong Excel (1 người xem)

  • Thread starter Thread starter moducqni
  • Ngày gửi Ngày gửi

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

moducqni

Thành viên mới
Tham gia
23/10/09
Bài viết
15
Được thích
0
Xin các Pro giúp đỡ!
Tôi có một cột trong đó có nhiều dòng, mỗi dòng có 1 số, các số ở dòng dưới luôn lớn hơn ở dòng trên (đã được Sort tăng dần). Tuy nhiên các số ở các dòng kề nhau đôi lúc tăng không liên tục. Ví dụ: dòng 1 chứa số 1, dòng 2 chứa số 2, dòng 3 chứa số 5, dòng 4 chứa số 7, ..., dòng 1000 chứa số 1250, dòng 1001 chứa số 2251, dòng 1002 chứa số 2260. Nếu chèn thêm các dòng ở những chỗ bị nhảy cóc bằng thủ công thì củ Chối quá!
Vậy các Pro có cách nào chèn tự động các dòng (dòng trống) vào chỗ bị thiếu đúng theo thứ tự không.
moducqni Xin cảm ơn nhiều!
Xin gửi file mẫu cho các Pro dễ hiểu!
 

File đính kèm

Lần chỉnh sửa cuối:
Xin các Pro giúp đỡ!
Tôi có một cột trong đó có nhiều dòng, mỗi dòng có 1 số, các số ở dòng dưới luôn lớn hơn ở dòng trên (đã được Sort tăng dần). Tuy nhiên các số ở các dòng kề nhau đôi lúc tăng không liên tục. Ví dụ: dòng 1 chứa số 1, dòng 2 chứa số 2, dòng 3 chứa số 5, dòng 4 chứa số 7, ..., dòng 1000 chứa số 1250, dòng 1001 chứa số 2251, dòng 1002 chứa số 2260. Nếu chèn thêm các dòng ở những chỗ bị nhảy cóc bằng thủ công thì củ Chối quá!
Vậy các Pro có cách nào chèn tự động các dòng (dòng trống) vào chỗ bị thiếu đúng theo thứ tự không.
moducqni Xin cảm ơn nhiều!

Làm thì được, mà hổng có file nên chẳng biết phải làm theo hướng nào đây? Làm xong e rằng không đúng ý ---> Mất công!
 
Mình cho rằng bài này nên thực hiện bằng VBA

Giả dụ cột dữ liệu đang có là 'A', ta thực hiện fương án như sau:

(*) Thêm 1 cột trước cột 'A'

(**) Lập vòng lặp từ cuối lên đầu, chép các trị trong hàng đang có ở cột 'B' ('A' cũ) đến dòng mang thứ tự của trị này;

(***) Cuối: ta xoá cột 'A' đi!
 
Xin các Pro giúp đỡ!
Tôi có một cột trong đó có nhiều dòng, mỗi dòng có 1 số, các số ở dòng dưới luôn lớn hơn ở dòng trên (đã được Sort tăng dần). Tuy nhiên các số ở các dòng kề nhau đôi lúc tăng không liên tục. Ví dụ: dòng 1 chứa số 1, dòng 2 chứa số 2, dòng 3 chứa số 5, dòng 4 chứa số 7, ..., dòng 1000 chứa số 1250, dòng 1001 chứa số 2251, dòng 1002 chứa số 2260. Nếu chèn thêm các dòng ở những chỗ bị nhảy cóc bằng thủ công thì củ Chối quá!
Vậy các Pro có cách nào chèn tự động các dòng (dòng trống) vào chỗ bị thiếu đúng theo thứ tự không.
moducqni Xin cảm ơn nhiều!

Có thể làm bằng thủ công mà không chuối tý nào. Cách làm như sau:

b1. Cách dòng cuối cùng có dữ liệu 1 dòng (vd dòng 1004), bạn nhập Stt liên tục từ 1 đến hết (vd từ 1 đến 2260)
b2. Trong vùng mới nhập, tại cột phụ dùng COUNTIF để tìm các số trùng trong toàn bộ bảng tính (từ dòng 1 đến dòng cuối cùng mới nhập) vd: từ tại B1004 nhâp =COUNTIF($A$1:A1004;A1004) rồi fill đến dòng cuối
b3. Dùng AutoFilter lọc từ B1004 đến dòng cuối, chọn số 2, rút dòng.
b4. Sort A -> Z

Nếu dùng VBA cũng viết theo cách này để không phải dùng vòng lặp (chưa thử nên không biết có được không)
 
Lần chỉnh sửa cuối:
Xin chào bạn ndu96081631 !
Mình xin gửi File mau nhé!
Làm thì được, mà hổng có file nên chẳng biết phải làm theo hướng nào đây? Làm xong e rằng không đúng ý ---> Mất công!
Có file cũng chưa chắc ăn đâu, ví dụ chưa nêu hết tình huống.
Dữ liệu chỉ có 2 cột?
Cột Số Port có những số trùng nhau thì sao?
Nếu dữ liệu chỉ có 2 cột thì khác, số port trùng nhau để nguyên thì khác, số port trùng nhau chỉ lấy 1 thì khác,... ndu... cảnh báo lợi hại thiệt!
Thấy sao làm vậy. Làm xong mới thấy "oải" --->Mất công!
Híc!
 

File đính kèm

đánh số thứ tự nhảy cóc

giúp em đánh số thứ tự nhẩy cóc trong exel với. ví dụ : 1,3,5,7,9,11....
 
Đúng rồi! Dữ liệu chỉ có 2 cột, cột thứ tự và cột số port. Nếu số port trùng nhau thì chỉ lấy 1 port, còn port bị trùng ở dòng kề sau thì bỏ không lấy.
 
Nếu nhảy cóc theo quy luật cách 1 như ví dụ thì bạn chỉ cần nhập 1 ở dòng đầu tiên, nhap 3 ở dòng thứ 2, xong bôi đen cả 2 ô vừa mới nhập, để con trỏ vào góc dưới bên phải 2 ô bị bôi đen, khi con trỏ chuyển thành dấu + (dấu + màu đen) thì bấm chuột trái giữ và kéo xuống, thế là xong --> OK!
 
Lần chỉnh sửa cuối:
Có file cũng chưa chắc ăn đâu, ví dụ chưa nêu hết tình huống.
Dữ liệu chỉ có 2 cột?
Cột Số Port có những số trùng nhau thì sao?
Nếu dữ liệu chỉ có 2 cột thì khác, số port trùng nhau để nguyên thì khác, số port trùng nhau chỉ lấy 1 thì khác,... ndu... cảnh báo lợi hại thiệt!
Thấy sao làm vậy. Làm xong mới thấy "oải" --->Mất công!
Híc!

Đúng rồi! Dữ liệu chỉ có 2 cột, cột thứ tự và cột số port. Nếu số port trùng nhau thì chỉ lấy 1 port, còn port bị trùng ở dòng kề sau thì bỏ không lấy.
 
Có file cũng chưa chắc ăn đâu, ví dụ chưa nêu hết tình huống.
Dữ liệu chỉ có 2 cột?
Cột Số Port có những số trùng nhau thì sao?
Nếu dữ liệu chỉ có 2 cột thì khác, số port trùng nhau để nguyên thì khác, số port trùng nhau chỉ lấy 1 thì khác,... ndu... cảnh báo lợi hại thiệt!
Thấy sao làm vậy. Làm xong mới thấy "oải" --->Mất công!
Híc!
Cứ làm bừa đi, trật ......làm lại, đâu có chết thằng Tây nào đâu mà sợ.
Ba Tê bị cuốn vào câu hỏi rồi, người ta bảo chèn là Ba tê hì hà hì hục.....chèn
Má ơi, vài chục ngàn dòng Ba Tê .....tèo luôn
Đang làm mảng ngon quá sao không dùng nó mà "chơi" bài này
Mã:
Public Sub Chen()
Dim Vung, I, Mg, d, A
    Set d = CreateObject("scripting.dictionary")
    Vung = Range([B3], [B10000].End(xlUp))
    ReDim Mg(1 To Vung(UBound(Vung), 1), 1 To 2)
        For I = 1 To UBound(Vung)
            If Not d.exists(Vung(I, 1)) Then d.Add Vung(I, 1), ""
        Next I
            For I = 1 To Vung(UBound(Vung), 1)
                Mg(I, 1) = I
                If d.exists(I) Then Mg(I, 2) = I
            Next I
    [E3:F10000].ClearContents
    [E3].Resize(I - 1, 2) = Mg
End Sub
+-+-+-+Híc+-+-+-+
 

File đính kèm

Cứ làm bừa đi, trật ......làm lại, đâu có chết thằng Tây nào đâu mà sợ.
Ba Tê bị cuốn vào câu hỏi rồi, người ta bảo chèn là Ba tê hì hà hì hục.....chèn
Má ơi, vài chục ngàn dòng Ba Tê .....tèo luôn
Đang làm mảng ngon quá sao không dùng nó mà "chơi" bài này
Mã:
Public Sub Chen()
Dim Vung, I, Mg, d, A
    Set d = CreateObject("scripting.dictionary")
    Vung = Range([B3], [B10000].End(xlUp))
    ReDim Mg(1 To Vung(UBound(Vung), 1), 1 To 2)
        For I = 1 To UBound(Vung)
            If Not d.exists(Vung(I, 1)) Then d.Add Vung(I, 1), ""
        Next I
            For I = 1 To Vung(UBound(Vung), 1)
                Mg(I, 1) = I
                If d.exists(I) Then Mg(I, 2) = I
            Next I
    [E3:F10000].ClearContents
    [E3].Resize(I - 1, 2) = Mg
End Sub
+-+-+-+Híc+-+-+-+
Má ơi!
Mình đã nói trước rồi mà.
...Nếu dữ liệu chỉ có 2 cột thì khác, số port trùng nhau để nguyên thì khác, số port trùng nhau chỉ lấy 1 thì khác,... ndu... cảnh báo lợi hại thiệt!...
Sau này mấy cái vụ mơ mơ hồ hồ này mình xin "kiếu"!
Híc!
 
Nhờ các Thầy giúp dùm cho em code chèn dòng của tập tin này:
Chép toàn bộ nội dung dòng trên vào dòng mới chèn với điều kiện:lấy cột R - thuế GTGT đưa vào cột P - Doanh số mua chưa có thuế tại dòng mới chèn (cùng tất cả nội dung của dòng trên đưa xuống dòng mới chèn ngoại trừ số tiền tại cột P - Doanh số mua chưa thuế không chép xuống)

Cám ơn các Thầy.
 

File đính kèm

Nhờ các Thầy giúp dùm cho em code chèn dòng của tập tin này:
Chép toàn bộ nội dung dòng trên vào dòng mới chèn với điều kiện:lấy cột R - thuế GTGT đưa vào cột P - Doanh số mua chưa có thuế tại dòng mới chèn (cùng tất cả nội dung của dòng trên đưa xuống dòng mới chèn ngoại trừ số tiền tại cột P - Doanh số mua chưa thuế không chép xuống)

Cám ơn các Thầy.
Già này hỏi chưa "gõ gàng" lắm nghe.
Ví dụ R4 chép xuống P5, còn R5 có bằng R4 hông?
STT cột A4 là 1, chép xuống A5 là 1 luôn hay sao?
Giữ lại sheet gốc, làm trong sheet GPE.
Bấm vào cái nút <KTGG> trong ô U1 xem kết quả, có gì thì bàn tiếp nhé "bạn già".
Híc!
 

File đính kèm

Các huynh làm hộ tiếp cho mình cái file này nhé!

Các huynh download về xử lý giúp nhé!
 

File đính kèm

Lần chỉnh sửa cuối:
moducqni xin cảm ơn ban Ba Tê rất nhiều! Mình làm được rồi! :thumbs:
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
Lần chỉnh sửa cuối:

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

Back
Top Bottom