Đánh số thứ tự các ô trong một cột

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi datartex, 10 Tháng mười một 2005.

4,167 lượt xem

  1. datartex

    datartex Thành viên sơ cấp

    Bài viết:
    20
    Đã được thích:
    0
    Nơi ở:
    Hanoi
    Tôi có bảng lương với 4 cột: Số TT, Tên, Phòng, Lương. Tôi tính lương của từng phòng nên dùng lệnh subtotal. Tôi muốn người đầu tiên ở mỗi phòng sẽ được đánh số thứ tự là 1. Tuy nhiên khi thực hiện lệnh subtotal thì số thứ tự ở các phòng tuần tự tăng lên. Các bạn có cách nào giúp tôi với.
    Có thể liên hệ với tôi qua địa chỉ: datartex@yahoo.com
     
    #1
  2. duyennt

    duyennt Thành viên thân thiết

    Bài viết:
    94
    Đã được thích:
    0
    Nơi ở:
    Bình Dương
    Ở mỗi phòng khác nhau được cách bằng 1 dòng trống, bạn đánh số thứ thự như thế này khi bạn subtotal theo phòng STT vẫn đúng như yêu cầu của bạn là người đầu tiên của phòng sẽ có STT là 1.
    Dòng đầu tiên của cột STT ví dụ: A3, bạn gõ số 1 vào, ở ô A4 bạn nhập công thức sau: = if(B4<>"",max(A3:A3)+1,"") Làm thử xem sao nha bạn!
     
    #2
  3. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,373
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Có một vài cách giải quyết. Nếu dùng lệnh subtotal thì làm đơn giản ntn:
    Cột C là cột mã phòng.
    A2 = 1
    A3: =IF(C3=C2, A2+1, 1)
     
    #3
  4. workman

    workman Thành viên sơ cấp

    Bài viết:
    372
    Đã được thích:
    0
    Nơi ở:
    Ho Chi Minh
    Thực lòng nói nhé: bài giải của Adam tốt hơn và tổng quát hơn rất nhiều so với duyennt. Cách làm của bạn duyennt cũng là một phương pháp chấp nhận được nhưng bạn datartex chắc là thừa sức làm. Cái khó là không phải gõ tay lại số 1 cho từng phòng.
     
    #4
  5. duyennt

    duyennt Thành viên thân thiết

    Bài viết:
    94
    Đã được thích:
    0
    Nơi ở:
    Bình Dương
    Workman ơi! sao lại phải gỏ tay lại số 1 cho từng phòng nhỉ?
     
    #5
  6. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,373
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Cách làm của duyennt cũng như Adam thôi, xác định sự thay đổi khi bên cột Phòng.
    Có cách này tổng quát nhất áp dụng khi các bạn muốn in ra một bảng trích lọc bất kỳ sử dụng Advanced Filter hoặc Autofilter.
    Ô A2=1
    Ô A3 = SUBTOTAL(3, $A$2:A3)
    Cứ thế copy xuống.
    Chú ý là bạn phải copy xuống tận ô cuối cùng ngang với dòng tổng cộng. Điều này nhắm tránh trường hợp Autofilter hiểu là dòng có chứa công thức SUBTOTAL cuối cùng là dòng tổng cộng, nó sẽ không trích lọc. Riêng ô này bạn để font chữ màu trắng để nó không in ra.
     
    Last edited: 14 Tháng mười một 2005
    #6
  7. duyennt

    duyennt Thành viên thân thiết

    Bài viết:
    94
    Đã được thích:
    0
    Nơi ở:
    Bình Dương
    Adam Tran! tôi cũng đã sử dụng công thức tương tự của bạn, VD tại A2 =subtotal(3,$B$2:B2) để đánh số trong trường hợp Atofilter, nhập công thức vào ô đầu tiên cũng được, không cần gõ số 1 cũng được. (giả dụ: Cột A: STT, Cột B: Phòng ban)
     
    #7
  8. datartex

    datartex Thành viên sơ cấp

    Bài viết:
    20
    Đã được thích:
    0
    Nơi ở:
    Hanoi
    Trước hết xin chân thành cảm ơn sự giúp đỡ của các bạn.
    Tuy nhiên tôi muốn ở cột STT nếu để nguyên thì các số thư tự sẽ sắp xếp tăng dần từ 1...n, còn nếu dùng subtotal thì người đầu tiên ở mỗi phòng sẽ bắt đầu bằng 1.
    Các bạn có cách nào giúp tôi với.:wall:
     
    #8
  9. mysterious_girl

    mysterious_girl Thành viên sơ cấp

    Bài viết:
    358
    Đã được thích:
    1
    Nơi ở:
    ...close to you...
    Theo mình nghĩ, để đơn giản bạn tạo thành 2 cột số thứ tự.Một cột bạn đánh số thứ tự bình thường, một cột bạn dùng ct như anh Adam và duyennt.
     
    #9

Chia sẻ trang này