Hỏi cách kẻ bảng tự động trong Excel có điều kiện

Thảo luận trong 'Những vấn đề chung' bắt đầu bởi pvtka, 9 Tháng mười một 2009.

  1. pvtka

    pvtka Thành viên mới

    Xin kính chào các bác!
    Em học Excel hơi kém nên muốn nhờ các bác chỉ giúp một tý
    Các bác làm ơn cho em hỏi làm thế nào để Excel tạo bảng có đường kẻ theo điều kiện được không? và khi thay đổi điều kiện thì các hàng đó có tự động kẻ theo không?
    Điều kiện ở đây là khi mình nhập vào một ô số học sinh thì Excel sẽ tự động kẻ bảng với số dòng đúng bằng giá trị số học sinh ta nhập vào ở trên.
    Cụ thể là: Mình có một bảng gồm các cột như sau:
    A4 là cột thứ tự
    B4 là cột Họ Và Tên
    C4 là cột Lớp
    D4 là cột ghi chú
    Ví dụ: Ở ô C2 ta nhập số học sinh là 10
    Thì Excel sẽ tự động kẻ bảng có 10 dòng kể từ ô A5 đến ô D14
    Và khi thay số Học sinh là 5 thì Excel cũng tự động xóa bảng cũ và kẻ bảng mới với 5 dòng tương ứng.
    Em có kèm tập tin minh họa. Xin các bác giúp đỡ em.
    Em xin chân thành cảm ơn!
     
    Lần chỉnh sửa cuối: 9 Tháng mười một 2009
  2. thanhphuong

    thanhphuong Thành viên hoạt động

    Chép code này vào Sheet cần thực hiện kẻ dòng

    PHP:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If 
    Range("C2") > 0 Then
            m 
    Sheet1.Rows("5:100").Delete
            n 
    Range("C2") + 4
            With Sheet1
    .Range("A5:D" n)
                .
    Borders(xlEdgeBottom).LineStyle xlContinuous
                
    .Borders(xlEdgeLeft).LineStyle xlContinuous
                
    .Borders(xlEdgeRight).LineStyle xlContinuous
                
    .Borders(xlEdgeTop).LineStyle xlContinuous
                
    .Borders(xlInsideHorizontal).LineStyle xlContinuous
                
    .Borders(xlInsideVertical).LineStyle xlContinuous
            End With
        End 
    If
    End Sub

    Thay Sheet1 bằng cái mà bạn muốn
    Xem file kèm theo
    Thân
     

    Các file đính kèm:

    • Book1.xls
      Kích thước:
      28.5 KB
      Đọc:
      313
  3. buivanhoa

    buivanhoa Thành viên mới

    Thanh Phương

    mình nghĩ bạn nên đổi sự kiện Selectionchange =>change kết hợp điều kiện target.address= range("c2").address =>tránh trường hợp excel sẽ phải thực hiện bài toán mỗi khi có thay đổi lựa chọn.
    PHP:
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = Range("c2").Address Then
    If Range("C2") > 0 Then
    m = Sheet1.Rows("5:100").Delete
    n = Range("C2") + 4
    With Sheet1.Range("A5:D" & n)
    .Borders(xlEdgeBottom).LineStyle = xlContinuous
    .Borders(xlEdgeLeft).LineStyle = xlContinuous
    .Borders(xlEdgeRight).LineStyle = xlContinuous
    .Borders(xlEdgeTop).LineStyle = xlContinuous
    .Borders(xlInsideHorizontal).LineStyle = xlContinuous
    .Borders(xlInsideVertical).LineStyle = xlContinuous
    End With
    End If
    End If
    End Sub
     
  4. Ba Tê

    Ba Tê Cạo Rồi Khỏi Gội

    Tôi không biết về VBA, nhưng thử nhập số 1 thì báo lỗi, không biết tại sao.
     
  5. ndu96081631

    ndu96081631 Ăn cùng GPE, Ở cùng GPE, Sống cùng GPE

    Sao không ai làm bài này bằng Conditional Formating thế nhỉ? ---> Quá dể để thực hiện (sao phải code)
     
  6. Ba Tê

    Ba Tê Cạo Rồi Khỏi Gội

    Hoan hô ý kiến của ndu, tôi làm được rồi.
     
  7. yeuthamhangxom

    yeuthamhangxom Thành viên tiêu biểu

    dùng bằng Conditional Formating thì làm như thế nào bạn hướng dẫn giúp được không?
     
  8. tedaynui

    tedaynui (*_*)

    Em chưa thử, nhưng em nghĩ vài chục dòng thì CF được nhưng data nhiều thì file có lẽ nặng và chậm.

    TDN
     
  9. Hai Lúa Miền Tây

    Hai Lúa Miền Tây Thành viên gạo cội

    Bạn mở file đó ra, vào Format\Conditional formating, hộp thoại hiện ra là thấy liền.
     
  10. thempham

    thempham Thành viên mới

    em làm rồi sao nó hiện khung ra nhưng em không biết làm như thế nào mong bác chỉ kỹ hơn đuợc không ạ!
     
  11. Ba Tê

    Ba Tê Cạo Rồi Khỏi Gội

    Đây là cách làm trong bài #4 bên trên, Bạn thay đổi số trong ô C3 để thấy thay đổi.

    untitled1.JPG
     
  12. Lê Duy Thương

    Lê Duy Thương CẠO LẤY GÌ GỘI ?

    hoàn toàn không chậm nếu chúng ta chỉ chọn border không
    chỉ chậm KHI chúng ta fill color vào
    tôi đã thủ với 65000 row
     
  13. tinpkk

    tinpkk Thành viên hoạt động

    Sử dụng: Format/Conditional Formating/
    Như vd.
     

    Các file đính kèm:

    • vd.rar
      Kích thước:
      2 KB
      Đọc:
      104
  14. viehoai

    viehoai GPE mỗi ngày

    Nếu nhập số liệu cách khoảng thì cần thêm điều kiện
    (mạn phép them file của bạn)
     

    Các file đính kèm:

    • vd.xls
      Kích thước:
      15.5 KB
      Đọc:
      70
  15. tinpkk

    tinpkk Thành viên hoạt động

    Cách cột: tức là có dữ liệu ở cột c thì điều kiện định dạng dòng kẻ vẫn được thự hiện.
     

    Các file đính kèm:

    • vd.rar
      Kích thước:
      2.1 KB
      Đọc:
      38
  16. longlinh88

    longlinh88 Thành viên mới

    Tôi cũng làm theo bac bate và các bác khác nhưng sa không được, các bác xem hộ tôi xem bị lỗi ở đâu?
     

    Các file đính kèm:

  17. longlinh88

    longlinh88 Thành viên mới

    nếu muốn các cột J,L,M giữ nguyên mầu thì làm thế nào các bác nhỉ?còn muốn giữ nguyên công thức các ô phía trên thì lam fthees nào? mong các bác giúp nhe.
     
    Lần chỉnh sửa cuối: 30 Tháng bảy 2011
  18. hoamattroicoi

    hoamattroicoi 一人で

    Bạn nhập công thức này vào Conditional Formatting :
    =(ROW()-6)<=$C$6
    Còn giữ nguyên màu 3 cột kia có điều kiện gì không (Ví dụ như phải có dữ liệu hay lớn hơn 1 số nào đó.....)?Có thì nêu điều kiện ra và dùng Conditional Formatting tiếp, Nếu không có thì tô màu bình thường thôi! He he!
     
    Lần chỉnh sửa cuối: 30 Tháng bảy 2011
  19. viehoai

    viehoai GPE mỗi ngày

    1. Công thức bạn nhập vào sai
    Conditional Formatting.gif

    =$C$6 chứ không phải là $C$33
    2. Bạn chưa chọn Format để định dạng
    Bạn chọn Cell bình thường khác sau đó Chọn biểu tượng Fornat Painer để quét các ô không cần bôi màu Hoặc bạn quét các ô không cần bôi màu ấy vào Conditional Formatting để xóa
     
    Lần chỉnh sửa cuối: 30 Tháng bảy 2011
  20. hoamattroicoi

    hoamattroicoi 一人で

    Em thấy trong file bạn ấy định thay đổi số ô định dạng là trong ô C6 mà, không phải ô C3 như hình bác Bate đã làm anh ạ!
     

Chia sẻ trang này