PDA

View Full Version : Dùng thanh scroll che dấu các sheet.



tuanfkt
06-02-09, 02:03 PM
Chào mọi người! tôi có một vấn đề mà không biết giải quyết như thế nào, nhờ mọi người giúp đỡ.
Tôi muốn dùng thanh sroll (thanh trượt dưới cùng của bảng tính), che dấu tất cả các sheet ở dưới không cho thấy, nhưng yêu cầu người khác không thể kéo ra để xem được và chỉnh sửa được, cũng như không thấy các sheet khác.
Cảm ơn rất nhiều.

volga
06-02-09, 02:09 PM
Chào mọi người! tôi có một vấn đề mà không biết giải quyết như thế nào, nhờ mọi người giúp đỡ.
Tôi muốn dùng thanh sroll (thanh trượt dưới cùng của bảng tính), che dấu tất cả các sheet ở dưới không cho thấy, nhưng yêu cầu người khác không thể kéo ra để xem được và chỉnh sửa được, cũng như không thấy các sheet khác.
Cảm ơn rất nhiều.

Sau bạn không Alt+F11 mà ẩn sheet bạn ,Củng khó tìm thấy sheet bạn ẩn đó
Thân

hoangdanh282vn
06-02-09, 02:20 PM
Chào mọi người! tôi có một vấn đề mà không biết giải quyết như thế nào, nhờ mọi người giúp đỡ.
Tôi muốn dùng thanh sroll (thanh trượt dưới cùng của bảng tính), che dấu tất cả các sheet ở dưới không cho thấy, nhưng yêu cầu người khác không thể kéo ra để xem được và chỉnh sửa được, cũng như không thấy các sheet khác.
Cảm ơn rất nhiều.

Bạn bấm Alt+F11, doubleclick vào this workbook và paste đoạn code này vào khung soạn thảo. Sau đó thoát ra ngoài xem thử kết quả


Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWindow.TabRatio = 0
End Sub

tuanfkt
06-02-09, 02:21 PM
Vấn đề là mình muốn mọi người không thấy cái "đáy" đó, khi cần chỉnh sửa chỉ một mình tôi kéo được thanh scroll đó ra mà thôi.

Mình dùng đoạn code như bạn DANH vẫn không được.
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWindow.TabRatio = 0
End Sub

ndu96081631
06-02-09, 02:29 PM
Vấn đề là mình muốn mọi người không thấy cái "đáy" đó, khi cần chỉnh sửa chỉ một mình tôi kéo được thanh scroll đó ra mà thôi.
Vậy bạn ẩn Sheet tab đi là được rồi... cần gì làm chuyện vô bổ kia chứ!
Vào menu Tools\Options... trong tab View, bỏ chọn Sheet Tabs
Có điều nếu bạn ẩn được thì người ta vẫn có cách mở được (cho dù bạn có dùng VBA để khóa)

Po_Pikachu
06-02-09, 02:31 PM
Bạn nhấn Alt + F11. Sao đó Nhấp đúp chuột vào ThisWorkbook. Chép đoạn code trên vào trong trang trắng đó.
Sau đó quay trở lại bảng tính thử nhấp vào 1 tên sheet xem.
Thân.


Bạn bấm Alt+F11, doubleclick vào this workbook và paste đoạn code này vào khung soạn thảo. Sau đó thoát ra ngoài xem thử kết quả


Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWindow.TabRatio = 0
End Sub
Không dùng code này mới đáng sợ.

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
ActiveWindow.TabRatio = 0
End Sub
Thân.

volga
06-02-09, 02:35 PM
Mình dùng đoạn code như bạn DANH vẫn không được.
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWindow.TabRatio = 0
End Sub



Bấm Alt+F11
Ngay chổ Visible Chọn 2-XlsheetVeryHidden

Đóng lại rồi xem thử đi ,có mất tiêu không ?

tuanfkt
06-02-09, 02:35 PM
Vậy bạn ẩn Sheet tab đi là được rồi... cần gì làm chuyện vô bổ kia chứ!
Vào menu Tools\Options... trong tab View, bỏ chọn Sheet Tabs
Có điều nếu bạn ẩn được thì người ta vẫn có cách mở được (cho dù bạn có dùng VBA để khóa)

