Giúp code phát hiện khi mở 2 File trở lên (1 người xem)

Liên hệ QC

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

minhtuan55

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
23/3/16
Bài viết
705
Được thích
52
Mình cần 1 đoạn code để xác định khi mình mở từ 2 File trở lên. Cụ thể như sau :
- Khi mình mở 1 file A duy nhát ( file mình cần làm Code ) thì click vào nút bấm thì ô A1 = 1
- Khi mình mở 1 file A , file B, File C ( >= 2 file trở lên ) thì Click vào nút bấm thì ô A1 = 0
( nút bấm nằm ở File A )

Xin mọi người giúp đở mình nhé
 
Dùng lệnh này để biết có bao nhiêu workbook đang mở nè bạn.
Mã:
Application.Workbooks.Count
 
Upvote 0
Bạn thử File này xem sao nha
 

File đính kèm

Upvote 0
Bạn dùng một vòng lặp hơi phí.

Cái đó hổng phải em viết mà là đi lượm của người khác thôi...mong anh đừng cười nha ... tại em hổng biết câu lệnh bên trên như của anh
Nếu vậy thì dựa theo gợi ý của anh em viết lại thành vậy cho đúng ý bạn chủ thớt nhá
Mã:
Public Sub hell()
Dim dem
dem = Application.Workbooks.Count
[A1] = dem * -(dem <= 1)
End Sub
 
Upvote 0
Cái đó hổng phải em viết mà là đi lượm của người khác thôi...mong anh đừng cười nha ... tại em hổng biết câu lệnh bên trên như của anh
Nếu vậy thì dựa theo gợi ý của anh em viết lại thành vậy cho đúng ý bạn chủ thớt nhá
Mã:
Public Sub hell()
Dim dem
dem = Application.Workbooks.Count
[A1] = dem * -(dem <= 1)
End Sub

Đúng là sub hell. Rườm rà qúa. Chỉ cần vầy thôi
[A1] = Iif(Application.Workbooks.Count > 1, 0, 1)

Tuy nhiên, dùng Application.Workbooks.Count để đếm số workbooks đang mở chỉ đúng 90% trường hợp thôi. 10% trường hợp còn lại, nếu có file mở kín/hidden (Personal chẳng hạn) số đếm sẽ lớn hơn.

Cachs duy nhất để loại trừ trường hợp này là dùng vòng lặp để kiểm soát tính chất visible của workbook.
 
Upvote 0
Web KT

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

Back
Top Bottom