Các câu hỏi về việc Đánh Số Thứ Tự (STT)

Liên hệ QC
Em có file này, em viết code rùi nhưng không hiểu sao nó vẫn không tự động đánh số thứ tự được. AC xem và hoàn thiện dùm em nhé!

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Max As Integer
    Dim eR As Long, i As Long
    If Target.Address = "$F$1" Then
        Range("A5:E65535").ClearContents
        With S1.Range(S1.[A1], S1.[A65535].End(xlUp))
            .AutoFilter 1, Target
            .Offset(1, 1).Resize(, 4).SpecialCells(12).Copy Range("B5")
            .AutoFilter
        End With
        With S3
        For i = 5 To .Range("A65535").End(xlUp).Row
            Max = Application.WorksheetFunction.Max(Range("A4:A" & i))
            .Cells(i, 1) = Max + 1
            .Cells(i, 1).HorizontalAlignment = xlCenter
        Next
        End With
    End If
End Sub
Sửa thành vầy chắc được:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$F$1" Then
    Range("A5:E65535").ClearContents
    With S1.Range(S1.[A1], S1.[A65535].End(xlUp))
      .AutoFilter 1, Target
      .Offset(1, 1).Resize(, 4).SpecialCells(12).Copy Range("B5")
      .AutoFilter
    End With
    With S3.Range("A4").CurrentRegion
      If .Rows.Count > 1 Then
        .Resize(, 1).SpecialCells(4).Value = Evaluate("ROW(R:R)")
      End If
    End With
  End If
End Sub
 
