1. Trang chủ
  2. » Công Nghệ Thông Tin

30 tuyệt chiêu trong EXCEL

118 974 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 118
Dung lượng 7,69 MB

Nội dung

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH Cho dù rằng, việc này có vẻ không cần thiết với những bảng tính nhỏ, nhưng bảo đảm rằng, nếu bạn quan tâm đến điều tôi vừa n

Trang 2

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

2

Các tuyệt chiêu trong Excel

PHẦN 1: Chương 1 và Chương 2

Chương 1 GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH 4 

1 Tùy biến cửa sổ làm việc của bảng tính 10 

2 Nhập dữ liệu đồng thời vào nhiều Sheet 13 

3 Ngăn chận người sử dụng thực hiện một số hành động nào đó nhất định 16 

4 Ngăn chặn các nhắc nhở không cần thiết 20 

5 Ẩn Sheet sao cho người khác không thể dùng lệnh Unhide để hiện ra 23 

6 Tự thiết kế một bảng tính mẫu (template) 24 

7 Tạo chỉ mục cho các Sheet trong Workbook 28 

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

9 Khóa và bảo vệ những ô có chứa công thức 35 

10 Sử dụng định dạng theo điều kiện để tìm dữ liệu trùng 39 

11 Tìm dữ liệu xuất hiện hai hoặc nhiều lần bằng công cụ Conditional Formating 41 

12 Tạo riêng một thanh công cụ cho riêng một bảng tính cụ thể 42 

13 Sao chép công thức giữ nguyên tham chiếu tương đối (giống như sao chép tham chiếu tuyệt đối) 44 

14 Gỡ bỏ những liên kết ma 45 

15 Giảm kích thước file Excel bị phình to bất thường 47 

16 Cứu dữ liệu từ một bảng tính bị lỗi 50 

Trang 3

MỤC LỤC

3

Chương 2 NHỮNG THỦ THUẬT VỚI CÁC TÍNH NĂNG CÓ SẴN TRONG EXCEL 54 

17 Sử dụng Data Validation khi danh sách nguồn nằm trong một Sheet khác 55 

18 Điều khiển Conditional Formating bằng checkbox 57 

19 Đánh dấu những ô chứa công thức bằng Conditional Formatting 60 

20 Đếm hoặc cộng những ô đã được định dạng có điều kiện 61 

21 Tô màu dòng xen kẽ 64 

22 Tạo hiệu ứng 3D trong các bảng tính hay các ô 66 

23 Bật, tắt chức năng Conditional Formatting bằng một checkbox 71 

24 Dùng nhiều List cho một Combobox 72 

25 Tạo một list xác thực thay đổi theo sự lựa chọn từ một list khác 74 

26 Sử dụng chức năng thay thế (Replace) để gỡ bỏ các ký tự không mong muốn 77 

27 Chuyển đổi con số dạng văn bản sang số thực 78 

28 Trích xuất dữ liệu số trong một chuỗi bằng VBA 79 

29 Tùy biến chú thích của ô bảng tính 82 

30 Sắp xếp theo thứ tự dựa theo nhiều hơn ba cột 85 

31 Sắp xếp ngẫu nhiên 86 

32 Thao tác trên dữ liệu với Advanced Filter 87 

33 Tạo các định dạng số cho riêng bạn 93 

34 Tăng thêm số lần Undo cho Excel 99 

35 Tự tạo danh sách để fill 100 

36 Làm nổi các Subtotal của Excel 102 

37 Chuyển đổi các hàm và công thức trong Excel thành giá trị 105 

38 Thêm dữ liệu vào danh sách Validation một cách tự động 107 

39 Ngày tháng trong Excel 109 

40 Cho phép sử dụng tính năng Group and Outline trên bảng tính bị khoá 112 

41 Bẫy lỗi để trống dữ liệu 114 

42 Giảm danh sách xổ xuống của Validation sau khi chọn một 116 

43 Thêm các danh sách có sẵn và cả danh sách tự tạo vào menu chuột phải 117 

Trang 4

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

Chương 1

GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Trong quá trình thực hiện một bảng tính, chúng ta có thể mắc phải vô số lỗi, hoặc có thể mắc phải những sai lầm ngớ ngẩn, và thường không để ý tới những cái có thể giúp chúng

ta xử lý bảng tính nhanh hơn, gọn gàng hơn

Trước khi nói đến các Tuyệt chiêu của Excel, xin nói sơ qua một chút về một số thủ thuật

và quy tắc cơ bản, những điều sẽ giúp các bạn thực hiện những Tuyệt chiêu được nói đến trong các phần sau cách dễ dàng hơn

Excel là một phần mềm bảng tính rất mạnh, và bạn có thể làm được những điều không thể tin nổi với nó Nhưng không may, có nhiều người thiết kế bảng tính của mình với quá nhiều

sự "lo xa", cẩn thận quá mức cần thiết, và làm cho nó trở nên phức tạp hơn là nó đáng bị như vậy Phần mở đầu này sẽ mách cho bạn một số thủ thuật và quy tắc mà nếu bạn làm theo, bạn sẽ thấy chúng rất hiệu quả

Quy tắc 80/20

Có lẽ việc quan trọng nhất khi thực hiện một bảng tính là dành một thời gian để nghiên cứu, xem xét cách bố trí dữ liệu, tính trước những việc mình cần làm Và đừng bao giờ nghĩ rằng sau khi hoàn thành, tôi sẽ không cần phải thêm vào đó các dữ liệu hoặc các công thức khác, vì bạn sẽ luôn làm ngược lại

Điều này có nghĩa rằng, bạn nên dành khoảng 80% thời gian để lên kế hoạch cho một bảng tính và khoảng 20% thời gian để thực hiện bảng tính đó

Trang 5

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Cho dù rằng, việc này có vẻ không cần thiết với những bảng tính nhỏ, nhưng bảo đảm rằng, nếu bạn quan tâm đến điều tôi vừa nói ở trên, thì về lâu về dài, bạn sẽ tránh được những cực nhọc khi phải cứ phải sửa đi sửa lại bảng tính của mình, và dễ dàng thực hiện được những bảng tính lớn sau khi đã dành cho nó một thời gian để lên kế hoạch thực hiện Nên nhớ rằng, các bảng tính phải luôn mang lại cho người dùng những thông tin chính xác, chứ không phải là thông tin chỉ chính xác trong một trường hợp nào đó

Những mẹo nhỏ về cấu trúc một bảng tính

Một trong những lỗi mà chúng ta hay mắc phải khi tạo một bảng tính, là chúng ta không

thiết lập và trình bày dữ liệu theo cái cách mà Excel và các tính năng của nó mong đợi

Sau đây là một số lỗi phổ biến chúng ta hay mắc phải khi thiết lập một bảng tính:

– Bố trí dữ liệu trong nhiều bảng tính (Workbook) khác nhau – Bố trí dữ liệu trong nhiều trang tính (Worksheet) khác nhau – Bố trí dữ liệu trong nhiều bảng (Table) khác nhau

– Có những hàng trống và cột trống trong khối dữ liệu (database) – Bỏ trống những ô có dữ liệu giống nhau (cùng chung một ngày, cùng chung một

đơn vị tính, v.v )

