Tự động ẩn dòng khi giá trị bằng 0 trong excel (2 người xem)

Liên hệ QC

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

Sửa lại như thế thì khi =0 nó lại không ẩn :D ý em là muốn tại G10 = 0 thì nó ẩn đi, còn <>0 thì nó hiện ra.
 
Sửa lại như thế thì khi =0 nó lại không ẩn :D ý em là muốn tại G10 = 0 thì nó ẩn đi, còn <>0 thì nó hiện ra.
Thế thì sửa lại như thế này:
Mã:
Private Sub Worksheet_Activate()
Dim Rng As Range
Application.ScreenUpdating = False
For Each Rng In [G10:G10]
  If Rng.Value <> 0 Then
      Rng.EntireRow.Hidden = False
   Else
      Rng.EntireRow.Hidden = True
 End If
Next Rng
Application.ScreenUpdating = True
End Sub
 
Hix. <> 0 thì khi G10 là Empty cũng không ẩn chứ bác...code trên sẽ ẩn nếu G10 là Empty......hehe (<> 0 , thì Empty cũng là <> 0)
Hehe.....Người hỏi cũng biết code mà. Mới lại cái code lúc hỏi đã có trường hợp Rng.value="" rồi. Người dùng tự tùy biến thôi. Chứ tôi lười lắm. Hỏi sao trả lời vậy thôi.
 
Híc, bác nào xem giúp e trường hợp này với, khi nhập giá trị tùy biến tại G5 phải click qua sheet khác thì F10 mới chạy code, làm cách nào để nó auto đc ạ
 

File đính kèm

Lần chỉnh sửa cuối:
Vậy làm thế nào mà khi F10 được tham chiếu từ sheet khác sang nhưng tự động chạy code không bác
VD như file sau
 

File đính kèm

Em xin phép đào mộ chút ạ! Cũng nội dung trên nếu em muốn lấy điều kiện ở cả 2 cột thì sao ạ. Ý em là điều kiện là cả 2 cột có giá trị "" hoặc =0 thì mới ẩn ạ. Em xin gửi file mẫu nhờ các bác giúp dùm ạ.
 

File đính kèm