Bạn thử code này xem có được không ?
Mã:
Sub Stt()
With Range("B5:B" & [b65536].End(3).Row).Offset(, -1)
.Value = "=IF(RC[1]=0,"""",COUNTA(R5C2:RC[1]))"
.Value = .Value
End With
End Sub

Dòng lệnh:
PHP:
Range("B5:B" & [b65536].End(3).Row).Offset(, -1)
Cũng bằng:
PHP:
Range("B5:B" & [b65536].End(xlUp).Row).Offset(, -1)
 
Sửa thành vầy chắc được:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$F$1" Then
    Range("A5:E65535").ClearContents
    With S1.Range(S1.[A1], S1.[A65535].End(xlUp))
      .AutoFilter 1, Target
      .Offset(1, 1).Resize(, 4).SpecialCells(12).Copy Range("B5")
      .AutoFilter
    End With
    With S3.Range("A4").CurrentRegion
      If .Rows.Count > 1 Then
        .Resize(, 1).SpecialCells(4).Value = Evaluate("ROW(R:R)")
      End If
    End With
  End If
End Sub

Code này của ndu mới có dự phòng chọn 1 mã nào đó mà không copy được dòng dữ liệu nào. Code của TrungChinh thì nếu không có dữ liệu sẽ quýnh 1 vào ngay ô A4 chứa tiêu đề "STT"
 
Mình xin hỏi cách đánh số thứ tự thế này, thật tình là đã đọc hết 31 trang mục này rồi, cũng tìm trên các diễn đàn Excel tiếng Anh rồi nhưng không thấy có cách nào làm được như mong muốn cả. Mong các anh chị giúp đỡ.

Giả sử cột A là số thứ tự, cột B lần lượt ghi tên các nhóm A, B, C, D... (mỗi tên nhóm xuất hiện nhiều hàng, ví dụ A A A A, B B, C C C C C C, D D D).
Mình muốn tự động điền số thứ tự theo từng nhóm, tức là cùng nhóm thì cứ 1 2 3 4 5... khi đến nhóm khác thì lại đánh số từ 1.
Và khi autofilter thì sẽ tự động đánh số thứ tự theo từng nhóm lại.

Hai vấn đề trên giải quyết riêng rẽ thì mình biết cách làm rồi, nhưng để làm được cả 2 yêu cầu thì mình không làm được. Đã thử cả cách đếm có điều kiện mà bỏ qua các dòng ẩn nhưng vẫn không ra kết quả mong muốn.

Mong các anh chị giúp đỡ! Cảm ơn các anh chị nhiều.
À nếu tốt thì mình cần giải pháp dùng hàm Excel, còn nếu không thể dùng hàm thì dùng VBA cũng được.
 
Lần chỉnh sửa cuối:
Đánh Số

có cách nào đánh vào cột STT dựa vào dữ liệu của cột D như trong Bài này không, xin được các cao thủ cho ý kiến, xin cảm ơn,
xin mod xoá bài này, vì tôi đã làm được rồi
 

File đính kèm

  • DanhSo.xlsx
    14.6 KB · Đọc: 48
Lần chỉnh sửa cuối:
có cách nào đánh vào cột STT dựa vào dữ liệu của cột D như trong Bài này không, xin được các cao thủ cho ý kiến, xin cảm ơn
Bạn phải giải thích quy tắc hoặc kết quả mẫu như thế nào thì mới biết đường mà "mần" chứ. Dữ liệu không thì biết đường nào mà "mần".
 
có cách nào đánh vào cột STT dựa vào dữ liệu của cột D như trong Bài này không, xin được các cao thủ cho ý kiến, xin cảm ơn,
xin mod xoá bài này, vì tôi đã làm được rồi

Ah, thầy làm được rui, thầy chia sẻ đi chứ, cho mọi người học cùng...

Chỉ dùng hàm ROW() kết hợp IF là làm được rồi,

Bạn phải giải thích quy tắc hoặc kết quả mẫu như thế nào thì mới biết đường mà "mần" chứ. Dữ liệu không thì biết đường nào mà "mần".
Đúng là thầy bỏ bom, không giải thích gì cả, rồi chạy ...
 
Ah, thầy làm được rui, thầy chia sẻ đi chứ, cho mọi người học cùng...

Chỉ dùng hàm ROW() kết hợp IF là làm được rồi,


Đúng là thầy bỏ bom, không giải thích gì cả, rồi chạy ...


Bạn đừng nói vậy chứ, nếu bạn thích thì gởi bài lên cho bạn tham khảo nha

Trong sheet DMVTHH tôi muốn gõ vào Tên Hàng thì tự động tất cả những gì liên quan bên cột Mã linh kiện, Ten hàng tiếng nhật, Mã NVL, Định mức sẽ tự động xổ ra, tôi muốn dùng 1 công thức để đưa ra tất cả

Tôi có ý tường lấy số của dòng chứa tên hàng ra để dùng hàm INDIRECT làm một lần cho tất cả
Nhưng ban nảy tự nhiên ma ám hay sao ấy nghĩ không ra nhưng vừa đưa lên diễn đàn thì tôi đã nghĩ ra
bạn tham khảo phải nha ở sheet DMVTHH
 

File đính kèm

  • QUAN LY XUAT NHAP.rar
    929 KB · Đọc: 49
  • QUAN LY XUAT NHAP KHO_GOC2.rar
    197.2 KB · Đọc: 33
Lần chỉnh sửa cuối:
Xin các anh chị hướng dẫn cho em cách làm như thế nào:
Em có bảng số liệu nằm cột A kết qủa số liệu này có được từ công thức, bây giờ tại cột B em muốn đếm số thứ tự các hàng nào có số liệu ở cột A, không đếm các hàng chứa công thức bằng 0 hoặc bằng " ", rất mong các anh chị hướng dẫn, xin cảm ơn
 
Xin các anh chị hướng dẫn cho em cách làm như thế nào:
Em có bảng số liệu nằm cột A kết qủa số liệu này có được từ công thức, bây giờ tại cột B em muốn đếm số thứ tự các hàng nào có số liệu ở cột A, không đếm các hàng chứa công thức bằng 0 hoặc bằng " ", rất mong các anh chị hướng dẫn, xin cảm ơn
Dùng thử xem:
Mã:
=IF(OR(A1=0,TRIM(A1)=""),"",SUMPRODUCT(((TRIM($A$1:A1))<>"")*($A$1:A1<>0)))
 
Xin các anh chị hướng dẫn cho em cách làm như thế nào:
Em có bảng số liệu nằm cột A kết qủa số liệu này có được từ công thức, bây giờ tại cột B em muốn đếm số thứ tự các hàng nào có số liệu ở cột A, không đếm các hàng chứa công thức bằng 0 hoặc bằng " ", rất mong các anh chị hướng dẫn, xin cảm ơn
Bạn có thể dùng công thức sau:A1, B1 là tiêu đề, tại ô B2 (Công thức này chỉ áp dụng được khi dử liêu ở cột A là dạng số)
PHP:
=IF(COUNTIF(A$1:A2,">0")=COUNTIF(A$1:A1,">0"),"",COUNTIF(A$1:A2,">0"))
 
Lần chỉnh sửa cuối:
Bạn có thể dùng công thức sau:A1, B1 là tiêu đề, tại ô B2 (Công thức này chỉ áp dụng được khi dử liêu ở cột A là dạng số)
PHP:
=IF(COUNTIF(A$1:A2,">0")=COUNTIF(A$1:A1,">0"),"",COUNTIF(A$1:A2,">0"))
Chỉ cần như vầy:

B2=IF(A2>0;COUNTIF($A$2:A2;">0");"")

hoặc

B2=IF(A2>0;MAX($B$1:B1)+1;"")

Đó là đánh số TT loại trừ 0 và "". Còn nếu khoảng trắng (" ") thì cả 3 công thức đều thua. Phải dùng:

B2=IF(ISNUMBER(A2)*(A2>0);MAX($B$1:B1)+1;"")
 
Đó là đánh số TT loại trừ 0 và "". Còn nếu khoảng trắng (" ") thì cả 3 công thức đều thua.
\
Công thức này của em
Dùng thử xem:
Mã:
=IF(OR(A1=0,TRIM(A1)=""),"",SUMPRODUCT((([COLOR=#ff0000]TRIM($A$1:A1)[/COLOR])<>"")*($A$1:A1<>0)))
Loại trừ số 0,"" và cả " " rồi mà thầy? Dùng chung cho cả Text và số.
 
\
Công thức này của em

Loại trừ số 0,"" và cả " " rồi mà thầy? Dùng chung cho cả Text và số.

3 công thức đều thua, đó là 1 công thức của tvxdgt, và 2 công thức 1, 2 của lão chết tiệt.

Đang trích dẫn bài của tvxdgt thì chỉ nói về công thức của tvxdgt và gợi ý cải tiến cho tvxdgt thôi.

Ở đâu nhảy zô thanh minh zậy trời. ZZ!
 
Lần chỉnh sửa cuối:
Tôi có một bảng exell cần chỉnh sửa lại số thứ tự theo các dòng có dữ liệu cột bên thì làm cách nào.
 
Tăng số thứ tự trong filer

Mình có một có 1 file như đính kèm.
Yêu cầu : Cột B muốn đánh số thứ tự như bên dưới thì dùng hàm gì ? ( số thứ tự tăng dần theo cột E, không tăng dần khi cột E không phải là " 1111 " . Mong các bác chỉ giùm em nhé !

BC DE ( đã filter )
PA000111/01/20091Thu tiền bán hàng bằng chuyển khoản1111
PA000211/01/20091Thu tiền bán hàng bằng chuyển khoản1111
Dùng hàm?11/01/20091Thu tiền bán hàng bằng chuyển khoản1111
?11/01/20091Thu tiền bán hàng bằng chuyển khoản1111
11/01/20091Thu tiền bán hàng thẻ cào Viettel1111


 

File đính kèm

  • Cần tư vấn.xls
    37 KB · Đọc: 13
Công thức tại B12:
Mã:
=IF(F12<>"1111","",TEXT(COUNTIF($F$12:F12,"1111"),"PT0000"))
 
Cũng trong file trên. Nếu cộtF( TÀI KHOẢN CÓ ) fileter là 1111 thì cột B ( SỐ HIỆU) là PC0001, PC0002... rồi tăng dần thì dùng hàm gì ?
 
Cũng trong file trên. Nếu cộtF( TÀI KHOẢN CÓ ) fileter là 1111 thì cột B ( SỐ HIỆU) là PC0001, PC0002... rồi tăng dần thì dùng hàm gì ?
Bạn áp dụng được công thức ở trên chưa?
Trong file cột F là TK Nợ, cột G là TK Có.
Mã:
=IF(COUNTIF(F12:G12,"1111")=0,"",IF(F12="1111","PT","PC")&TEXT(COUNTIF($F$12:F12,"1111"),"0000"))
 
Web KT
Back
Top Bottom