Ba điểm đầu tiên trên đây chỉ muốn nói đến một điều: Bạn nên luôn luôn cố gắng để giữ các mối liên quan giữa các dữ liệu được liên tục trong cùng một bảng dữ liệu Tôi đã thấy rất nhiều các bảng tính không được trình bày theo cái quy tắc rất đơn giản này, và chính vì vậy, các bảng tính đó không thể tận dụng được tối đa các tính năng mạnh mẽ của Excel như PivotTable, SubTotal Bạn chỉ có thể sử dụng các tính năng này khi bạn gom hết dữ liệu của bạn vào trong một bảng thật đơn giản

Không phải ngẫu nhiên mà Excel có 1.048.567 hàng (65.536 hàng trong Excel 2003 trở về trước) mà lại chỉ có 16.384 cột (256 cột trong Excel 2003 trở về trước) Điều này có ý nói rằng, bạn nên thiết lập dữ liệu của mình với các tiêu đề cột nằm ở hàng trên cùng, và các dữ liệu

có liên quan thì nằm liên tục ở bên dưới tiêu đề của nó

Nếu như bạn có những dữ liệu được lặp lại hai lần hoặc nhiều lần trong các hàng của cùng một cột (các ngày tháng, các loại đơn vị tính chẳng hạn), bạn hãy chống lại sự cám dỗ bỏ trống các ô đó

Hãy cố gắng sắp xếp (sort) dữ liệu của bạn bất cứ khi nào có thể Excel có rất nhiều những công cụ để tìm kiếm và tham chiếu công thức, và một số không nhỏ trong đó, đòi hỏi dữ liệu phải được sắp xếp theo một thứ tự hợp lý Việc phân loại cũng sẽ giúp ích đáng kể cho tốc độ xử lý của một số các hàm

Những mẹo nhỏ khi định dạng

Ngoài việc thiết kế cấu trúc của bảng tính cho hợp lý, việc định dạng cho nó cũng là một vấn đề cần bàn đến Mặc dù một bảng tính nên được định dạng sao cho dễ đọc và dễ theo dõi, nhưng chúng ta ít khi nghĩ đến việc sử dụng thời gian cho có hiệu quả Hãy luôn luôn

định dạng thật đơn giản Rất nhiều người lãng phí thời gian vào việc định dạng một bảng tính mặc dù không nhất thiết phải làm như vậy, và chính điều này làm ảnh hưởng đến hiệu quả công việc

Trang 6

àng này sẽAdvanced Fi

MAX, v.v

ũng đừng qhững dữ liệ

ữa, là nên b

ẽ được dùnilter, hoặc d)

quan tâm đế

u kiểu số, v

ổi nó Nếu b

g đó là dữ likhi tham ch

t ra nó là te

Chỉ có tiêu đ

ng các ô the

c ô đã được bạn nghĩ rằn

g cho một b

bỏ trống và

ng cho nhữdùng làm vù

ến việc can

và canh tráibạn thay đổ

ài hàng đầu

ững tính năùng điều ki

nh lề cho dữ cho những

ổi kiểu canhhay dữ liệu

ột ô, vì nhiề

n thay đổi k

g tính là đượ

t khi thật sựtrước theo knhập vào là hứa công thứ

n cùng (ít nhcao hơn vềcông thức

bị chuyển t

ểu số hay dữiếu đến mộchung, bạn

g

Trộn cá

là một công thứthể chạyđược trtrộn ô, năng Ce

nằm

Alignme

tên ở dư

mở ra htab Alig

Bạn sử của khu

Center A

Hoặc bạclick rồishortcut

và màu xámhất là 3 hàn

cả những dữthành dữ liệ

enter across

trong H ent, nhấn v

ưới cùng bhộp thoại

nment đượcdụng thanhung Horizon Across Sele

h được ngayhầm lẫn choong ô đó làhức đầu với

ên, thay vìdùng chức

t

g ư,

o ,

g

ô

g ố

g

ã

ì

c ,

i ẽ

i

c

n

-:

n

Trang 7

à A1:H1048vào trong m

ói quen vô

ì ạch, thậm

ếu ra khỏi c

ập nhật tron

ước) hoặc sửnữa thường chậm khi d

ãy chuyển đtrái phía tr

8567, và bạmảng

cùng tai hạchí là khôncông thức, m

ng tham chi

ử dụng các Nxảy ra với

dữ liệu được

đổi chế độrên của bản

ột dữ liệu nàliệu từ A1 đ

những bảng

c cập nhật

tính toán củ

ng tính, rồi họn Manual

Manual Caculatio

IỆC VỚI BẢN

cho nó thamkiểm tra hàn

ào

đến H1000,

ữ liệu cần thbạn tạo tham

g tính lớn, m

Để giải qu

ủa Excel thchọn Exce

m chiếu troniếu của bạn vậy thì bạn s

nh xa nó B

có thể loại những dữ li

ng cách dùng

mà cấu hìnhuyết vấn đề hành dạng M

l Options

07

n toàn bộ cánếu không n

yết định sẽ dbạn còn ph

Manual: Nh

→ Formulas

ác cột trongnói là hàng

dùng nhữnghải bổ sung

ức đến toàn

à A:H, hoặclắng gì khi

m cho bảngphần không

m vào sẽ tự

st trong Excel

hỏ, là Excelhường đượchấn vào nút

Trang 8

hạy chậm lạoăn toăn vẵng thức ch

mă lăm tiếp?

hông ngần n

ằng cần phải

ạn nín suy nông thức m

ốt khi tham

hững dêy dữmảng tham c

ó dừng hẳn xcel có nhiề

ề cập đến tr

âc ô Ngoăi hức trín nhữ

com

H

ời khuyín đgiờ cũng có oân Manual

u muốn có

úc năo bạn ccđn nhắc xe

ại, bạn sẽ s

ăo câi thắng

ho nó chạy n

? Hầu như ngại đặt bả

i đặt bảng tnghĩ đến việmảng lă một chiếu đến

ữ liệu lớn, thiếu đến mluôn, vă bạ

ều hăm chuong chiíu th

ra, trong E

ững bảng dữ

Hình 3 - Chọn M

đó thì khôngnhững công

l, có thể bạnđược thôngcũng nhớ điem: Nếu nhsửa lại cần

g tay? Nghĩnhanh hơn,chúng tôi k

ảng tính củảnh của mìn

ệc thiết kế ltrong nhữnnhững ô riíthì hêy sử dụmột dêy dữ li

ạn bắt buộc puyín xử lý n

hứ 79: TrânExcel Help c

hư cần thắngthắng chđn

ĩa lă, khi b, hay lă đặt không bao g

a họ trong c

nh trong chếlại bảng tính

ng nguyín níng lẻ Như

ụng chúng ciệu lớn, hiệuphải dùng cnhững dữ liệ

g chđn bị kẹ

n, hay lă gỡ

ảng tính củ

nó văo chếgiờ lăm điềchế độ tính

ế độ tính toâ

h

nhđn của vấ

ưng nếu bạncăng ít căng

u suất của bchế độ tính t