Ý mình là vậy nhưng không có cách nào khóa không bạn.

Po_Pikachu
06-02-09, 02:39 PM
Ý mình là vậy nhưng không có cách nào khóa không bạn.
Vậy dùng code này xem.

Sub chay()
ActiveWindow.DisplayWorkbookTabs = False
End Sub
(Đặt code trên trong Module)
Hoặc:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
ActiveWindow.DisplayWorkbookTabs = False
End Sub
(Đặt code trên trong ThisWorkbook).
Thân.

tuanfkt
06-02-09, 02:43 PM
Bấm Alt+F11
Ngay chổ Visible Chọn 2-XlsheetVeryHidden

Đóng lại rồi xem thử đi ,có mất tiêu không ?

Vậy là từng sheet mình phải chọn 2-XlsheetVeryHidden
đúng không bạn?

volga
06-02-09, 02:49 PM
Vậy là từng sheet mình phải chọn 2-XlsheetVeryHidden
đúng không bạn?

Đúng rồi ,chưa chắc ai củng biết món này đâu ,mà ít ai nghỉ đến chiêu này, mình thắng độ liên tục đó --=0

tuanfkt
06-02-09, 02:51 PM
Vậy dùng code này xem.

Sub chay()
ActiveWindow.DisplayWorkbookTabs = False
End Sub
(Đặt code trên trong Module)
Hoặc:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
ActiveWindow.DisplayWorkbookTabs = False
End Sub
(Đặt code trên trong ThisWorkbook).
Thân.
Cảm ơn bạn! đặt code trong workbook thì mới được, vậy khi cần "mở" ra thì chọn true là được phải không?

ndu96081631
06-02-09, 02:52 PM
Ý mình là vậy nhưng không có cách nào khóa không bạn.
Cách khóa đượng nhiên có! Ví dụ chạy đoạn code này:


Sub Test()
ActiveWindow.DisplayWorkbookTabs = False
Application.CommandBars("Tools").Controls.Item("Options...").Enabled = True
End Sub

Ngon hơn nữa thì cho nó vào sự kiện Open ---> Mỗi khi mở file là nó khóa Options luôn
Tuy nhiên, như tôi đã nói... dù bạn khóa VBA thì người ta vẫn mở được (khóa người ngay thôi)

Po_Pikachu
06-02-09, 02:57 PM
Nhưng khóa Sheet Tabs rồi mà Sheet đó vẫn tồn tại thì vẫn có thể xem được đó. Chấp luôn cách khóa Options và VBA luôn.
Đó là dùng phím tắt Ctrl + Page Up và Ctrl + Page Down.
Vậy để không cho người ta thấy 1 Sheet nào thì viết code như vầy:

Sub An()
Sheets("TenSheet").Visible = 2
End Sub


Sub mo()
Sheets("TenSheet").Visible = -1
End Sub
Thân.

tuanfkt
06-02-09, 04:36 PM
Cách khóa đượng nhiên có! Ví dụ chạy đoạn code này:


Sub Test()
ActiveWindow.DisplayWorkbookTabs = False
Application.CommandBars("Tools").Controls.Item("Options...").Enabled = True
End Sub

Ngon hơn nữa thì cho nó vào sự kiện Open ---> Mỗi khi mở file là nó khóa Options luôn
Tuy nhiên, như tôi đã nói... dù bạn khóa VBA thì người ta vẫn mở được (khóa người ngay thôi)

Bạn ơi! khi mình muốn trở về "mái nhà xưa" mình xóa hết đoạn code trên mà sao không được. Mong bạn giúp đỡ. Cảm ơn!

Po_Pikachu
06-02-09, 04:43 PM
Thì bạn phải chỉnh lại code cho nó True trước đã. Chạy lại code để Excel cập nhật là thông số kỹ thuật.
Sau khi việc đã đâu vào đấy thì ta mới xóa code chứ!
Thân.

tuanfkt
07-02-09, 07:31 AM
Thì bạn phải chỉnh lại code cho nó True trước đã. Chạy lại code để Excel cập nhật là thông số kỹ thuật.
Sau khi việc đã đâu vào đấy thì ta mới xóa code chứ!
Thân.
Cảm ơn bạn! mình đã làm được rồi, chúc mừng năm mới.