Hướng dẫn cách in nhiều phiếu tự động ẩn dòng khi một ô có giá trị rỗng (1 người xem)

Liên hệ QC

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

quangtuanbs

Thành viên mới
Tham gia
12/3/09
Bài viết
39
Được thích
1
Hướng dẫn cách viết code VBA cho file excel

Chào các bạn, mình có một file in phiếu tổng hợp, tuy nhiên có một vấn đề là mình dùng code sau trong VBA của bạn NghiaPhuc đối với sheet đó thì ví dụ ô P11 có giá trị rỗng("") thì mình phải chuyển sang sheet khác rồi quay lại sheet PKT thì nó mới ẩn dòng có chứa ô P11 đó. và khi nó đang ẩn ô P11 thì mình thay đổi stt phiếu phiếu chuyển sang phiếu khác có ô P11 giá trị <>"" thì cái dòng chứa ô P11 ở trên vẫn ẩn ko tự động hiện được mình cũng vẫn phải chuyển sang sheet khác rồi quay lại sheet đó thì nó mới hiện dòng chứa ô P11 đang có giá trị đó.
Mình muốn xin cao kiến của các bạn là có cách nào giúp cho khi mình thay đổi stt phiếu thì nếu ô P11 rỗng thì nó tự động ẩn dòng chứa ô đó luôn chứ không cần phải chuyển sang sheet khác rồi chuyển lại sheet đó không. Hay có cách thiết lập nào để lệnh in khi mình in nhiều phiếu thực hiện theo trình tự thay đổi số phiếu ở sheet skt(ở đây là ô S5) rồi chuyển sang sheet SoKTMay rồi chuyển lại sheet PKT rồi mới thực hiện lệnh in vì khi đó những dòng chứa giá trị ở ô P10 và P11 sẽ hiển thị và nếu rỗng những dòng chứa 2 ô đó sẽ ẩn.
Link down file: http://www.mediafire.com/?e373h3nr0ctp6tm
Thanks mọi người nhé!
Dưới đây là code của bạn NghiaPhuc mình cho vào sheet PKT đó.
Private Sub Worksheet_Activate()
Dim Rng As Range
Application
.ScreenUpdating = False
For Each Rng In [P10:P11]
Rng.EntireRow.Hidden = Rng.Value = ""
Next Rng
End Sub
 
Lần chỉnh sửa cuối:
Híc không có cao nhân nào giúp em với. Bạn NghiaPhuc vào giúp mình một tay thử coi. làm hoài mà không được.
 
Híc không có cao nhân nào giúp em với. Bạn NghiaPhuc vào giúp mình một tay thử coi. làm hoài mà không được.
Thực ra đọc mãi vẫn chưa hiểu (nên hoi nhác). Sheet PKT mình tìm thấy đâu. Ô P11 mình thấy dữ liệu có liên quan gì đấu (Hơn nữa nói sheet đó là sheet nào?)
Toám lại: bạn nói yêu cầu cụ thể tí đi (nói đi thẳng vấn đề)
 
