Chiêu s 12: To riêng mt thanh công c cho riêng mt bng tính c th
Bạn đã tng to ra thanh công c riêng cho mình? Bn có thy rng, thanh công c này
luôn luôn được np vào Excel, và luôn hin th, vi bt k bng tính o, vi bt k
ngưi s dng nào? Có bao gi, bn mun rng, thanh công c t to này chđược hin
th vi mt bng tính c thể nào đó mà thôi không?
Ví d, bn t to ra mt thanh công c có cha những nút dùng để h tr vic nhp
công thc và x lý bng (nhng du =, +, -, *, /, nhng nút dùng để xóa hàng, xóa ct,
v.v...), tm gi thanh ng c A, phc v riêng cho bng tính B. Và bn mun, làm thế
o để ch khi bn m bng tính B, thì mi thy thanh công c A ca bn, còn m bng
tính khác, thì ch thy nhng thanh công c mc định ca Excel? Thm chí trong cùng
mt ca sổ Excel, nhưng khi bạn kích hot bng tính B, thì mi thy thanhng c A,
còn khi nhấn Ctrl+Tab để chuyn sang bng tính khác, thì thanh công c A này s biến
mt?
Thiết nghĩ, chắc hẳn đã c bn mun điu tôi va nói. Vì nó giúp cho thanh công c
ca Excel luôn gọn gàng, ngăn nắp (luôn là thanhng c mặc định ca Excel), nếu
không phi là bn, mà là người khác, thì không gì b ng vi thanh công c l hoc;
hoc là, ch khi nào m bng tính B ra, thì mi cần đến thanh công c A, còn bình
thường thì chng cn...
Vic này, không cókhó. Bn ch cn chèn một đoạn code đơn giản vào trong "Private
module" ca bng tính.
Trước hết, bn hãy to cho riêng mình mt thanh công cụ. Đặt tên cho nó là
"MyCustomToolbar" chng hn.
Tiếp theo, bn nhn Alt+F11 để m ca s Microsoft Visual Basic, nhấn đúp vào This
workbook trong khung Project. Bn cũng có th làm nhanh vic này bng cách nhn
nút phi chut vào cái biu tưng Excel bé tí nm ngay n trái menu File, ri chn
View Code, ca s VBA cũng sẽ m ra vi This workbook được chn sn:
Nhn phi chut vào biểu tượng Excel nh bên trái menu File ri chn View Code
Ri, nhập vào hai đoạn code sau đây:
PHP Code:
Option Explicit
--------------------------------------------------------------------
Private Sub Workbook_Activate()
On Error Resume Next
With Application.CommandBars("MyCustomToolbar")
.Enabled = True
.Visible = True
End With
On Error GoTo 0
End Sub
--------------------------------------------------------------------
Private Sub Workbook_Deactivate()
On Error Resume Next
Application.CommandBars("MyCustomToolbar").Enabled = False
On Error GoTo 0
End Sub
Bn có th thay thế "MyCustomToolbar" bng cái tên mà bn đã đặt cho thanh công c
Comment [1]:
BEGIN TEMPLATE:
bbcode_php
Comment [2]:
END TEMPLATE:
bbcode_php
t to ca bạn. Sau đó bạn nhn Alt+Q để tr v Excel.
Để th, bn hãy m thêm mt bng tính na, Book2.xls chng hn. Bn s thy, khi nào
bn chn bng tính mà có đoạn code trên, thì bn mi thy "MyCustomToolbar", còn
nếu chn Book2 (chuyn đi qua li gia các bng tính bng Ctrl+Tab),
"MyCustomToolbar" biến mt! Chn li bảng tính ban đầu, "MyCustomToolbar" xut
hin li. Vy thànhng ri!
Được voi đòi tiên.y gi, gi s bn mun rng, trong cùng mt bng tính, nhưng chỉ
có Sheet1 thì mi thy "MyCustomToolbar", còn Sheet khác thì không?
Được thôi. Bn có th viết thêm mt "Level" nữa cho đoạn code trên. Hãy bảo đảm là
bạn đang chọn bng tính có cha code (tt nht là bạn đóng cái Book2 đi). Quay trở li
ca s VBA, bn hãy nhn phi chut vào Sheet nào mà bn mun thy
"MyCustomToolbar", ri chn View Code (hoc nhấn đúp vào tên Sheet đó cũng đưc).
đây tôi giả s bn chn Sheet1.
Nhp vào hai đoạn code sau đây:
PHP Code:
Option Explicit
--------------------------------------------------------------------
Private Sub Worksheet_Deactivate()
On Error Resume Next
Application.CommandBars("MyCustomToolbar").Enabled = False
On Error GoTo 0
End Sub
--------------------------------------------------------------------
Private Sub Worksheet_Activate()
On Error Resume Next
With Application.CommandBars("MyCustomToolbar")
.Enabled = True
.Visible = True
End With
On Error GoTo 0
End Sub
Ri nhn Alt+Q để quay li Excel. Bây gi, bn hãy dùng chut hoc nhn
Ctrl+PgUp/Ctrl+PgDn để chn qua li các Sheet và xem th cái gì xut hin trên màn
hình.
Xin đính kèm theo đây bảng tính đã có sn những đon code nói trên, cùng mt
"MyCustomToolbar" làm ví d.
Cũng xin nhắc li, chu này ch có tác dng vi nhng phiên bản trước Excel2007.
Comment [3]:
BEGIN TEMPLATE:
bbcode_php
Comment [4]:
END TEMPLATE:
bbcode_php