0o -.......Forum 361dodesign.com.......- o0
Hãy tham gia diễn đàn 361dodesign ngay hôm nay và hãy đăng ký thành viên để có thể xem hiển thị hết diễn đàn + links download + và chia sẻ kinh nghiệm..v..v..!!!!!!!!!!!!!!!!!!!!!!
Chúc các bạn một ngày vui vẻ..
0o -.......Forum 361dodesign.com.......- o0
Hãy tham gia diễn đàn 361dodesign ngay hôm nay và hãy đăng ký thành viên để có thể xem hiển thị hết diễn đàn + links download + và chia sẻ kinh nghiệm..v..v..!!!!!!!!!!!!!!!!!!!!!!
Chúc các bạn một ngày vui vẻ..
0o -.......Forum 361dodesign.com.......- o0
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

0o -.......Forum 361dodesign.com.......- o0

Dịch vụ Thiết kế - In ấn - In Offset - Thế giới Thiết kế - Download phần mềm - Download Vector Free - Hỗ trợ Forum
 
Trang ChínhGalleryLatest imagesTìm kiếmĐăng kýĐăng Nhập

 

 Giới hạn vùng cuộn của bảng tính

Go down 
Tác giảThông điệp
hoahongtim3333

hoahongtim3333


Tổng số bài gửi : 141
Điểm tích lũy : 4870
Thích : 12
Tham gia : 03/02/2012

Giới hạn vùng cuộn của bảng tính Empty
Bài gửiTiêu đề: Giới hạn vùng cuộn của bảng tính   Giới hạn vùng cuộn của bảng tính EmptyMon Feb 27, 2012 11:40 am

Nếu bạn không muốn thanh cuộn kéo bảng tính lên xuống
hoặc qua phải nhiều, hoặc bạn có dữ liệu ở 1 vùng nào đó mà không
muốncho nguời dùng xem, bạn có thể giới hạn vùng nhìn được của bảng tính
trong phạm vi bạn cho phép.

Các bảng tính tạo bởi Excel 2007 có số cột tối đa
16.384, Excel trước đó là 256 (từ A đến IV), và có số dòng tối đa là
1.048.576 (trước đó là 65.536). Nhưng thường thì bạn hiếm khi sử dụng
hết. Bạn có thể giới hạn chỉ cho người dùng xem trong 1 phạm vi nào đó,
còn dữ liệu nhạy cảm, bạn để ngoài vùng đó. Ngoài ra nó còn hạn chế khi
ai đó vô tình kéo thanh cuộn xuống dòng 500.000 và đến lượt người khác
la làng rằng kéo mãi chẳng thấy cái gì mà xem.

Bạn có thể dùng cách đơn giản là dấu (Hide) những
dòng và cột muốn dấu hoặc bằng cách định nghĩa 1 vùng cho phép xem hoặc
chỉ kích hoạt vùng có dữ liệu.


1. Dấu dòng và cột:
Cách dễ nhất là dấu những dòng và cột không dùng đến:
Trên sheet hiện hành, xác định dòng cuối có dữ liệu,
nhấn chọn dòng dưới nó, nhấn thêm cùng lúc Ctrl + Shift + mũi tên xuống
để chọn đến cuối dòng cuối cùng (1.048.576). Sau đó trong tab Home, chọn
Format Hide & Unhide – Hide Rows trong Excel 2007 hoặc Format - Row
- Hide trong 2003 trở về trước, hoặc click phải chuột và chọn Hide.

Làm tương tự như vậy để dấu những cột không dùng đến:
tìm cột cuối, click chọn cột kế bên, nhấn Ctrl + Shift + mũi tên sang
phải, chọn hide columns.

Kết quả như hình, vùng làm việc bị trùm 1 màu tăm tối chung quanh và chẳng ai có thể kéo đi đâu được nữa:




Giới hạn vùng cuộn của bảng tính Hack08-01


2. Xác định 1 vùng sử dụng bằng Property:
Bằng cách sử dụng Property của sheet trong VBA, bạn có thể ấn định vùng làm việc trong phạm vi mong muốn. Thực hiện như sau:
Nhấn chuột phải vào tên sheet trong tab Sheet Names,
chọn View code, hoặc nhấn Alt + F11, chọn đúng tên sheet trong cửa sổ
Project Explorer, rồi xuống khung Property, tìm dòng ScrollArea gõ vào
địa chỉ vùng mong muốn thí dụ $A$1:$H$50.




Giới hạn vùng cuộn của bảng tính Hack08-02


Quay trở lại bảng tính và thử kéo thanh cuộn, ta thấy
chỉ có thể cuộn xuống đến dòng 50 và cuộn ngang đến cột H là tối đa,
không cuộn được nữa.