h tổng (SUM

ay sẽ giúp bheo những t

ưng rất nhiềual Nếu nhthì mới lăm

Chúng lă múng để tham

CỦA EXCEL

ó Một bảng

g tính tronghưa hề đượchắc chắn lă

ê

y ,

Trang 9

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Hoặc bạn có thể sử dụng PivotTable, sẽ được đề cập đến trong phần thứ 4 của loạt bài này Mặc dù PivotTable thì có vẻ phức tạp khi bạn sử dụng nó lần đầu tiên, nhưng chúng tôi thành thật khuyên bạn hãy học cách sử dụng nó Một khi bạn đã làm chủ được PivotTable, ngày nào đó bạn sẽ tự hỏi rằng làm sao tôi có thể sống mà không có PivotTable!

Trước khi kết thúc phần mở đầu, xin nói điều này: Nếu bạn chẳng nhớ được gì (vì tôi nói nhiều quá), bạn chỉ cần nhớ một chuyện thôi: Excel sẽ chạy tốt hơn nếu tất cả các dữ liệu của bạn được xếp liên tục với nhau trong cùng một bảng Nó sẽ giúp cho bạn thực hành các chiêu sau đây một cách dễ dàng hơn

-

Trong các bài, sẽ có một số biểu tượng sau:

Áp dụng cho tất cả các phiên bản của Excel Chỉ áp dụng cho Excel 2007

Chỉ áp dụng cho những phiên bản trước Excel 2007 Chỉ áp dụng cho Excel 2003 và Excel XP

Chỉ áp dụng cho Excel 2000 Những chiêu dễ, dành cho mọi người

Những chiêu tương đối khó, dành cho những ai có trình độ khá trở lên

Những chiêu khó, dành cho những ai đã sử dụng thành thạo Excel

Các mẹo giúp cho bạn làm việc với Excel nhanh hơn

Các chú ý, cảnh báo

Trang 10

ĐmTrchĐ

Từ

Al

chN

phapexcel.c

ôi khi làm màn hình củarong bài nàyhức

ầu tiên, bạn

ừ cửa sổ làm

ll (Excel2003

họn thì hãy Nếu chọn kiể

h một tập tin

Excel, bạn

m cho nó dễcách thực h

t cả các bản

bảng tính cùntin bảng tính

có thể cần

ễ dàng sử dụhiện tổ chức

ng tính mà b

ng một lúc, bạcần mở → n

tính đang mNếu tùy chọkiểu sắp xếpch) thì các c

n phải có nh

ụng hơn ha

c cửa sổ làmbạn cần làm

ạn vào Office →nhấn nút Open

mở nào đó, c

ọn Window

p và nhấp núcửa sổ làm

c cửa sổ kiểu Til

w để sử dụng

một Workboiệu từ nhiềucách gọn gà

trong khi 003: File

e

c

Trang 11

-Hình 6

KHI LÀM V

nằm ngang)

- Sắp xếp các cửg) thì các bả

Trang 12

N

KchĐbư

(E

lưMhaMbảĐtạchbạNkhbảmkh

phapexcel.c

Nếu chọn kiể

Khi các cửa huyển dữ liệ

ể sử dụng l

ước thực h

Excel2003: Fil

ưu và nhấn nMuốn chuyển

ai lần lên tMaximize trê

ảng tính sau

ể sử dụng l

ạo thì giao dhỉnh hay cậ

ạn lưu lại khNếu mỗi ngàhuyên bạn n

ảng tính đó

mở tập tin xhông cần ph

com

ểu Cascade

sổ bảng tín

ệu giữa các lại các thiết hiện như sa

e → Save W

nút OK Tập

n đổi một bthanh Title

ên cửa sổ bả

u khi đã hoàlại không gidiện làm việ

ập nhật thôn

hi bạn ra lện

ày, bạn đều pnên dành mtùy thuộc vxlw cho kiểhải tốn thời

e (thác nước

Hình 7

nh đã đượccửa sổ

lập này sauau: Chọn ng

Workspace…)

p tin Worksp

ảng tính nà(tiêu đề)

ảng tính hiệ

àn tất công vian làm việ

ệc được bạn

ng tin trong

nh đóng Wophải thực hmột ít thời gvào yêu cầu

ểu không gigian sắp xế

c) thì các bả

7 - Sắp xếp các c

c sắp xếp g

u này, bạn cgăn View

→ nhập tênpace sẽ có p

o đó về chếcủa cửa sổ

ện hành để pviệc với cửa

c đã thiết lậ

n thiết lập t

g các bảng torkspace

hiện các côngian để thiế

u tao tác và xian làm việc

ế độ toàn mà

ổ bảng tínhphóng to cử

a sổ đó

ập trước đótrước kia sẽtính của Wo

ng việc lặp đ

ết lập các k

xử lý số liệu

c phù hợp vcác bảng tín

CÁC TUY

Tùy biến cửa s

xếp đè lên n

cade bạn sẽ rất d

đi lặp lại trêkiểu không

u của chúngvới nhu cầu

ộp File Nam

bạn chỉ cầncũng có thnhấn nút Clo

ần mở tập ti

i phục Tất

ẽ được Exce

ên nhiều bảngian làm vi

in xlw vừa

cả các hiệu

el nhắc nhở

ng tính Tôiiệc cho cácbạn chỉ việccủa bạn mà

i

c

c

à

Trang 13

nói đến cônmột lúc chắhạm vi Wor

Khi có 2 ha[Group] (trotrạng groupthường thì bviệc đã xonghàng loạt và

ằng tay

các bạn chỉnhấn Ctrl, v

p các Sheets Tbạn không để

p cái đã nhỉngười chưa

ỉ việc click vừa nhấn vàcái gì vào Snhóm Điệp

n chỉ việc hSheet trongcác Sheet ra

t group với nông) Nhìn vào

rừ khi bạn có c

ể ý đến dấu hi

hế tôi khuyên phải ungroup

ỉ? Công cụ

a dùng đến

chọn Sheet

ào tên nhữnSheet hiện h

ệu này, bạn sbạn ngay khi chúng ngay

Excel sẽ có chữ

NG TÍNH

nhiều Sh

dữ liệu muốn các Sheet lạ anh chóng v

Group dùn

Nó dùng để

t thứ nhất, n

ng Sheet kháhành, dữ liệtất nhanh ch

ng thao tác n

sau tên của bản

nhiều Sheet nhập dữ liệu hơn nếu bạn

dữ liệu vào

ác Sheet với

nhập liệu từmuốn nhập

Trang 14

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

Nhập dữ liệu đồng thời vào nhiều Sheet

Dù phương pháp này là dễ nhất, nhưng có nghĩa là bạn phải nhớ và nhớ group và ungoup khi cần, nếu không bạn sẽ vô tình ghi đè lên dữ liệu ở những Sheet mà bạn không nhìn thấy trên màn hình hiện thời Thí dụ như bạn chỉ muốn ghi cùng lúc dữ liệu vào một vùng nào đó của các bảng tính, còn ngoài vùng đó thì dữ liệu các Sheet phải khác nhau Thế nhưng khi các Sheet đã group rồi thì nó có thèm quan tâm bạn đang nhập liệu ở vùng nào

đâu?

Group các Sheet lại một cách tự động

Bạn có thể giải quyết vấn đề trên bằng cách dùng một đoạn code VBA hết sức đơn giản

Để đoạn code làm việc được, nó phải được đặt trong các sự kiện của riêng Sheet nào bạn muốn Để vào trang soạn thảo code của Sheet nào, thì click phải chuột vào tên Sheet đó và chọn View Code Bạn có thể chọn một trong các sự kiện của Sheet, những sự kiện chỉ liên quan đến Sheet đó như đổi ô chọn, thay đổi nội dung một ô, kích hoạt Sheet, thoát khỏi Sheet, … để thực thi đoạn code VBA của mình

Thường thì bạn được đưa thẳng đến trang soạn thảo code riêng của Sheet nếu bạn chọn View Code như trên hướng dẫn Bạn có thể kiểm tra lại quả thực nó thuộc về Sheet bạn chọn hay không bằng cách nhìn vào cửa sổ VBA Project bên trái, nếu bạn thấy dạng thư mục This Workbook – Sheetname và một Sheet đang chọn thì đúng; nếu không bạn phải tìm đúng Sheet bạn cần và double-click nó