Thực ra đọc mãi vẫn chưa hiểu (nên hoi nhác). Sheet PKT mình tìm thấy đâu. Ô P11 mình thấy dữ liệu có liên quan gì đấu (Hơn nữa nói sheet đó là sheet nào?)
Toám lại: bạn nói yêu cầu cụ thể tí đi (nói đi thẳng vấn đề)
Sheet PKT chính là sheet37 mà anh. Ô P11 ở sheet37 chính là sheet Có nội dung là Phiếu tổng hợp đó anh. ở sheet đó em có chèn code của bạn NghiaPhuc nếu có giá trị rỗng thì dòng chứa ô P11 và ô P10 sẽ bị ẩn. Nhưng vấn đề là ở chỗ khi thay đổi số thứ tự của phiếu tổng hợp ở ô S5 thì nếu ô P10 và P11 chứa giá trị rỗng thì các dòng 10 và 11 chứa các ô đó không bị hide mà mình phải chuyển sang một sheet khác rồi đến khi quay lại sheet đó thì 2 dòng 10 và 11 mới bị ẩn nếu ô P10 và P11 chứa giá trị rỗng. Trong trường hợp nếu 2 dòng 10 và 11 đó đang bị ẩn thì khi mình thay đổi số thứ tự của phiếu tổng hợp (tức thay đổi số thứ tự ở ô S5 đó) thì nếu 2 ô P10 và P11 chứa giá trị khác rỗng nó vẫn bị hide, muốn 2 dòng đó hiển thị thì mình phải chuyển sang sheet khác rồi quay trở lại sheet37 đó thì 2 ô đó mới hiện trở lại.
Bây giờ em muốn các anh xem hộ thiết kế code cho sheet37 đó ( tức sheet có tên PKT đó) sao cho khi nhấn vào in phiếu kế toán thì lệnh in sẽ thực hiện theo trình tự là nó sẽ chuyển sang một sheet khác rồi quay lại sheet 37 đó rồi mới thực hiện lệnh in 1 phiếu, sau đó khi nó in phiếu tiếp theo thì nó thay đổi số phiếu rồi chuyển sang một sheet khác rồi lại quay lại sheet37, vì khi đó các ô P10 và P11 nếu không rỗng sẽ hiển thị 2 dòng 10 và 11 ở sheet37 khi in, còn nếu chúng rỗng thì 2 dòng 10 và 11 ở sheet 37 sẽ bị ẩn.
Hoặc có cách nào làm cho khi 2 ô P10 và P11 chứa giá trị rỗng ngay lập tức 2 dòng 10 và 11 ở sheet 37( tức sheet có tên PKT) bị ẩn và 2 dòng đó hiển thị khi 2 ô P10 và P11 có giá trị khác rỗng thì càng tốt.
Em trình bày như trên chắc là khá rõ rồi đúng không ạ. Mọi người vào xem giúp em một tay với nhé!
thanks cả nhà, chúc cả nhà cuối tuần vui vẻ!
 
Sheet PKT chính là sheet37 mà anh. Ô P11 ở sheet37 chính là sheet Có nội dung là Phiếu tổng hợp đó anh. ở sheet đó em có chèn code của bạn NghiaPhuc nếu có giá trị rỗng thì dòng chứa ô P11 và ô P10 sẽ bị ẩn. Nhưng vấn đề là ở chỗ khi thay đổi số thứ tự của phiếu tổng hợp ở ô S5 thì nếu ô P10 và P11 chứa giá trị rỗng thì các dòng 10 và 11 chứa các ô đó không bị hide mà mình phải chuyển sang một sheet khác rồi đến khi quay lại sheet đó thì 2 dòng 10 và 11 mới bị ẩn nếu ô P10 và P11 chứa giá trị rỗng. Trong trường hợp nếu 2 dòng 10 và 11 đó đang bị ẩn thì khi mình thay đổi số thứ tự của phiếu tổng hợp (tức thay đổi số thứ tự ở ô S5 đó) thì nếu 2 ô P10 và P11 chứa giá trị khác rỗng nó vẫn bị hide, muốn 2 dòng đó hiển thị thì mình phải chuyển sang sheet khác rồi quay trở lại sheet37 đó thì 2 ô đó mới hiện trở lại.
Bây giờ em muốn các anh xem hộ thiết kế code cho sheet37 đó ( tức sheet có tên PKT đó) sao cho khi nhấn vào in phiếu kế toán thì lệnh in sẽ thực hiện theo trình tự là nó sẽ chuyển sang một sheet khác rồi quay lại sheet 37 đó rồi mới thực hiện lệnh in 1 phiếu, sau đó khi nó in phiếu tiếp theo thì nó thay đổi số phiếu rồi chuyển sang một sheet khác rồi lại quay lại sheet37, vì khi đó các ô P10 và P11 nếu không rỗng sẽ hiển thị 2 dòng 10 và 11 ở sheet37 khi in, còn nếu chúng rỗng thì 2 dòng 10 và 11 ở sheet 37 sẽ bị ẩn.
Hoặc có cách nào làm cho khi 2 ô P10 và P11 chứa giá trị rỗng ngay lập tức 2 dòng 10 và 11 ở sheet 37( tức sheet có tên PKT) bị ẩn và 2 dòng đó hiển thị khi 2 ô P10 và P11 có giá trị khác rỗng thì càng tốt.
Em trình bày như trên chắc là khá rõ rồi đúng không ạ. Mọi người vào xem giúp em một tay với nhé!
thanks cả nhà, chúc cả nhà cuối tuần vui vẻ!
Ý bạn thế này phải không?
 

File đính kèm

Web KT

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

Back
Top Bottom