Em xin phép đào mộ chút ạ! Cũng nội dung trên nếu em muốn lấy điều kiện ở cả 2 cột thì sao ạ. Ý em là điều kiện là cả 2 cột có giá trị "" hoặc =0 thì mới ẩn ạ. Em xin gửi file mẫu nhờ các bác giúp dùm ạ.
Thì sửa chổ này nè bạn.
Mã:
Private Sub Worksheet_Activate()
  Dim Rng As Range
  Application.ScreenUpdating = False
    For Each Rng In [D2:[COLOR=#ff0000][B]E[/B][/COLOR]50]
      If Rng.Value = "" Or Rng.Value = 0 Then Rng.EntireRow.Hidden = True
    Next Rng
  Application.ScreenUpdating = True
End Sub
 
Em xin phép đào mộ chút ạ! Cũng nội dung trên nếu em muốn lấy điều kiện ở cả 2 cột thì sao ạ. Ý em là điều kiện là cả 2 cột có giá trị "" hoặc =0 thì mới ẩn ạ. Em xin gửi file mẫu nhờ các bác giúp dùm ạ.
Bạn chép code sau thay cho cái cũ

Private Sub Worksheet_Activate()
Dim i As Long
Application.ScreenUpdating = False
For i = 2 To 50
If Cells(i, 4).Value = 0 And Cells(i, 5).Value = 0 Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
End Sub

Bạn Giải pháp hình như hiểu ngược ý của chủ thớt thì phải ? "...điều kiện là cả 2 cột có giá trị "" hoặc =0 thì mới ẩn ạ ..."Mà chả biết mình có hiểu đúng ý bạn ấy không nữa ...thôi thì ...chuồn...
 
Lần chỉnh sửa cuối:
Cả nhà ơi.
Em có một file quản lý công nợ ( File đính kèm ), em muốn khi em nhập dữ liệu và chuyển sang sheet này thì những ô không có giá trị ( bằng 0 ) trong bảng sẽ tự động ẩn đi và nếu có giá trị sẽ tự động hiện ra. Em mò mẫm cả ngày mà vẫn không ra được (đã dựa vào hướng dẫn phía trên mà vẫn không ra được).
Em nhờ cả nhà giúp dùm em
 

File đính kèm

Bạn chép code sau thay cho cái cũ

Private Sub Worksheet_Activate()
Dim i As Long
Application.ScreenUpdating = False
For i = 2 To 50
If Cells(i, 4).Value = 0 And Cells(i, 5).Value = 0 Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
End Sub

Bạn Giải pháp hình như hiểu ngược ý của chủ thớt thì phải ? "...điều kiện là cả 2 cột có giá trị "" hoặc =0 thì mới ẩn ạ ..."Mà chả biết mình có hiểu đúng ý bạn ấy không nữa ...thôi thì ...chuồn...
Bài số 34 quá trời cột bằng 0 thì code như thế nào bạn.
 
Cả nhà ơi.
Em có một file quản lý công nợ ( File đính kèm ), em muốn khi em nhập dữ liệu và chuyển sang sheet này thì những ô không có giá trị ( bằng 0 ) trong bảng sẽ tự động ẩn đi và nếu có giá trị sẽ tự động hiện ra. Em mò mẫm cả ngày mà vẫn không ra được (đã dựa vào hướng dẫn phía trên mà vẫn không ra được).
Em nhờ cả nhà giúp dùm em
Xin mời thử với:
PHP:
Sub abc()
    Dim i As Long
    Application.ScreenUpdating = False
    For i = 10 To Range("a" & Rows.Count).End(3).Row
        Cells(i, "v").Formula = "=SUM(" & Range(Cells(i, "B"), Cells(i, "U")).Address & ")"
        If Cells(i, "V").Value = 0 Then
            Cells(i, "V").EntireRow.Hidden = True
        End If
    Next i
    Application.ScreenUpdating = True
    Columns("V").Delete
End Sub
 
Lần chỉnh sửa cuối:
Mọi người sẽ giúp bạn, nhưng chính bạn cũng phải bỏ ra 1 chút công chứ. Nếu vì riêng tư không công bố file gốc đươc, thì bạn cũng phải soạn 1 file ví dụ .
Mình đã nhiều lần vừa mất công tạo ví dụ rồi sử lý--->Không đúng do sai mẫu.
Mình gần như dám chắc khi viết xong bài này giá có file mẫu mình cũng đã sử lý xong yêu cầu của bạn
MÌnh có file đính kèm trong sheet 2 bạn có thể viết code VBA cho mình theo điều kiện ẩn tất cả các hàng nếu như giá trị tại cột A bằng 0 được ko bạn
 

File đính kèm

MÌnh có file đính kèm trong sheet 2 bạn có thể viết code VBA cho mình theo điều kiện ẩn tất cả các hàng nếu như giá trị tại cột A bằng 0 được ko bạn
Bạn thử:
PHP:
Sub ABC()
   With Sheet6
    .Range("A15:G" & .Range("A" & Rows.Count).End(3).Row).AutoFilter 1, "<>0"
  End With
End Sub
 
Dạ xin chào các a e! mình đang tạo một công thức tính cột P (MỤC KIỂM)=cột L-cột M:
+ Nếu P=0 thì ẩn,
+ Nếu P#0 thì hiện.
Và điều kiện tiếp theo Nếu P#0 thì các dòng cột C đi kèm keo hiện theo con mục đó
File đính kèm, cảm ơn các a e
 

File đính kèm

Em xin chào anh chị ạ
Anh chị giúp em với ạ
Em có một bảng lương. Em muốn các cột không có số liệu tự động ẩn đi và khí có số liệu thì tự hiện lại ạ
Em chị giúp em ạ
Em xin chân thành cảm ơn
Trân trọng
 

File đính kèm

Khi Protect Sheet, bạn chọn thêm các thuộc tính sau:

Format cells
Format columns
Format rows

Như vậy, bạn có thể Format tất cả trên đó mà không phải sợ mất dữ liệu.

Còn không thì trong code của nghiaphuc bạn thêm như vầy:

PHP:
Private Sub Worksheet_Activate()
  ActiveSheet.Unprotect ("Learning_Excel")
  Dim Rng As Range
  Application.ScreenUpdating = False
    For Each Rng In [I19:I42]
      Rng.EntireRow.Hidden = Rng.Value = ""
    Next Rng
  ActiveSheet.Protect ("Learning_Excel")
End Sub

Với ("Learning_Excel") là password của bạn!

Nhìn vào code của NghiaPhuc tôi thấy chỉ có ẩn dòng trống tại cột I, còn giá trị = 0 thì không bị ẩn, nên tôi bổ sung lại như sau:

PHP:
Private Sub Worksheet_Activate()
  ActiveSheet.Unprotect ("Learning_Excel")
  Dim Rng As Range
  Application.ScreenUpdating = False
    For Each Rng In [I19:I42]
      If Rng.Value = "" Or Rng.Value = 0 Then Rng.EntireRow.Hidden = True
    Next Rng
  Application.ScreenUpdating = True
  ActiveSheet.Protect ("Learning_Excel")
End Sub
Xin chào các anh chị, các bạn. Mình không biết cách hỏi trên diễn đàn nên hỏi ở đây: Do phải điều chỉnh nhiều lần số thứ tự thanh tà vẹt cần phải thay thế nên lúc nhập không sắp xếp ngay được theo tăng dần (Vị trí tà vẹt được đánh số từ đầu đến cuối của 1 bộ ghi từ 1 đến 60). Muốn xin các anh, chị, các bạn code để sau khi nhập thì tự sắp xếp tăng dần. Để bản in ra từ cột A đến cột V thì số tà vẹt tại các ô trong cột V theo thứ tự tăng dần. Trân thành cảm ơn anh chị và các bạn.
Bài đã được tự động gộp:

Bạn sửa chỗ [I20:I120] thành Sh.[I20:I120] là được.
 

File đính kèm

Web KT

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

Back
Top Bottom