Trước tiên bạn phải đặt Name cho vùng ô bạn muốn nhập dữ liệu trùng trong các Sheet, giả sử là MyRange Sau đó gõ đoạn code này vào khung soạn thảo bên phải:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Intersect(Range("MyRange"), Target) Is Nothing Then Sheets(Array("Sheet5", "Sheet3", "Sheet1")).Select Else

Me.Select End If End Sub

Trong đoạn code trên, Sheet5 được ghi đầu tiên trong mảng Array, vì bạn muốn nó là Sheet mà bạn sẽ gõ dữ liệu nhập vào Bạn có thể chọn những Sheet khác để group chúng lại bên dưới Sheet5 Sau khi gõ code xong, hoặc nhấn nút View Object, hoặc nhấn nút View

Excel Lưu bảng tính lại

Cần nhắc lại rằng đoạn code trên phải nằm trong Sheet được khai báo đầu tiên của Array,

là Sheet mà bạn sẽ nhập dữ liệu từ bàn phím

Khi bạn đã hoàn tất, mỗi khi bạn click chọn một ô nào đó trong Sheet5, đoạn code sẽ kiểm tra xem ô bạn chọn có nằm trong vùng đã đặt tên MyRange không Nếu đúng, code sẽ group các Sheet lại với nhau để bạn nhập dữ liệu hàng loạt Sheet Nếu không phải, nó ungroup chúng ra bằng cách đơn giản là kích hoạt Sheet hiện hành Dùng đoạn code trên sẽ

Trang 15

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Nhập dữ liệu đồng thời vào nhiều Sheet

tiện lợi ở chỗ nó giải phóng bạn khỏi cái việc phải nhớ group khi bắt đầu và ungroup khi kết thúc nhập liệu trong vùng chọn

Bây giờ nếu bạn muốn những dữ liệu như nhau được nhập vào các Sheet chọn, nhưng ở những vị trí khác nhau, hãy dùng đoạn code khác:

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Range("MyRange"), Target) Is Nothing Then With Range("MyRange")

.Copy Destination:=Sheets("Sheet3").Range("A1") Copy Destination:=Sheets("Sheet1").Range("D10") End With

End If End Sub

Đoạn code này cũng phải được đặt trong khung soạn thảo của riêng Sheet5

Đoạn code thứ hai hoạt động khác với đoạn code thứ nhất Khi bạn thay đổi nội dung của một ô nào đó, code sẽ xác định xem ô hiện hành có nằm trong vùng MyRange hay không, nếu phải thì copy nguyên vùng MyRange (của Sheet5) và paste vào đồng thời ô A1 của Sheet1 và D10 của Sheet2 Ngược lại thì không làm gì cả

Hình 9 - Đoạn code này phải được đặt trong khung soạn thảo của riêng Sheet5

Trang 16

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

thực hiện một số hành động nào đó nhất định

Ngăn chận người sử dụng thực hiện một số hành động nào đó nhất định

Mặc dù Excel có hỗ trợ việc bảo vệ cho bảng tính (Protect Sheet, Protect Workbook), nhưng công cụ thô sơ này không bao gồm việc chỉ cho phép người sử dụng một số đặc quyền hạn chế - trừ phi bạn làm theo những chiêu sau đây.

Bạn có thể quản lý việc tương tác với các bảng tính của bạn bằng cách giám sát và đáp ứng

các sự kiện Các sự kiện (event), là những hành động xảy ra khi bạn làm việc với các bảng tính hoặc các Sheet Những sự kiện này thường bao gồm việc mở (open) một bảng tính, lưu (save) nó, và đóng (close) nó Bạn có thể bảo Excel chạy những mã Visual Basic

Người sử dụng có thể vượt qua tất cả những mã bảo vệ bởi Visual Basic bẳng cách vô hiệu hóa việc thực thi các macro: Nhấn nút Office → Excel Opions → Trust Center →Trust Center Setting → Macro Settings (Excel2003: Tools → Macro → Security) Nếu đặt mức độ an toàn là Disable all macros with notification (Excel2003: mức Medium), mỗi khi mở một bảng tính có chứa macro, Excel sẽ xuất hiện một hộp thông báo và cho phép người sử dụng có cơ hội để tắt các macro Nếu đặt mức độ an toàn là Disable all macros without notification (Excel2003: mức High), Excel sẽ ngăn không cho chạy tất cả các macro có trong bảng tính Nói cách khác, khi cần phải dùng các macro có trong bảng tính, người sử dụng sẽ chọn một mức an toàn thích hợp để cho phép sử dụng các macro

Ngăn chận việc lưu lại bảng tính với một tên khác

Bạn có thể thiết lập thuộc tính Read only cho bất kỳ một bảng tính nào, bằng cách nhấn

Office → Save, nhấn nút Tools, chọn General Options (Excel2003: File → Save As → Tools → General Options) và kích hoạt hộp kiểm Read only recommended Việc này ngăn chận người

sử dụng lưu lại những thay đổi trên bảng tính, trừ phi họ lưu lại bảng tính với một tên khác hoặc lưu vào một nơi khác

Tuy nhiên, có thể điều bạn muốn là không cho lưu lại bảng tính của bạn với tên khác, cũng không cho lưu vào một nơi khác Nói cách khác, bạn muốn người khác chỉ có thể lưu lại bảng tính này với chính tên gốc của nó, chứ không được sao chép nó Điều này đặc biệt hữu dụng khi có nhiều người cùng sử dụng chung một bảng tính, và bạn không muốn trong

ổ cứng của mình đầy dẫy những bản sao của bảng tính này, cho dù là với một tên khác, hay

ở một thư mục khác

Sự kiện Before Save mà tôi sắp nói đến đã có từ thời Excel 97 Đúng như tên gọi của nó, sự

kiện này chỉ xuất hiện ngay trước khi bảng tính được lưu, cho phép bạn can thiệp kịp thời việc lưu lại bảng tính, đưa ra một cảnh báo, và không cho Excel lưu bảng tính

Trước khi tự thực hiện điều này vào bảng tính, hãy chắn chắn rằng bạn đã lưu lại bảng tính của bạn Bởi vì việc đưa đoạn code sau đây vào môt bảng tính chưa được lưu, có thể sẽ gây cho bạn nhiều rắc rối

CHIÊU

3

Trang 17

If S l W W C I C End End Su

p đoạn codlưu lại bảng

te Sub Work an)

lReply As SaveAsUI = Reply = Ms Workbook as Workbook?"