Tuy vậy, Excel không lưu tính chất này khi lưu bảng
tính, nên lần sau mở file lên phải set Property lại. Do đó ta phải viết 1
đoạn code thực hiện điều này mỗi khi kích hoạt sheet. Vào vùng soạn
thảo code của đúng sheet mình muốn, chọn sự kiện worksheet_activate:




PHP Code:


Private Sub Worksheet_Activate ( )

Me.ScrollArea = "A1:H50"

End Sub






Bây giờ mỗi khi kích hoạt bảng tính, VBA sẽ ấn định vùng giới hạn như mong muốn.
Mặc
dù không có vùng bao quanh tăm tối như cách trên, nhưng bạn không thể
nào cuộn ra khỏi vùng, bạn cố chọn 1 ô nằm ngoài vùng cho phép cũng
không được, kể cả cột I, J, K dù bạn có ngó thấy cũng chỉ để thèm thôi.

Thậm
chí với những đoạn code VBA bạn tạo sau này, trong đó có câu lệnh
select 1 vùng nằm ngoài vùng cho phép, hoặc chọn nguyên cột nguyên dòng,
cũng không chọn được.

Để có thể thực thi các đoạn code trên bạn phải cho vào code 2 dòng lệnh:
Đầu code thêm dòng: ActiveSheet.ScrollArea = ""
Cuối code thêm dòng: ActiveSheet.ScrollArea = "$A$1:$G$50"
Thí dụ:




PHP Code:


Sub MyMacro( )

ActiveSheet.ScrollArea = ""

Range("Z100").Select

Selection
.Font.Bold = True

ActiveSheet
.ScrollArea = "$A$1:$G$50"

Sheets("Daily Budget").Select

ActiveSheet
.ScrollArea = ""

Range ("T500").Select

Selection
.Font.Bold = False

ActiveSheet
.ScrollArea = "$A$1:$H$25"

End Sub






Đoạn
code trên chọn ô Z100 trong sheet hiện hành và định dạng in đậm. Sau đó
chọn ô T500 trong sheet khác, định dạng in thường (không đậm). Trước
khi thực hiện chọn và định dạng ở sheet nào, phải set vùng cuộn sheet đó
là “”. Sau khi định dạng,set trả vùng giới hạn cuộn theo mong muốn.


3. Chỉ kích hoạt vùng dữ liệu hiện hành:

Phương pháp này linh hoạt hơn, tự động giới hạn vùng cuộn bảng tính vừa bằng vùng dữ liệu của bảng tính mà bạn đặt code sau:



PHP Code:


Private Sub Worksheet_Activate( )

Me.ScrollArea =Me.UsedRange. Address

End Sub






Đoạn
code trên sẽ chạy mỗi khi bạn kích hoạt bảng tính mà bạn đặt code. Dù
vậy cũng có hạn chế là bạn không thể thêm dữ liệu vào dòng mới hoặc cột
mới. Bạn có thể mở rộng vùng giới hạn ra thêm 5 dòng và 2 cột bằng đoạn
code sau:




PHP Code:


Private Sub Worksheet_Activate()

With Me.UsedRange

Me
.ScrollArea = .Resize(.Rows.Count + 5, .Columns.Count + 2).Address

End With

End Sub






Còn nếu bạn muốn hơn nữa, nhập liệu thêm 1 cách thoải mái, thì dùng 1 đoạn code nhằm reset vùng cuộn bằng nguyên sheet:



PHP Code:


Sub ResetScrollArea( )

ActiveSheet.ScrollArea = ""

End Sub






Bạn
có thể gán short key (phím tắt) cho đoạn code này bằng cách nhấn Alt
F8, chọn macro ResetScrollArea, nhấn nút option, và gán 1 phím tắt thí
dụ Ctrl + W.





Giới hạn vùng cuộn của bảng tính Hack08-03 Giới hạn vùng cuộn của bảng tính Hack08-04
Sau
này mỗi khi bạn muốn nhập liệu, nhấn Ctrl + W trước khi nhập liệu. Khi
nhập liệu xong, chỉ cần bạn kích hoạt 1 sheet khác xong quay lại sheet
này, vùng cuộn lại bị giới hạn bởi đoạncode trên (
Worksheet_Activate())
Về Đầu Trang Go down
 
Giới hạn vùng cuộn của bảng tính
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Cho phép sử dụng tính năng Group and Outline trên bảng tính bị khoá
» Tùy biến cửa sổ làm việc của bảng tính
» Tự thiết kế một bảng tính mẫu (template)
» Cứu dữ liệu từ một bảng tính bị lỗi
» Tạo hiệu ứng 3D trong các bảng tính hay các ô

Permissions in this forum:Bạn không có quyền trả lời bài viết
0o -.......Forum 361dodesign.com.......- o0  :: Phần mềm ứng Văn Phòng :: Tin học văn phòng - Microsoft Office :: Microsoft Office Excel-
Chuyển đến