Cancel = (l

f Cancel = Cancel = Tr

s another , vbQuesti lReply = v

= False Th rue

trl+S (hoặc (hoặc gọi ltính này dướ

KHI LÀM V

ính, bạn hãy

ào mục Th

ượng Excel ở y)

ew Vode để mở

007, mà trên R, nhấn chọn ton

vào cửa sổ V

oreSave(By

n rry, you a _ name."

ion + vbOK vbCancel) hen Me.Sav

ở ngay bên trá

của sổ VBA cho

Ribbon của bạntab Popular, r

khi nhập xo

sUI As Boo

lowed to s wish to s

ảng tính củagặp một cảkhác, trừ ph

ong, nhấn A olean, Can

save this _ save this _

ình thường

ói rằng bạniệu hóa các

Trang 18

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

thực hiện một số hành động nào đó nhất định

Nói thêm, khi bạn lưu một bảng tính có chứa macro hoặc code trong Excel 2007, bạn

sẽ được nhắc nhở rằng bạn phải lưu file ở dạng cho phép macro hoạt động enable Workbook), có phần mở rộng là *.xlsm, chứ không thể lưu ở dạng bình thường (*.xlsx)

(macro-Ngăn chận việc in một bảng tính

Đôi khi bạn phải rời bàn làm việc đi đâu đó mà quên tắt máy (chuyện này là chuyện thường), cho dù bạn đã làm công việc ngăn chận việc có ai đó chép bảng tính của bạn ra ngoài, như đã nói ở trên, có thể bạn còn lo xa hơn, muốn rằng bảng tính này cũng sẽ không

bị in ra khi bạn vắng mặt Nếu thật sự bạn muốn như vậy, bạn hãy dùng sự kiện Before

Private Sub Workbook_BeforePrint(Cancel As Boolean) Cancel = True

MsgBox "Sorry, you cannot Print from this Workbook", vbInformation End Sub

Nhấn Ctrl+Q để quay về Excel và lưu lại Từ bây giờ, nếu có ai có muốn ra lệnh in bảng tính này, sẽ không in được và sẽ thấy một thông báo ngăn cản Dòng lệnh MsgBox ở đoạn code trên chỉ là một tùy chọn, nhưng bạn nên sử dụng nó, vì ít nhất thì nó cũng để lại một thông tin gì đó, để người khác sẽ không tưởng lầm rằng máy in của họ bị hư, hoặc là chương trình Excel có lỗi!

Nếu bạn chỉ muốn ngăn chận in một phần nào đó trong bảng tính, ví dụ không cho in Sheet1 và Sheet2, bạn sử dụng đoạn code sau:

Private Sub Workbook_BeforePrint(Cancel As Boolean) Select Case ActiveSheet.Name

Case "Sheet1", "Sheet2"

Cancel = True MsgBox "Sorry, you cannot print this Sheet from this Workbook", _ vbInformation

End Select End Sub

Dĩ nhiên bạn có thể thêm vào bất kỳ Sheet nào có trong bảng tính của bạn Chỉ việc nhập

tên của nó vào trong hàng có lệnh Case, và tách biệt Sheet này với Sheet khác bằng dấu

phẩy, và nhớ nhập tên Sheet trong một cặp dấu nháy kép Trong trường hợp bạn chỉ muốn ngăn chận không cho in một Sheet mà thôi, bạn chỉ cần nhập tên của Sheet đó (trong cặp

nháy kép) sau chữ Case, và không cần gõ dấu phẩy

Ngăn chận việc chèn thêm Sheet vào một bảng tính

Excel có chức năng Protect Workbook, không cho phép thay đổi cấu trúc của bảng tính như thêm, xóa, di chuyển, hay đổi tên các Sheet Tuy nhiên, có thể bạn chỉ muốn ngăn

Trang 19

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Khi có ai đó chèn thêm một Sheet mới vào trong bảng tính, trước tiên Excel sẽ xuất hiện

hộp cảnh cáo: “Xin lỗi, bạn không thể thêm bất kỳ Sheet nào vào trong bảng tính này”, rồi

ngay lập tức, Excel sẽ xóa cái Sheet mới thêm vào khi nút OK trong hộp cảnh báo được

nhấn Công dụng của dòng lệnh Application.DisplayAlerts = False là không hiển thị hộp

cảnh báo xác nhận việc xóa một Sheet nào đó trong Excel

Một cách khác để ngăn chận việc chèn thêm Sheet vào bảng tính là bạn chọn Review trên thanh Ribbon, chọn lệnh Protect Workbook trong nhóm Changes, rồi chọn lệnh Protect Structure and Windows (Excel2003: Tools → Protection → Protect Workbook đánh dấu kiểm vào tùy chọn Structure) và nhấn OK (có thể đặt password nếu thích) Tuy nhiên, như đã nói ở đầu bài, việc này sẽ ngăn chận hết mọi thao tác với các Sheet trong bảng tính

Hình 11 - Protect Structure and Windows để ngăn chận việc chèn thêm Sheet

Trang 20

Cchbả

Th

LỗxómW

KVchVkhlạCh

Al

Nph

Khi bạn ghi mVào lúc mở húng rỗng hViệc xóa cáchông xóa cáạnh Do vậyhọn ngăn D

lt+F11 (Exce

Nếu không thhím Ctrl+R

nh báo mà tôoạt động ha

sẽ tự động kícNếu mức an tcác macro tự đ

một macro, một bảng thay đang chứ

c macro của

ác module –, bạn cần ph

ể xóa (Exce

vẫn cảnh b

được thông botification (Exoàn được thiết

ch hoạt mà khtoàn là Disablđộng bị khóa l

Excel chèntính, Excel

ứa các mã l

a bảng tính– giống nhưhải xóa đi c

ong chiêu nhoặc là các

ết lập là Enableông có tiếng k

le all macros lại không được

n một modukiểm tra xelệnh

ng Workbo

hi macro trongăn Deve

→ Macro →

rong Workb

macro khi thMedium)

e all macors (Ekêu cảnh báo

iết lập mức aExcel2003: mứ

fication (Excelhi

hứa các lện

nh có chứa

lệnh chứa

ữa và bỏ lạiướng dẫn sau

hưng trong

ứa macro

n toàn là Disa

ức Low) thì các2003: mức Hi

nh của bạn vmodule nào

bên trong

i vỏ hộp sữu:

l hỏi bạn có

a một trang

c dù bạn đã

→ chọn cáccác lần mở

able all

c macro gh) thì

à

à ủ

m

p

Trang 21

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Ngăn chặn các nhắc nhở không cần thiết

Nhấp chuột lên các ký hiệu (+) để xem các thành phần bị ẩn của các nhánh con trong cửa

sổ Project và hãy tìm đến các module

Bạn nhấp phải chuột lên từng module và chọn lệnh Remove Module từ thực đơn ngữ cảnh Nếu được hỏi có xuất module ra thành tập tin thì hãy chọn No Nhấn tổ hợp Alt+Q để đóng cửa sổ VBE

Thông báo nhắc nhở lưu trữ trong khi không có sự thay đổi nào

Bạn có thể nhận thấy rằng đôi khi bạn chỉ mở một bảng tính và xem một số thông tin trong

đó mà Excel cũng nhắc nhở bạn lưu lại các thay đổi trong Personal Macro Workbook mặc

dù bạn không hề thay đổi gì trong đó Có thể bạn đã biết hoặc chưa, bạn đã có sử dụng một

hàm volatile (là hàm trong đó có sử dụng phương thức volatile) trong Personal Macro

Workbook của mình

Một Personal Macro Workbook là một

bảng tính ẩn được tạo ở lần đầu tiên bạn ghi macro (Excel2003: Tools → Macro → Record NewMacro) với tùy chọn Personal

Macro này sẽ được mở mỗi khi bạn sử

dụng Excel Một hàm volatile sẽ làm

bảng tính tự động tính toán lại mỗi khi bạn thực hiện một thao tác nào đó trong Excel, bao gồm cả việc mở và đóng bảng tính hoặc ứng dụng Excel Hai trong số

các hàm volatile phổ biến là hàm

TODAY()và NOW()

Vì thế, mặc dù bạn chắc chắn là mình không có thay đổi gì trong bảng tính

nhưng các hàm volatile này vẫn đang

hoạt động âm thầm Điều này được tính như là một sự thay đổi và Excel sẽ cảnh báo việc lưu trữ mặc dù không tồn tại bất kỳ sự thay đổi nào trong bảng tính

Nếu bạn muốn Excel dừng việc thông báo lưu trữ các thay đổi mà bạn không hề thực hiện,

bạn có một vài cách thực hiện Cách dễ thấy nhất là ta không lưu các hàm volatile trong Personal Macro Workbook và nên xóa bỏ tất cả các hàm volatile đang có trong đó

Hoặc, nếu bạn cần các hàm volatile nhưng không muốn Excel lưu lại các thay đổi không

nhìn thấy này bạn có thể thêm đoạn code sau vào Workbook module của Personal Macro Workbook để đánh lừa nó là bảng tính đã được lưu rồi

Private Sub Workbook_BeforeClose(Cancel As Boolean) Me.Saved = True

End Sub

Để mở Personal Macro Workbook bạn vào View → Unhide trong nhóm Window(Excel2003: Window → Unhide), chọn Personal.xls từ hộp thoại Unhide View → Unhide và nhấp nút OK Hình 13 - Hộp thoại Record Macro

Trang 22

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

Ngăn chặn các nhắc nhở không cần thiết

Nhấn tổ hợp phím Alt+F11 để vào cửa sổ VBE, sau đó nhấp phải chuột lên ThisWorkbook

từ Personal.xls trong cửa sổ Project rồi chọn View Code và nhập đoạn mã trên vào Sau khi nhập xong, bạn nhấn tổ hợp phím Alt+Q để đóng của sổ VBE lại

Tất nhiên, nếu bạn có sử dụng hàm volatile để tính toán lại bảng tính và bạn muốn lưu các

thay đổi này thì bạn dùng đoạn mã sau thay cho đoạn mã nêu trên

Private Sub Workbook_BeforeClose(Cancel As Boolean) Me.Save

End Sub

Đoạn mã trên sẽ lưu lại Personal Macro Workbook một cách tự động mỗi khi nó được mở

Dừng các cảnh báo của Excel về các macro đã ghi

Một trong số nhiều hạn chế của việc ghi macro là không tự thêm vào các lệnh loại bỏ các thông báo khi thực thi

Ví dụ như bạn ghi một macro xóa một Worksheet và khi thực thi macro này bạn sẽ nhận được thông báo xác nhận việc xóa Worksheet Muốn tắt cảnh báo này, bạn làm như hướng dẫn sau:

Chọn ngăn Developer → Macros tại nhóm Code hoặc nhấn Alt+F8 (Excel2003: Tools → Macro

→ Macros) để gọi hộp thoại Macro Tại Macro in chọn All Open Workbooks, chọn tên macro

mà bạn vừa ghi và nhấn nút Edit Đặt con trỏ lên trước dòng lệnh đầu tiên của thủ tục và nhập vào dòng lệnh sau:

' MyMacro Macro ' Deletes the Active Worksheet '

Application.DisplayAlerts = False ActiveSheet.Delete

Application.DisplayAlerts = True End Sub

Lưu ý rằng, bạn đã bật chức năng cảnh báo của Excel lại tại dòng lệnh cuối cùng của macro Nếu bỏ dòng lệnh này, bạn sẽ không bao giờ nhận được các cảnh báo nữa và điều này có thể gây nguy hại vì có thể bạn vô tình thực hiện một thao tác nhầm lẫn nghiêm trọng nào đó mà không hề nhận được cảnh báo để xác nhận hành động

Trang 23

Đôi khi b dùng đọc liệu, công

bạn không m

ion, Combo

tin nhạy cả

→ Hide tronglàm cách k

để trở về trađược bằng c

mat → Sheet →

ong Excel 2007

chức năng k

ững ô chứa hãy thiết lập

xcel2003: For

ông thể chọ

Hình 15

-ính, nhưng nối với nhữ

i cho Sheet d

+F11 để vàobên trái tro

o trang soạnong khung

o ai nhìn thấy

vùng làm dlàm const t

ó bằng cáchnhưng sẽ tốt

g mục chọn

el 2003

y Hơn nữaanh công cụ

o ,

h

t

n

a ụ

:

u

n ờ

Trang 24

Kđể

Ne

đó

NthviVtrúnộxónh

Và, trong côn

úc giống nh

ội dung và l

óa luôn cả những thao tá

à, có khi nàbảng tính m

n ra một kiể

ng tính này

Hình 16 - Chọn

ừng thấy, đdụng của n

và trình bày

ng việc, nếhau, tôi nghlưu lại với tnhững công

es của Excel.

ào bạn sử dmới, thì bạn

ểu bảng tínhthành cái c

nút Office, thiết kế sẵn

CÁC TUY

hiết kế một b

mẫ ẫ u (tem

ùng một kiểu tính mẫu cho àng nào đó,

ộp thoại riên

ông? Nghĩa chọn lệnh trong thư v

hư viện Templat

hững bảng tính đã có, x

đôi khi do sphải mất th

sơ ý, bạn sẽhời gian cho

o

Trang 25

ó thể tạo ra khó Bạn m

ng của bạn, thời gian C

KHI LÀM V

ện sẽ làm mloại bảng tíbạn chỉ việclấy một cáChiêu thứ 6

g tính đã có

12 (Save as

IỆC VỚI BẢN

một cái giốnính nào đó

c vào trong

ái mẫu ra rồnày sẽ giúp

ờng bạn vẫniết, chỉ giữ

ó sẵn, xóa h

s ) rồi chọn

NG TÍNH

ng như nhữn(một bảng l

g Thư viện T

ồi chỉ việc n

p bạn thực h

ct), có nghĩàng và cột vcel 2007:

rong Excel 2007

ại thành mộcái sườn: t

n làm, nhưnlại những Shết những d

ĩa là bạn sẽ với các tiêu

7

t Template

tô màu, địn

ng khoan nhSheet đã đư

dữ liệu thô,

mplate

e có sẵn củabảng chấmthậm chí là

ược thiết kế, chỉ giữ lại

y

t

u ế

i

Trang 26

BtínM

New(Excel20

ng tính mẫuchọn mẫu b

003: File → N

u mà bạn đãbạn cần, rồi

ưu với dạnghọn tiếp My

lưu lại như

Trang 27

ẫu, thay vì mẫu không

ts and Settin

à tên của A

Excel chỉ liệtkhi cài đặt

ngs\Owner\

Acount mà bnày, nhưng

t kê những lại Window

chép các bảiếp

t tab My Te

cả vào một

ab "Báo cáo

Khi bạntôi đã trchọn thư

New Fol

Một hộpnhóm bimột nhó

sẽ dùng nhấn OK

là xong

\Applicationbạn đã tạo rkhông đượ

ws, có thể bVậy, điều l, cất giữ c

ản sao vào đvào trong hộp t

o thuế", tab

n nhấn F12 đrình bày ở

ư mục lưu t

der

p thoại sẽ miểu mẫu mà

óm là "Báo

để in ra cá

K, đặt tên crồi đó

n Data\Micr

a khi sử dụ

c Khi chọnnào nằm ở trbạn sẽ mất hlưu ý ở đây cẩn thận S

đúng chỗ củthoại New

tự động, bạ

mở ra, và bạn

à bạn muốncáo thuế" đ

te, và nhấn

Tôi mở bạn xemhình 21)không,

sổ New

thêm m

Báo

Hay chứMột đichắc thừa Tấ

Templat

thư mục

tự tạo rnày, đề

cái tên cho

ôi tạo thêm

trên đây mà

m trong thư

ững bản saocài đặt lại

ờng dẫn trên

,

u

g ư

i

w

à ư

o

i

n

Trang 28

Sửtromtach

Tạ

CnhcáChtấWcô

Tạ

Msẽ

phapexcel.c

ử dụng mộtong bảng tímuốn đến mà

ất Phương Worksheet kông tác bảo

để thuận

t chỉ mục cáính, vì chỉ

à không lo tạo ra bởi m

ng các hàm

c thủ công

dễ làm, bạn

dex Sau đókết (hyperli

in This Doc

pháp này không có sựtrì trang ch

ng tính nào đ

n tiện cho việc

ác trang tínvới một cú

ument và cphù hợp k

cho các S

nhiều thời gi nh), bạn sẽ cả

hèn mới mộvào tên của

c Worksheechọn tên Shkhi bảng tínhường xuyê

h 22 - Hộp thoạ

sử dụng V

VBA để tựmục liên kết

nh không c

ên, nếu khô

ại Insert Hypelin

p một chỉ mụ

g tính.

anh chóng v

ẽ đưa bạn đchỉ mục tro

ơn tùy chọn)

et và đặt chosheet có tron

g với tên màkết nối tới

có quá nhiông sẽ gây r

nk

ra các chỉ mcác Works

YỆT CHIÊU C

ác Sheet tron

rkbook

(bảng tính) v khăn trong v

ục các trang t

và dễ dàng đ

đến chính xong một vài

CỦA EXCEL

ng Workbook

với rất nhiều việc tìm kiếm tính đang có

điều hướngxác nơi bạncách: bằngcảnh (thậm

ái tên, ví dụ

ok và tạo

OK để hoànheet và tên

Trang 29

Chương 1 – GIẢM BỚT NHỮNG CỰC NHỌC KHI LÀM VIỆC VỚI BẢNG TÍNH

Tạo chỉ mục cho các Sheet trong Workbook

Workbook Bảng chỉ mục này sẽ được tạo lại mỗi khi Worksheet lưu chỉ mục được chọn

Đoạn mã này phải được đặt trong Private Module của Sheet chứa chỉ mục Chèn một Worksheet mới vào Workbook và đặt tên cho nó là Index chẳng hạn Nhấp chuột phải vào tên Worksheet vừa tạo và chọn ViewCode từ trình đơn ngữ cảnh hoặc nhấn tổ hợp phím

Alt+F11

Nhập đoạn mã VBA sau vào cửa sổ Code:

Private Sub Worksheet_Activate() Dim wSheet As Worksheet

Dim lCount As Long lCount = 1

With Me Columns(1).ClearContents Cells(1, 1) = "INDEX"

End With For Each wSheet In Worksheets

If wSheet.Name <> Me.Name Then lCount = lCount + 1

With wSheet Range("A1").Name = "Start" & wSheet.Index Hyperlinks.Add Anchor:=.Range("A1"), Address:="", _ SubAddress:= "Index", TextToDisplay:="Back to Index"

End With Me.Hyperlinks.Add Anchor:=Me.Cells(lCount, 1), Address:="", _ SubAddress:= "Start" & wSheet.Index, TextToDisplay:=wSheet.Name End If

Next wSheet End Sub

Nhấn tổ hợp phím Alt+Q để thoát VBE và trở về cửa sổ bảng tính, sau đó lưu bảng tính lại

Để chạy đoạn mã vừa tạo, bạn dùng chuột chọn sang Worksheet khác trong Workbook và sau đó chọn lại Worksheet Index để kích hoạt sự kiện Worksheet_Activate

Lưu ý rằng, đoạn mã sẽ các đặt tên (Name) cho các ô A1 ở mỗi Worksheet kèm theo số chỉ mục của Worksheet trong bảng tính (Worksheet đầu tiên có chỉ mục là 1, kế đó là 2, 3… n) Điều này bảo đảm rằng ô A1 trên mỗi trang tính có một tên khác nhau Nếu ô A1 trên Worksheet của bạn đã được đặt tên, bạn nên cân nhắc đến việc thay đổi ô A1 trong đoạn

mã sang một địa chỉ khác phù hợp hơn

Lưu ý thêm, nếu bạn có thiết lập Hyperlink base (siêu liên kết cơ sở) trong Workbook thì

các hyperlink được tạo ra từ đoạn mã trên sẽ không thể hoạt động được, do chúng đã liên

kết đến các Name trong Workbook hiện hành Khi thuộc tính Hyperlink base được thiết lập thì các siêu liên kết sẽ trỏ đến Hyperlink base kết hợp với các Name

Cách thêm thuộc tính Hyperlink base: Vào Office → Prepare → Properties → Document

Properties → chọn Advanced Properties(Excel2003: File → Properties → Summary) và nhập vào khung Hyperlink Base Ví dụ, nhập vào: http://www.giaiphapExcel.com/

Trang 30

Th

CcávùN

nh bất kỳ

11 để mở c

ok:

te Sub Work Target As cCont As Error Resu

23 - Thêm thuộ

4 - Siêu liên kết

ục vào trìn

ng dẫn bạn orkbook và cửa sổ VB

kbook_Shee Range, Ca CommandBa ume Next

ộc tính Hyperlin

t trước và sau kh

h đơn ngữ

thêm một lệbạn có thể

BE, sau đó

etBeforeRi ancel As B rButton

ghtClick(B Boolean)

Trang 31

End Sub

oạn mã này

iếp theo, bạ

Sub In Appl End Su

h cCont Caption = OnAction = With

b

y sẽ gọi than

ạn vào Inser

ndexCode() lication.C

ửa sổ VBE rong bất kỳ

ạn điều hướ

KHI LÀM V

s("Cell").

n.CommandB , Temporar

ớng đến bất

IỆC VỚI BẢN

.Controls(

Bars("Cell ry:=True)

cứ Workshe

NG TÍNH

"Sheet Ind l").Control

dex").Dele ls.Add _

trình đơn nnày

Trang 32

CvàdụliệcumBđị

Dấ

Cdò

ùng cách đơmột vùng cho

ới hạn chỉ cngoài vùng đ

00 và đến l

ơn giản là d

o phép xem

ững dòng vhấn chọn dò

có số cột tố

(trước đó là

cho người d

đó Ngoài ralượt người

dấu (Hide) n

m hoặc chỉ kí

và cột khôngòng dưới nócùng (1.04

xcel2003: For

ng cách ẩn các h

củ ủ a bảng

ộn kéo bảng nào đó mà kh

ủa bảng tính

ối đa 16.384

65.536) Nhdùng xem tr

a nó còn hạkhác la làn

những dòngích hoạt vùn

g dùng đến

ó, nhấn thêm8.576) Sau

4 (Excel trước

hưng thườnrong một ph

vi bạn cho p

c đó là 256, t

ng thì bạn hhạm vi nào

ai đó vô tìnhmãi chẳng

Làm tươvậy để cột kh

đến: tìmclick chbên, nh

Shift + sang p

Hide colu

Kết quả26: vùng

bị trùm tăm tốquanh v

có thể kđược nữ

CỦA EXCEL

ủa bảng tính

a phải nhiều, ùng xem, bạn phép.

từ A đến IV),hiếm khi sử

đó, còn dữ

h kéo thanhthấy cái gì

m cột cuối,họn cột kếhấn Ctrl + mũi tên phải, chọn

umns

ả như hình

g làm việcmột màu

ối chung

và chẳng aikéo đi đâu

Trang 33

CỰC NHỌC

BcóTNchtrtìmdụQcólàTtíntakíSh

Pr En

Bvùbao quanh tmột ô nằm

g chỉ để thèm

ạn code VB

ép, hoặc chọoạn code trê

ollArea =

ollArea =

ScrollArea Select nt.Bold = T

KHI LÀM V

ác định mộ

Bằng cách sử

ó thể ấn địnhực hiện nhNhấn chuột họn View co

rong cửa sổ

m dòng Scr

ụ: $A$1:$HQuay trở lại

rivate Sub Me.Scrol

nd Sub

Bây giờ mỗiùng giới hạntăm tối nhưngoài vùng

b Workshee lArea = "A

và thử kéo tdòng 50 và

ược nữa

lưu tính c

e lên phải scode thực hvùng soạn

sự kiện Wo

t_Activate A1:H50"

hoạt bảng t

g muốn

nhưng bạn cũng không

ng đó có câudòng, cũng

ỉ vùng mong

thanh cuộn,cuộn ngang

chất này khset Propertyhiện điều nthảo code

orksheet_ac

e ()

tính, VBA

không thể nđược, kể cả

u lệnh seleckhông chọnlệnh:

ty

g VBA, bạnmong muốn

,

t ,

Trang 34

www.giaiphapexcel.com CÁC TUYỆT CHIÊU CỦA EXCEL

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

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"

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:

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:

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 một cách thoải mái, thì dùng một đoạn code nhằm reset vùng cuộn bằng nguyên Sheet:

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 một phím tắt thí dụ Ctrl+W 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 một Sheet khác xong quay lại Sheet này, vùng cuộn lại bị giới hạn bởi đoạn code trên (Worksheet_Activate())

Trang 35

bảng tính, t

ho mọi ngườhững ô có c

h Tuy nhiên

ức, mà nó k Đôi khi, bạ

n những ô cháp để thực

on cho các

chứa công

nh, tất cả c

gì trừ phi bạcho bảng tí

thường chún

ời, có thể bchứa công th

n, Protect bkhông cho c

ạn lại khônchứa dữ liệu

ng ta sẽ phảbạn muốn rhức Cách dbảng tính khcan thiệp và

ải dùng đếnrằng, không

dễ nhất là chông chỉ ngă

g tính của bạn

n một số côn

g ai có thể cũng phổ biế

ăn không chhĩa là khôngchỉ muốn b

hứa công thứtắt chức năn

hóa (locked

h Đây là cá

ng thức thì

nhấn vào cáchọn Form

p vào các ôlàm gì bảng

Trang 36

Sa

(E

HTrchchthth

V

Ce Sh

hì bạn đánhhấy) thì đánh

Cells đã nói

ch ẩn luôn c

al

bon, nhấn vrên Ribbon

trong nhómvào Protect

L

c

l

Trang 37

n, bạn hãy crên Rồi, vớ

ta trên Ribbotect Sheet

Vậy lđược

Hidde

Sử dụ

Sử dụvào nthức

bạn, n

ô chứ

g thức, hoặcđược gì nhihọn những

ới những ô cbon (Excel2

en, bạn khôn

ụng Data V

ụng Data V

những ô có cTuy nhiên,nghĩa là trán

ứa công thức

c dán vào nhiều Nhưng

ô chứa ô côchứa công t

003: Data →

IỆC VỚI BẢN

b Home trên Ri

ại Protect S lls, chỉ cho khóa), và n

bây giờ, nh thể không

ng lo những

Validation

Validation, cchứa công t phương ph

nh việc táy

c, chứ thật rhững ô đó bcũng xin nóông thức bằthức đang đ

→ Validation)

NG TÍNH

ibbon

Sheet, bỏ đphép Selec

nhập vào m

hững ô chứaxem thấy đ

g công thức

n

chỉ là đơn gthức, nghĩa háp này chỉ máy sửa lại

ra, mặc dù đbất kỳ dữ liệ

ói sơ qua về

ằng chức năđược chọn, b Trong hộp

đánh dấu ở

ct unlocked

một passwor

a công thứcđược nếu b này bị can

giản không

là không chphòng ngừa

cho ghi đè

ho sửa công

a cho chínhrong những

thích Nóiháp này:

i

à

n

b

Trang 38

vệđộĐkhphkh

NmNthchH

phapexcel.c

ệ bảng tính

ộng tắt chức

ể bắt đầu, bhóa, còn nhháp thứ nhấhóa ở trong

Privat

If T M Else M End End Su

Nếu không cmuốn PasswoNếu bạn lo rằ

hể bảo vệ cáhọn tab Prop

Hình 33 - Hộp th

com

(Protect) m

c năng bảo vbạn hãy chắhững ô khô

ất Sau đó,

đó, rồi nhập

te Sub Work Target.Loc Me.Protect

e Me.Unprotec

If

ub

cần đến pasord là thứ g

ằng người t

ác code này

perties, chọ

Tuy nhiên, pbạn được phcode sẽ chỉ nói thêm, cthôi, là ô đa

Vì lý do nàythì người đóđược tự độn

hoại Data Valid

mỗi khi bạn c

vệ khi bạn c

ắc chắn rằng

ng cần bảobạn nhấn A

p vào trong

ksheet_Sel cked = Tru Password:

để tham chiếcho dù bạn ch

ng có màu kh, nếu một ngư

Tự đ

Phươchọn một ô chọn một ô

rd:="Secre

n không cầnsửa lại chữ

o trong khu

o xem) bằn

ject for View

này cũng khôbảo vệ các công

ếu đến ô đanghọn một dãy,

ác với những ôười nào đó chọtoàn bộ dãy ô

ức, sẽ có m

ho bạn nhậnày không c

ư dán đè th

ắt chức nă

này, sẽ tự độhóa (lockedhóa

óa Target được

y tại thời điểmdãy đó, chỉ có

c ô (với ô "actkhi đó thì chức

ập vào Xincấm việc xó

hứ gì đó và

ăng bảo vệ

ộng bật chứd), nhưng nó

ứa công thứ

đã trình bàymuốn bảo v

khóa), tect đã

g

ô

o ự

Trang 39

hường xuyên

m thủ công c

ày dễ dàng

bạn có một bhọn ô trên cù

n phải nhậncông việc nàhơn, bạn c

bảng dữ liệùng bên tráuan trọng, v

về trước

ùng lắp dữ limất nhiều thờbiến công c

$A$1:$H$1(A1) và kéo

à nhập công

g ự

Trang 40

N

Pa

vùThTr

ô nhth

ĐtroCh

Du

Trch

phapexcel.c

Nhấn chọn n

atterns Nhùng dữ liệu heo bảng sốrong công tcần kiểm t

uplicate Val

rong hộp thhọn định dạ

ra trong vùExcel sẽ tựông thức địn

ạng theo điềùng địa chỉ

ự động nhận

nh dạng theohức là: =C

hức là: =C

hức là: =C

hức là: =C

ện trong ExCác bước th

ào ngăn Hom

n biết địa c

o điều kiện

COUNTIF($A COUNTIF($A

COUNTIF($A COUNTIF($A

xcel 2007 đhực hiện nh

hỉ ô làm đitại các ô nh

A$1:$H$100 A$1:$H$100

A$1:$H$100 A$1:$H$100

0,B1)>1 0,B2)>1

g

à

Ngày đăng: 19/03/2016, 14:13

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w