You are on page 1of 184

Nhng "tuyt chiu"

trong Excel
Mc lc
Li ni u: ................................................................................................................................................... 2
Chiu th 01: Ty bin ca s lm vic ca bng tnh ................................................................................ 4
Chiu th 02: Nhp d liu ng thi vo nhiu sheet.............................................................................. 9
Chiu th 03: Ngn chn ngi s dng thc hin mt s hnh ng no nht nh ...................... 13
Chiu th 04: Ngn chn cc nhc nh khng cn thit .......................................................................... 19
Chiu th 05: n sheet sao cho ngi dng khng th dng lnh unhide hin ra ............................. 23
Chiu th 06: T thit k mt bng tnh mu (template) ........................................................................ 26
Chiu th 07: To ch mc cho cc Sheet trong Workbook ....................................................................... 36
Chiu th 08: Gii hn vng cun ca bng tnh ...................................................................................... 42
Chiu th 09: Kha v bo v nhng c cha cng thc ...................................................................... 47
Chiu th 10: S dng nh dng theo iu kin tm d liu trng.................................................... 54
Chiu th 11: Tm d liu xut hin 2 hoc nhiu ln bng cng c Conditional Formating .................. 58
Chiu th 12: To ring mt thanh cng c cho ring mt bng tnh c th ........................................... 62
Chiu th 13: Sao chp cng thc gi nguyn tham chiu tng i ..................................................... 65
Chiu th 14: G b nhng lin kt ma .................................................................................................... 66
Chiu th 15: Gim kch thc file Excel b phnh to bt thng ............................................................ 70
Chiu th 16: Cu d liu t mt bng tnh b li .................................................................................... 74
Chiu th 17: S dng Data-Validation khi danh sch ngun nm trong mt Sheet khc ....................... 78
Chiu th 18: iu khin Conditional Formating bng checkbox. ............................................................ 81
Chiu th 19: nh du nhng cha cng thc bng Conditional Formatting..................................... 88
Chiu th 20: m hoc cng nhng c nh dng c iu kin................................................ 89
Chiu th 21: T mu dng xen k ............................................................................................................ 93
Chiu th 22: To hiu ng 3D trong cc bng tnh hay cc .................................................................. 98

Chiu th 23: Bt, tt chc nng Conditional Formatting bng 1 checkbox .......................................... 105
Chiu th 24: Dng nhiu List cho 1 Combobox ...................................................................................... 106
Chiu th 25: To mt danh sch xc thc thay i theo s la chn t mt danh sch khc ............ 110
Chiu th 26: S dng chc nng thay th (Replace) g b cc k t khng mong mun. ............. 114
Chiu th 27: Chuyn i con s dng vn bn sang s thc ................................................................ 115
Chiu th 28: Trch xut d liu s trong 1 chui bng VBA .................................................................. 120
Chiu th 29: Ty bin ch thch ca bng tnh ................................................................................... 124
Chiu th 30: Sort th t da trn nhiu hn ba ct ............................................................................ 129
Chiu th 31: Sp xp ngu nhin ........................................................................................................... 130
Chiu th 32: Thao tc trn d liu vi Advanced Filter ......................................................................... 133
Chiu th 33: To cc nh dng s cho ring bn.................................................................................. 141
Chiu th 34: Tng thm s ln Undo cho Excel ..................................................................................... 150
Chiu th 35: T to danh sch fill ..................................................................................................... 154
Chiu th 36: Lm ni cc Subtotal ca Excel .......................................................................................... 157
Chiu th 37: Chuyn i cc hm v cng thc trong Excel thnh gi tr. ............................................ 164
Chiu th 38: Thm d liu vo danh sch Validation mt cch t ng .............................................. 167
Chiu th 40: Cho php s dng tnh nng Group and Outline trn bng tnh b kho ......................... 175
Chiu th 41: By li trng d liu .................................................................................................... 177
Chiu th 42: Gim danh sch x xung ca Validation, sau khi chn 1. ............................................... 180
Chiu th 43: Thm cc danh sch c sn v c danh sch t to vo menu chut phi...................... 181

Li ni u:
Trong qu trnh thc hin mt bng tnh, chng ta c th mc phi v s li, hoc
c th mc phi nhng sai lm ng ngn, v thng khng ti nhng ci c
th gip chng ta x l bng tnh nhanh hn, gn gng hn... Xin hn hnh gii
thiu n cc bn cun sch "Mt ngy mt tuyt chiu", lc dch t cun Excel
Hacks, ca hai tc gi David v Raina Hawley. Nhng "tuyt chiu" ny s gip
bn trnh c nhng li, v lm vic vi bng tnh mt cch c hiu qu hn.

Trc khi ni n cc "tuyt chiu" ca Excel, xin ni s qua mt cht v mt s


th thut v quy tc c bn, nhng iu s gip cc bn thc hin nhng "tuyt
chiu" c ni n trong cc phn sau cch d dng hn. Excel l mt phn mm
bng tnh rt mnh, v bn c th lm c nhng iu khng th tin ni vi n.
Nhng khng may, c nhiu ngi thit k bng tnh ca mnh vi qu nhiu s "lo
xa", cn thn qu mc cn thit, v lm cho n tr nn phc tp hn l n ng b
nh vy. Phn m u ny s mch cho bn mt s th thut v quy tc m nu
bn lm theo, bn s thy chng rt hiu qu.
Xin ni thm, tt c cc "chiu" c trnh by sau y, a phn l vit cho Excel
2007. Nu n cng c th p dng cho cc phin bn trc, chng ti s ch thch
ngay bn cnh: (Vi Excel 2003 tr v trc, th...)
Quy tc 80/20
C l vic quan trng nht khi thc hin mt bng tnh l dnh mt thi gian
nghin cu, xem xt cch b tr d liu, tnh trc nhng vic mnh cn lm. V
ng bao gi ngh rng sau khi hon thnh, ti s khng cn phi thm vo cc
d liu hoc cc cng thc khc, v bn s lun lm ngc li. iu ny c ngha
rng, bn nn dnh khong 80% thi gian ln k hoch cho mt bng tnh
v khong 20% thi gian thc hin bng tnh .
Cho d rng, vic ny c v khng cn thit vi nhng bng tnh nh, nhng bo
m rng, nu bn quan tm n iu ti va ni trn, th v lu v di, bn s
trnh c nhng cc nhc khi phi c phi sa i sa li bng tnh ca mnh, v
d dng thc hin c nhng bng tnh ln sau khi dnh cho n mt thi gian
ln k hoch thc hin. Nn nh rng, cc bng tnh phi lun mang li cho
ngi dng nhng thng tin chnh xc, ch khng phi l thng tin ch chnh xc
trong mt trng hp no .
Nhng mo nh v cu trc mt bng tnh
Mt trong nhng li m chng ta hay mc phi khi to mt bng tnh, l chng ta
khng thit lp v trnh by d liu "theo ci cch m Excel v cc tnh nng ca

n mong i". Sau y l mt s li ph bin chng ta hay mc phi khi thit lp


mt bng tnh:
B tr d liu trong nhiu bng tnh (WorkBook) khc nhau
B tr d liu trong nhiu trang tnh (WorkSheet) khc nhau
B tr d liu trong nhiu bng (Table) khc nhau
C nhng hng trng v ct trng trong khi d liu (database)
B trng nhng c d liu ging nhau (cng chung mt ngy, cng chung
mt n v tnh, v.v...)
Ba im u tin trn y ch mun ni n mt iu: Bn nn lun lun c gng
gi cc mi lin quan gia cc d liu c lin tc trong cng mt bng
d liu. Ti thy rt nhiu cc bng tnh khng c trnh by theo ci quy tc
rt n gin ny, v chnh v vy, cc bng tnh khng th tn dng c ti a
cc tnh nng mnh m ca Excel nh PivotTable, SubTotal... Bn ch c th s
dng cc tnh nng ny khi bn gom ht d liu ca bn vo trong mt bng tht
n gin.
Khng phi ngu nhin m Excel c 1.048.567 hng (65.536 hng trong Excel
2003 tr v trc) m li ch c 16.384 ct (256 ct trong Excel 2003 tr v trc).
iu ny c ni rng, bn nn thit lp d liu ca mnh vi cc tiu ct
nm hng trn cng, v cc d liu c lin quan th nm lin tc bn di
tiu ca n. Nu nh bn c nhng d liu c lp li hai ln hoc nhiu ln
trong cc hng ca cng mt ct (cc ngy thng, cc loi n v tnh chng hn),
bn hy chng li s cm d b trng cc .
Hy c gng sp xp (sort) d liu ca bn bt c khi no c th. Excel c rt
nhiu nhng cng c tm kim v tham chiu cng thc, v mt s khng nh
trong , i hi d liu phi c sp xp theo mt th t hp l. Vic phn loi
cng s gip ch ng k cho tc x l ca mt s cc hm.

Chiu th 01: Ty bin ca s lm vic ca bng


tnh

Excel cho php hin th ng thi nhiu bng tnh v cho php ty bin cch
hin th v sp xp chng. Sau khi thit lp cc ty bin, chng ta c th lu
thnh mt tp tin workspace (khng gian lm vic) .xlw s dng li sau ny.
i khi khi lm vic trong Excel, bn c th cn phi c nhiu hn mt workbook
m trn mn hnh ca bn lm cho n d dng s dng hn hay xem d liu t
nhiu bng tnh. Trong bi ny s m t cch thc hin t chc ca s lm vic
mt cch gn gn v c t chc.
u tin, bn hy m tt c cc bng tnh m bn cn lm vic:
Vo Office | Open, gi phm Ctrl trong khi chn cc tp tin bng tnh cn m |
nhn nt Open m cc tp tin. (E2003: File | Open...).
T ca s lm vic ca mt bng tnh ang m no , chn Windows | View |
Arrange All (E2003: Window | Arrange). Nu ty chn Windows of active
workbook ang c chn th hy b chn, sau chn kiu sp xp v nhp nt
OK.

Nu chn kiu sp xp Tiled (lt gch) th cc ca s lm vic ca bng tnh nh


hnh sau:

Nu chn kiu sp xp Horizontal (nm ngang) th cc bng tnh s xp chng ln


nhau nh hnh minh ha sau:

Nu chn kiu Vertical (thng ng) th cc bng tnh c sp xp nm cnh


nhau nh sau:

Nu chn kiu Cascade (thc nc) th cc bng tnh s xp ln nhau nh hnh


minh ha sau

Khi cc ca s bng tnh c sp xp gn gng, bn s rt d dng thao tc v


di chuyn d liu gia cc ca s.
s dng li cc thit lp ny sau ny, bn c th lu thnh mt tp tin
workspace. Cc bc thc hin nh sau:
Chn ngn View | ti nhm Window chn Save Workspace (E2003: File | Save
Workspace) | nhp tn cho workspace ti hp File Name, chn ni lu v nhn
nt OK. Tp tin workspace s c phn m rng l .xlw

Mun chuyn i mt bng tnh no v ch ton mn hnh th bn ch cn


kch chut hai ln ln thanh Title (tiu ) ca ca s bng tnh . Bn cng c
th nhn nt Maximize trn ca s bng tnh hin hnh phng to ca s hoc
nhn nt Close ng bng tnh sau khi hon tt cng vic vi ca s .
s dng li khng gian lm vic thit lp trc , bn ch cn m tp tin
.xlw va to th giao din lm vic c bn thit lp trc kia s c khi phc.
Tt c cc hiu chnh hay cp nht thng tin trong cc bng tnh ca workspace s
c Excel nhc nh bn lu li khi bn ra lnh ng workspace.
Nu mi ngy, bn u phi thc hin cc cng vic lp i lp li trn nhiu bng
tnh. Ti khuyn bn nn dnh mt t thi gian thit lp cc kiu khng gian lm
vic cho cc bng tnh ty thuc vo yu cu tao tc v x l s liu ca chng.
Sau , bn ch vic m tp tin .xlw cho kiu khng gian lm vic ph hp vi nhu
cu s dng ca bn m khng cn phi tn thi gian sp xp, t chc cc bng
tnh cc ln s dng sau.

Chiu th 02: Nhp d liu ng thi vo nhiu


sheet.
Thng thng ngi dng Excel c nhng d liu mun nhp vo nhiu sheet
khc nhau. Bn c th dng cng c Group cc sheet li c th nhp d liu
ng thi. Nhng cng c 1 cch khc nhanh chng v linh hot hn nu bn dng
vi dng lnh VBA.
Nhng phi ni n cng c Group ci nh? Cng c Group dng nhp d
liu vo nhiu sheet 1 lc chc c nhiu ngi cha dng n. N dng kt ni
cc sheets vi nhau trong phm vi work book.
1. Group cc sheet li bng tay:
nhm cc sheet li, cc bn ch vic click chn sheet th nht, ni bn s nhp
liu t bn phm vo, ri va nhn Ctrl, va nhn vo tn nhng sheet khc m bn
mun nhp liu ng thi. Khi bn g bt k ci g vo sheet hin hnh, d liu
cng s t ng nhp vo cc sheet cn li trong nhm. ip v hon tt nhanh

chng (nghe ging 007 nh).


thot khi tnh trng group, bn ch vic hoc click chn 1 sheet khc ngoi
nhm, hoc click chut phi ln tn 1 sheet trong nhmbt k, chn Ungroup
Sheets. Hon nu bn ch mun g 1 trong s cc sheet ra khi nhm, hy Ctrl
click vo tn sheet .
Khi 2 hay nhiu sheet Group vi nhau, trn thanh tiu ca Windows s c ch
[Group] (tronh ngoc vung). Nhn vo bn c th bit bn vn cn ang trong
tnh trng group cc sheets.

Tr khi bn c cp mt sc nh chim ng, hoc bn nh dao co, thng th bn


khng n du hiu ny, bn s qun v khng ungroup khi cng vic
xong. Chnh v th ti khuyn bn ngay khi thc hin xong thao tc nhp liu hng
lot vo cc sheet, phi ungroup chng ngay.
D phng php ny l d nht, nhng c ngha l bn phi nh v nh group v
ungoup khi cn, nu khng bn s v tnh ghi ln d liu nhng sheet m bn
khng nhn thy trn mn hnh hin thi. Th d nh bn ch mun ghi cng lc d
liu vo 1 vng no ca cc bng tnh, cn ngoi vng th d liu cc sheet
phi khc nhau. Th nhng khi cc sheet group ri th n c thm quan tm bn
ang nhp liu vng no u?
2. Group cc sheet li 1 cch t ng:
Bn c th gii quyt vn trn bng cch dng 1 on code VBA ht sc n
gin. on code lm vic c, n phi c t trong cc s kin ca ring
sheet no bn mun. vo trang son tho code ca sheet no, th click phi
chut vo tn sheet v chn View Code.

Bn c th chn 1 trong cc s kin ca sheet, nhng s kin ch lin quan n


sheet nh i chn, thay i ni dung 1 , kch hot sheet, thot khi sheet,
thc thi on code VBA ca mnh.
Thng th bn c a thng n trang son tho code ring ca sheet nu bn
chn View Code nh trn hng dn. Bn c th kim tra li qu thc n thuc v
sheet bn chn hay khng bng cch nhn vo ca s VBA Project bn tri, nu
bn thy dng th mc This Workbook Sheetname v 1 sheet ang chn th
ng. nu khng bn phi tm ng sheet bn cn v doubled click n.
Trc tin bn phi t name cho vng bn mun nhp d liu trng trong cc
sheet, gi s l MyRange.
Sau g on code ny vo khung son tho bn phi:

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 on code trn, sheet5 c ghi u tin trong mng Array, v bn mun n
l sheet m bn s g d liu nhp vo. Bn c th chn nhng sheet khc
group chng li bn di sheet5. Sau khi g code xong, hoc nhn nt View
Object, hoc nhn nt View Microsoft Excel, hoc nhn Alt- Q, Alt-F11 hoc ng
hn ca s VBA tr v mn hnh Excel. Lu bng tnh li.

Cn nhc li rng on code trn phi nm trong sheet c khai bo u tin ca


Array, l sheet m bn s nhp d liu t bn phm.
Khi bn hon tt, mi khi bn click chn 1 no trong sheet5, on code s
kim tra xem bn chn c nm trong vng t tn MyRange khng. Nu
ng, code s Group cc sheet li vi nhau bn nhp d liu hng lot sheets.
Nu khng phi, n ungroup chng ra bng cch n gin l kch hot sheet hin
hnh. Dng on code trn s tin li ch n gii phng bn khi ci vic phi
nh Group khi bt u v UnGroup khi kt thc nhp liu trong vng chn.
By gi nu bn mun nhng d liu nh nhau c nhp vo cc sheet chn,
nhng nhng v tr khc nhau, hy dng on code khc:

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

on code ny cng phi c t trong khung son tho ca ring sheet5.

on code ny hot ng khc vi on code trn. Khi bn thay i ni dung ca 1


no , code s xc nh xem hin hnh c nm trong vng "MyRange" hay
khng, nu phi th copy nguyn vng "MyRange" (ca sheet5) v paste vo ng
thi A1 ca sheet1 v D10 ca sheet2. Ngc li th khng lm g c.

Chiu th 03: Ngn chn ngi s dng thc


hin mt s hnh ng no nht nh
Mc d Excel c h tr vic bo v cho bng tnh (Protect Sheet, Protect
Workbook), nhng cng c th s ny khng bao gm vic ch cho php ngi s
dng mt s c quyn hn ch - tr khi bn lm theo nhng chiu sau y.
Bn c th qun l vic tng tc vi cc bng tnh ca bn bng cch gim st v
p ng cc s kin. Cc s kin (event), l nhng hnh ng xy ra khi bn lm
vic vi cc bng tnh hoc cc Sheet. Nhng s kin ny thng bao gm vic m
(open) mt bng tnh, lu (save) n, v ng (close) n. Bn c th bo Excel chy
nhng m Visual Basic (macro) mt cch t ng khi xy ra bt k mt trong

nhng s kin nh th.


Tuy nhin, bn nn bit rng, ngi s dng c th vt qua tt c nhng m bo
v bi Visual Basic bng cch v hiu ha vic thc thi cc macro: Nhn nt
Office Excel Opions Trust Center Trust Center Setting Macro
Settings [E2003: Tools | Macro | Security]. Nu t mc an ton l Disable all
macros with notification [E2003: mc Medium], mi khi m mt bng tnh c
cha macro, Excel s xut hin mt hp thng bo v cho php ngi s dng c
c hi tt cc macro. Nu t mc an ton l Disable all macros without
notification [E2003: mc High], Excel s ngn khng cho chy tt c cc macro
c trong bng tnh. Ni cch khc, khi cn phi dng cc macro c trong bng tnh,
ngi s dng s chn mt mc an ton thch hp cho php s dng cc macro.
Ngn chn vic lu li bng tnh vi mt tn khc
Bn c th thit lp thuc tnh "Read only" cho bt k mt bng tnh no, bng
cch nhn Office Save, nhn nt Tools, chn General Options [E2003: File |
Save As | Tools | General Options] v kch hot hp kim Read only
recommended. Vic ny ngn chn ngi s dng lu li nhng thay i trn
bng tnh, tr phi h lu li bng tnh vi mt tn khc hoc lu vo mt ni khc.
Tuy nhin, c th iu bn mun l khng cho lu li bng tnh ca bn vi tn
khc, cng khng cho lu vo mt ni khc. Ni cch khc, bn mun ngi
khc ch c th lu li bng tnh ny vi chnh tn gc ca n, ch khng c sao
chp n. iu ny c bit hu dng khi c nhiu ngi cng s dng chung mt
bng tnh, v bn khng mun trong cng ca mnh y dy nhng bn sao ca
bng tnh ny, cho d l vi mt tn khc, hay mt th mc khc.
S kin Before Save m ti sp ni n c t thi Excel 97. ng nh tn gi
ca n, s kin ny ch xut hin ngay trc khi bng tnh c lu, cho php bn
can thip kp thi vic lu li bng tnh, a ra mt cnh bo, v khng cho Excel
lu bng tnh.
Trc khi t thc hin iu ny vo bng tnh, hy chn chn rng bn lu li

bng tnh ca bn. Bi v vic a on code sau y vo mt bng tnh cha c


lu, c th s gy cho bn nhiu rc ri.
a on code sau vo bng tnh, bn hy chn Develope Visual Basic
(hoc nhn Alt+F11), v nhp p chut vo mc ThisWorkbook trong khung
Project Explorer. Nu trn Ribbon ca bn khng c mc Develope, bn hy vo
trong Excel Options Popular, nh du vo ty chn Show Develope tab in
the Ribbon, ri nhn OK. [E2003, nhn phi chut vo biu tng Excel ngay
bn tri menu File trn thanh menu, v chn mc View Code, nh minh ha hnh
bn di]:

S dng Quick access menu (trong Excel 2003) nhp code p dng cho
workbook
Bn hy nhp on code sau y vo ca s VBE. Sau khi nhp xong, nhn Alt+Q
tr v Excel, ri lu li bng tnh:
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
Dim lReply As Long
If SaveAsUI = True Then
lReply = MsgBox("Sorry, you are not allowed to save this workboo
k as another name." _

& "Do you wish to save this workbook?", vbQuestion + vbOKCancel)


Cancel = (lReply = vbCancel)
If Cancel = False Then Me.Save
Cancel = True
End If
End Sub

Th mt t. Bn nhn Ctrl+S (hoc gi lnh Save) xem. Bng tnh ca bn lu


bnh thng. By gi bn nhn F12 (hoc gi lnh Save as), bn s gp mt cnh
bo, ni rng bn khng th lu li bng tnh ny di bt k mt tn no khc, tr
phi bn v hiu ha cc macro.
Ni thm, khi bn lu mt bng tnh c cha macro hoc code trong Excel 2007,
bn s c nhc nh rng bn phi lu file dng cho php macro hot ng

(macro-enable workbook), c phn m rng l *.xlsm, ch khng th lu dng


bnh thng (*.xlsx).
Ngn chn vic in mt bng tnh
i khi bn phi ri bn lm vic i u m qun tt my (chuyn ny l
chuyn thng), cho d bn lm cng vic ngn chn vic c ai chp bng
tnh ca bn ra ngoi, nh ni trn, c th bn cn lo xa hn, mun rng bng
tnh ny cng s khng b in ra khi bn vng mt. Nu tht s bn mun nh vy,
bn hy dng s kin Before Print. Hy nhp on code sau trong ca s VBE:
Private Sub workbook_BeforePrint(Cancel As Boolean)
Cancel = True
MsgBox "Sorry, you cannot Print from this workbook", vbInformati
on
End Sub

Nhn Ctrl+Q quay v Excel v lu li. T by gi, nu c ai c mun ra lnh in


bng tnh ny, s khng c g xy ra. Dng lnh MsgBox on code trn ch l
mt ty chn, nhng bn nn s dng n, v t nht th n cng li mt thng tin
g , ngi khc s khng tng lm rng my in ca h b h, hoc l chng
trnh Excel c li!
Nu bn ch mun ngn chn in mt phn no trong bng tnh, v d khng cho
in Sheet1 v Sheet2, bn s dng on 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 nhin bn c th thm vo bt k Sheet no c trong bng tnh ca bn. Ch vic


nhp tn ca n vo trong hng c lnh Case, v tch bit Sheet ny vi Sheet khc
bng du phy, v nh nhp tn Sheet trong mt cp du nhy kp. Trong trng
hp bn ch mun ngn chn khng cho in mt Sheet m thi, bn ch cn nhp tn
ca Sheet (trong cp nhy kp) sau ch Case, v khng cn g du phy.
Ngn chn vic chn thm Sheet vo mt bng tnh
Excel c chc nng Protect Workbook, khng cho php thay i cu trc ca
bng tnh nh thm, xa, di chuyn, hay i tn cc Sheet. Tuy nhin, c th bn
ch mun ngn chn vic thm Sheet thi, cn nhng vic khc th vn cho php.
on code sau y gip bn lm vic :
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Application.DisplayAlerts = False
MsgBox "Sorry, you cannot add any more sheets to this workbook",
_
vbInformation
Sh.Delete
Application.DisplayAlerts = True
End Sub

Khi c ai chn thm mt Sheet mi vo trong bng tnh, trc tin Excel s xut
hin hp cnh co: "Xin li, bn khng th thm bt k Sheet no vo trong bng
tnh ny", ri ngay lp tc, Excel s xa ci Sheet mi thm vo khi nt OK trong
hp cnh bo c nhn. Cng dng ca dng lnh Application.DisplayAlerts =
False l khng hin th hp cnh bo xc nhn vic xa mt Sheet no trong
Excel.
Mt cch khc ngn chn vic chn thm Sheet vo bng tnh l bn chn
Review trn thanh Ribbon, chn lnh Protect Workbook trong nhm Changes,
ri chn lnh Protect Structure and Windows [E2003: Tools | Protection |
Protect Workbook... nh du kim vo ty chn Structure] v nhn OK (c th
t password nu thch). Tuy nhin, nh ni u bi, vic ny s ngn chn
ht mi thao tc vi cc Sheet trong bng tnh.

Chiu th 04: Ngn chn cc nhc nh khng cn


thit
Exel lun lun cnh bo hoc nhc nh bn xc nhn cc hnh ng v thao tc
ca bn. Bi ny s hng dn bn cch loi b cc thng bo hoc nhc nh.
Cc kiu cnh bo m ti cp y chnh l cc cu hi m Excel hi bn c
cho macro hot ng hay khng hoc l cc thng bo v cc hnh ng xa mt
trang bng tnh. Sau y l mt s loi cnh bo ca Excel:
Thng bo kch hot Macro trong khi trong workbook khng c macro
Li ny pht sinh do bn tng thc hin ghi macro trong workbook, v mc d
bn xa tt c cc m lnh macro nhng trong cc ln m workbook sau
Excel vn cnh bo bn l trong workbook c cha macro.
Xa macro: vo ngn Developer | chn Macro | chn cc macro v nhn
Delete xa [E2003: Tools | Macro | Macros].
Bn ch nhn c thng bo kch hot macro khi thit lp mc an ton l
Disable all macro with notification [E2003: mc Medium].
Nu mc an ton c thit lp l Enable all macors [E2003: mc Low]
th cc macro s t ng kch hot m khng c ting ku cnh bo.
Nu mc an ton l Disable all macros without notification [E2003: mc
High] th cc macro t ng b kha li khng c php thc thi.
Khi bn ghi mt macro, Excel chn mt module vo cha cc lnh ca bn v
cc hm. Vo lc m mt bng tnh, Excel kim tra xem bng tnh c cha module
no khng v chng rng hay ang cha cc m lnh. Vic xa cc macro ca
bng tnh s xa tt c cc m lnh cha bn trong module m khng xa cc
module ging nh vic ung cn lon sa v b li v hp sa vo li t lnh. Do
vy, bn cn phi xa i cc module ny theo hng dn sau
Chn ngn Developer | chn nt Visual Basic ti nhm Code hoc nhn t hp
phm ALT+F11 [E2003: Tools | Macro | Visual Basic Editor (VBE) v chn
View | Project Explorer].

Cc nt lnh trn ngn Developer


Nu khng thy ca s Project th bn vo View v chn Project Explorer hoc
nhn t hp phm Ctrl+R

Ca s Project Explorer
Nhp chut ln cc k hiu (+) xem cc thnh phn b n ca cc nhnh con
trong ca s Project v hy tm n cc module. Bn nhp phi chut ln tng
module v chn lnh Remove Module t thc n ng cnh. Nu c hi c xut
module ra thnh tp tin th hy chn No. Nhn t hp ALT+Q ng ca s
VBE.

Thng bo nhc nh lu tr trong khi khng c s thay i no


Bn c th nhn thy rng i khi bn ch m mt bng tnh v xem mt s thng
tin trong m Excel cng nhc nh bn lu li cc thay i trong Personal Macro
Workbook mc d bn khng h thay i g trong . C th bn bit hoc
cha, bn c s dng mt hm volatile (l hm trong c s dng phng
thc volatile) trong Personal Macro Workbook ca mnh.
Mt personal macro workbook l mt bng tnh n c to ln u tin bn ghi
macro (Tools | Macro | Record NewMacro) vi ty chn Personal Macro
Workbook ti Store Macro in. Macro ny s c m mi khi bn s dng
Excel. Mt hm volatile s lm bng tnh t ng tnh ton li mi khi bn thc
hin mt thao tc no trong Excel, bao gm c vic m v ng bng tnh hoc
ng dng Excel. Hai trong s cc hm volatile ph bin l hm Today() v Now().

Hp thoi Record Macro


V th, mc d bn chc chn l mnh khng c thay i g trong bng tnh nhng
cc hm volatile ny vn ang hot ng m thm. iu ny c tnh nh l mt
s thay i v Excel s cnh bo vic lu tr mc d khng tn ti bt k s thay
i no trong bng tnh.

Nu bn mun Excel dng vic thng bo lu tr cc thay i m bn khng h


thc hin, bn c mt vi cch thc hin. Cch d thy nht l ta khng lu cc
hm volatile trong Personal Macro Workbook v nn xa b tt c cc hm
volatile ang c trong . Hoc, nu bn cn cc hm volatile nhng khng mun
Excel lu li cc thay i khng nhn thy ny bn c th thm on code sau vo
Workbook module ca Personal Macro Workbook nh la n l bng tnh
c lu ri.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.Saved = True
End Sub

m Personal Macro Workbook bn vo View | Unhide trong nhm Window


[E2003: Window | Unhide], chn Personal.xls t hp thoi Unhide v nhp nt
OK. Nhn t hp phm ALT+F11 vo ca s VBE, sau nhp phi chut ln
ThisWorkbook t Personal.xls trong ca s Project ri chn View Code v nhp
on m trn vo. Sau khi nhp xong, bn nhn t hp phm ALT+Q ng ca
s VBE li.
Tt nhin, nu bn c s dng hm volatile tnh ton li bng tnh v bn mun
lu cc thay i ny th bn dng on m sau thay cho on m nu trn.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.Save
End Sub

on m trn s lu li Personal Macro Workbook mt cch t ng mi khi n


c m.
Dng cc cnh bo ca Excel v cc macro ghi
Mt trong s nhiu hn ch ca vic ghi macro l khng t thm vo cc lnh loi
b cc thng bo khi thc thi. V d nh bn ghi mt macro xa mt worksheet v

khi thc thi macro ny bn s nhn c thng bo xc nhn vic xa worksheet.


Mun tt cnh bo ny, bn lm nh hng dn sau:
Chn ngn Developer | Macros ti nhm Code hoc nhn ALT+F8 [E2003:
Tools | Macro | Macros] gi hp thoi Macro. Ti Macro in chn All Open
Workbooks, chn tn macro m bn va ghi v nhn nt Edit. t con tr ln
trc dng lnh u tin ca th tc v nhp vo dng lnh sau:
Application.DisplayAlerts = False
Ti sau dng lnh cui cng, bn thm vo:
Application.DisplayAlerts = True
Macro ca bn sau khi thm 2 dng lnh trn s ging nh sau:
Sub MyMacro( )
'
' MyMacro Macro
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
End Sub

Lu rng, bn bt chc nng cnh bo ca Excel li ti dng lnh cui cng


ca macro. Nu b dng lnh ny, bn s khng bao gi nhn c cc cnh bo
na v iu ny c th gy nguy hi v c th bn v tnh thc hin mt thao tc
nhm ln nghim trng no m khng h nhn c cnh bo xc nhn hnh
ng.

Chiu th 05: n sheet sao cho ngi dng


khng th dng lnh unhide hin ra

i khi bn c nhng thng tin trn 1 sheet no v bn khng mun ngi dng
c c. Bn mun c 1 khu vc (c th l 1 sheet) ghi chp nhng d liu, cng
thc, nhng chi tit vn vt v khng mun cho ai nhn thy.
Th d nh 1 sheet cha nhng vng lm d liu cho Data Validation, Combobox,
nhng tn bin v gi tr bin dng lm const trong VBA, nhng thng tin nhy
cm v nhng th khc. Mc d bn c th du sheet bng cch chn View
Hide trong mc chn Window (i vi Excel 2003 l Format Sheet Hide),
nhng s tt hn nu bn lm cch khc ngi dng khng th chn View
Unhide trong mc chn Window (i vi Excel 2003 l Format Sheet
Unhide).

Bn cng c th dng chc nng kho bng tnh, nhng n vn c nhn thy.
Hn na bn khng th kho nhng cha d liu kt ni vi nhng control to
bi thanh cng c Form.

Thay v vy, bn hy thit lp trng thi cho sheet dng xlVeryHidden. Vo


Developer Visual Basic hoc nhn Alt-F11 vo trang son tho VBE (i vi
Excel 2003 th vo menu Tools Macro Visual Basic Editor v nhn bn tri
trong khung Project Explorer, nu khng thy th chn View - Project Explorer.
Tm tn file v bm vo du cng hin ra cc tn sheet. Chn tn sgeet no bn
mun du, m khung Property bng cch vo menu View Property Window
(hoc nhn F4). Chn tab Alphabetic, tm dng Visible v chn 2xlsSheetVeryHidden. Nhn Alt-Q tr v trang tnh Excel, lu s thay i ny.
Sheet ca bn s chng bao gi c th thy c bng cch thng thng trn
menu View Unhide hay Format Sgeet Unhide.
thy tr li, bn phi vo ch c, chn li -1 xlSheetVisible

Chiu th 06: T thit k mt bng tnh mu


(template)
Nu nh bn thng xuyn phi thc hin cng mt kiu trnh by cho bng
tnh ca mnh, bn c th t thit k ra mt bng tnh mu cho ring bn, l mt
bng tnh c sn tiu , mt s ct, mt s hng no , thm ch l c

Name v cng thc; ng thi cn c th to ra mt hp thoi ring vo trong


Th vin cc Templates ca Excel.
Khng bit l, c khi no bn s dng cc Template khng? Ngha l thay v nhn
Ctrl+N to mt bng tnh mi, th bn nhn vo nt Office, chn lnh New
[E2003: File | New], v chn ra mt kiu bng tnh c thit k sn trong th
vin cc Template, sau sa li bng tnh ny thnh ci ca mnh?

Chn mt bng tnh c thit k sn trong th vin Templates ca Excel

Nu bn tng thy, tng s dng nhng bng tnh c thit k sn ny,


t bn s thy s hu dng ca n, nh n m chng ta tit kim c bao nhiu l
thi gian cho vic thit k v trnh by.

V, trong cng vic, nu nh bn c phi thng xuyn thit k nhng bng tnh
c cu trc ging nhau, ti ngh rng vic bn thng lm l m mt bng tnh
c, xa i phn ni dung v lu li vi tn khc, phi khng? Nhng cch lm ny,
i khi do s , bn s xa lun c nhng cng thc m bn mt hng gi
ngh ra, ri phi mt thi gian cho nhng thao tc xa... Vy, c bao gi bn ngh
n chuyn s lm mt ci ging nh nhng Template c sn ca Excel khng?
mi khi cn loi mt bng tnh no (mt bng lng, mt bng chm cng, mt
bn bo gi, v.v...) th bn ch vic vo trong Th vin Templates, thm ch l vo
trong "Th vin ring" ca bn, ly mt ci mu ra ri ch vic nhp s liu vo?
Tit kim c bao nhiu l thi gian. Chiu th 6 ny s gip bn thc hin iu
ti va ni.
To mt bng tnh mu
Nhng Template cho php bn c sn mt "d n" (project), c ngha l bn s c
sn mt bng tnh, bao gm phn tiu ca bng tnh, mt s hng v ct vi cc
tiu ca n, cc cng thc, v c cc Name (nu c).. V d, y l Template
BillingStatement1 c sn trong Excel 2007:

Template BillingStatement1 c sn trong Excel 2007

Bn cng c th to ra mt ci ging vy, sau lu li thnh mt Template. Vic


ny khng c g kh. Bn m mt bng tnh mi, to ra mt ci sn: t mu, nh
dng, t Name, thit k cng thc, v.v... nh bnh thng bn vn lm, nhng
khoan nhp d liu vo. Bn hy xa ht cc Sheet khng cn thit, ch gi li
nhng Sheet c thit k thi. Hoc bn c th m mt bng tnh c sn,
xa ht nhng d liu th, ch gi li phn trnh by. Sau , bn nhn F12 (Save
as...) ri chn Excel Template:

Chn loi file l Excel Template trong ca s Save

Bn hy t cho n mt ci tn d nh, ri nhn Save. Theo mc nh th Excel s


lu bng tnh mu ny vo Th mc cha cc Template c to ra khi bn ci
t Excel 2007:

Excel s t ng chn th mc lu cc Template

Mi khi cn s dng mt bng tnh c cu trc y ht bng tnh bn va lu vi


dng Template nh trn, bn nhn nt Office New [E2003: File | New], ri
chn tip My Templates... ca s New Workbook:

Chn My Template m cc bng tnh mu lu

Cc bng tnh mu m bn to ra v lu li nh ti trnh by trn, s hin


ra. Bn ch vic chn mu bn cn, ri nhn OK.

Excel s t ng chn th mc lu cc Template


To mt tab ring trong ca s My Templates
Nh bn thy hnh ngay pha trn y, khi bn nhn My Templates trong ca
s New Workbook, mt ca s New s m ra. mt t, bn s thy ca s ny
c dng nhng ci tab. Nhng hin gi n ch n mi mt tab My Templates thi.
Gi s bn to ra rt nhiu bng tnh mu, thay v "nht" tt c vo mt ch, bn
c mun to thm nhng tab ring cho mi loi mu khng? V d, tab "Bo co
thu", tab "Bo gi", v.v... hay i loi nh th ?
Khi bn nhn F12 lu li vi dng Template nh ti trnh by phn trn,
th thay v Excel chn th mc lu t ng, bn hy nhn nt Create New
Folder:

Nhn nt Create New Folder to thm tab cho cc Template


Mt hp thoi s m ra, v bn nhp mt ci tn cho nhm biu mu m bn
mun. y, ti to thm mt nhm l "Bo co thu" lu nhng bng tnh s
dng in ra cc bo co np cho c quan thu, nhn OK, t tn cho Template,
v nhn Save. Vy l xong ri . Ti m th ra cho bn xem nh:

Bn thy khng, trong ca s New ny, c thm mt tab mi l "Bo co thu".


Hay ch nh!
Mt iu lu , chc l khng tha. Tt c nhng Template v nhng th mc m
bn t to ra trong bi ny, u nm y:
C:\Documents and Settings\Owner\Application Data\Microsoft\Template
Vi Owner l tn ca Acount m bn to ra khi s dng Windows. Ti th
thay i ni lu cc Template ny, nhng khng c. Khi chn My Template
trong ca s New Workbook, Excel ch lit k nhng Template no nm trong
ci ng dn trn y m thi. Do , khi ci t li Windows, c th bn s
mt ht tt c nhng g nm trong th mc C:\Documents and Settings... Vy, iu
lu y l, bn nn to ra nhng bn sao d phng cho cc Template ny, ct
gi cn thn. Sau ny, khi c phi ci t li Windows, bn ch vic chp cc bn
sao vo ng ch ca n (chnh l ci ng dn trn y), l c th s dng tip.

Chiu th 07: To ch mc cho cc Sheet trong


Workbook
Nu bn tn qu nhiu thi gian trong mt workbook (bng tnh) vi rt nhiu
worksheet (trang tnh), bn s cm thng c s kh khn trong vic tm kim
mt trang tnh no . Khi , c l ta nn lp mt ch mc cc trang tnh ang c
thun tin cho vic iu hng trong bng tnh.
Bng cch s dng mt ch mc cc trang tnh s cho php bn nhanh chng v d
dng iu hng trong bng tnh, ch bng mt c nhp chut s a bn n chnh
xc ni bn mun n m khng lo b nhm ln. Bn c th to mt ch mc trong
mt vi cch: bng tay, t ng to ra bi m VBA, hoc l s dng trnh n ty
chn theo ng cnh (thm ch c th dng cc hm Macro4 khng trnh by
y).

To ch mc th cng
Cch ny rt d lm, bn ch cn chn mi mt worksheet v t cho n mt ci
tn, v d nh tn l Index. Sau , bn nhn vo tn ca cc worksheet c trong
workbook v to cc siu lin kt (hyperlink) n cc worksheet tng ng vi tn
m bn nhp.
to hyperlink bn chn tn sheet, sau vo Insert | chn Hyperlink ti nhm
Links [E2003: Insert | Hyperlinks] hoc nhn phm tt l Ctrl+K m hp
thoi Insert Hyperlink.

Hp thoi Insert Hyperlink


Chn Place in This Document v chn tn Sheet mun kt ni ti. Nhn nt OK
hon tt.
Phng php ny ph hp khi bng tnh khng c qu nhiu worksheet v tn
worksheet khng c s thay i thng xuyn, nu khng s gy ra nhiu kh
khn cho cng tc bo tr trang ch mc.

To ch mc t ng bng cch s dng VBA


Mt cch thay th khc l s dng VBA t ng to ra cc ch mc. on m
sau y s t ng to ra mt bng ch mc lin kt n tt c cc worksheet m
bn c trong workbook. Bng ch mc ny s c to li mi khi worksheet lu
ch mc c chn.
on m ny phi c t trong private module ca Sheet cha ch. Chn mt
worksheet mi vo workbook v t tn cho n l Index chng hn. Nhp chut
phi vo tn worksheet va to v chn ViewCode t trnh n ng cnh hoc

nhn t hp phm Alt+F11.


Nhp on m VBA sau vo ca 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:="", SubA
ddress:= _
"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

Nhn t hp phm Alt+Q thot VBE v tr v ca s bng tnh, sau lu bng


tnh li. chy on m va to, bn dng chut chn sang worksheet khc trong
workbook v sau chn li worksheet Index kch hot s kin
Worksheet_Activate.
Lu rng, on m s cc t tn (Name) cho cc A1 mi worksheet km

theo s ch mc ca worksheet trong bng tnh (worksheet u tin c ch mc l 1,


k l 2, 3. n). iu ny bo m rng A1 trn mi trang tnh c mt tn
khc nhau. Nu A1 trn worksheet ca bn c t tn, bn nn cn nhc
n vic thay i A1 trong on m sang mt a ch khc ph hp hn.

Thm thuc tnh cho workbook


Lu , nu bn c thit lp Hyperlink base (siu lin kt c s) trong workbook th
cc hyperlink c to ra t on m trn s khng th hot ng c, do chng
lin kt n cc Name trong workbook hin hnh. Khi thuc tnh hyperlink base
c thit lp th cc siu lin kt s tr n hyperlink base kt hp vi cc Name.
Thm thuc tnh Hyperlink base: Vo Office | Prepare | Properties | Document
Properties | chn Advanced Properties [E2003: File | Properties | Summary]
v nhp vo hyperlink base. V d nh chng ta nhp vo
http://www.giaiphapexcel.com/

Siu lin kt trc v sau khi thm Hyperlink base

Thm lnh gi ch mc vo trnh n ng cnh


Cch th ba s hng dn bn thm mt lnh vo trnh n ng cnh gi danh
sch cc worksheet trong workbook v bn c th chn lnh ny bng cch kch
phi chut vo vng bng tnh bt k. on m sau s gi thanh lnh Tabs ca
workbook nh hnh sau:

Thm lnh Sheet Index vo trnh n ng cnh


Nhn Alt+F11 m ca s VBE, sau nhp on m sau vo ca s Code
ca ThisWorkbook:
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, B
yVal Target As Range, Cancel As Boolean)
Dim cCont As CommandBarButton
On Error Resume Next
Application.CommandBars("Cell").Controls("Sheet Index").Dele
te
On Error GoTo 0
Set cCont = Application.CommandBars("Cell").Controls.Add _
(Type:=msoControlButton, Temporary:=True)
With cCont
.Caption = "Sheet Index"
.OnAction = "IndexCode"
End With
End Sub

Tip theo, bn vo Insert | Module v nhp vo on m sau:


Sub IndexCode()
Application.CommandBars("workbook Tabs").ShowPopup
End Sub

on m trn s thc thi mi khi bn chn lnh Sheet Index t trnh n ng


cnh v bn phi t n trong Module th Excel mi c th thy c th tc ny.
Nhn Alt+Q ng ca s VBE tr v bnh tnh Excel. K t lc ny, bn nhp
phi chut ti bt k no trong bt k worksheet no th trong trnh n ng cnh
s c thm lnh Sheet Index gip bn iu hng n bt c worksheet no
trong workbook mt cch d dng.

Chiu th 08: Gii hn vng cun ca bng tnh


Nu bn khng mun thanh cun ko bng tnh ln xung hoc qua phi nhiu,
hoc bn c d liu 1 vng no m khng muncho ngui dng xem, bn c
th gii hn vng nhn c ca bng tnh trong phm vi bn cho php.
Cc bng tnh to bi Excel 2007 c s ct ti a 16.384, Excel trc l 256 (t
A n IV), v c s dng ti a l 1.048.576 (trc l 65.536). Nhng thng
th bn him khi s dng ht. Bn c th gii hn ch cho ngi dng xem trong 1
phm vi no , cn d liu nhy cm, bn ngoi vng . Ngoi ra n cn hn
ch khi ai v tnh ko thanh cun xung dng 500.000 v n lt ngi khc
la lng rng ko mi chng thy ci g m xem.
Bn c th dng cch n gin l du (Hide) nhng dng v ct mun du hoc
bng cch nh ngha 1 vng cho php xem hoc ch kch hot vng c d liu.
1. Du dng v ct:
Cch d nht l du nhng dng v ct khng dng n:
Trn sheet hin hnh, xc nh dng cui c d liu, nhn chn dng di n, nhn
thm cng lc Ctrl + Shift + mi tn xung chn n cui dng cui cng
(1.048.576). Sau trong tab Home, chn Format Hide & Unhide Hide Rows
trong Excel 2007 hoc Format - Row - Hide trong 2003 tr v trc, hoc click
phi chut v chn Hide.
Lm tng t nh vy du nhng ct khng dng n: tm ct cui, click chn
ct k bn, nhn Ctrl + Shift + mi tn sang phi, chn hide columns.
Kt qu nh hnh, vng lm vic b trm 1 mu tm ti chung quanh v chng ai
c th ko i u c na:

2. Xc nh 1 vng s dng bng Property:


Bng cch s dng Property ca sheet trong VBA, bn c th n nh vng lm
vic trong phm vi mong mun. Thc hin nh sau:
Nhn chut phi vo tn sheet trong tab Sheet Names, chn View code, hoc nhn
Alt + F11, chn ng tn sheet trong ca s Project Explorer, ri xung khung
Property, tm dng ScrollArea g vo a ch vng mong mun th d
$A$1:$H$50.

Quay tr li bng tnh v th ko thanh cun, ta thy ch c th cun xung n


dng 50 v cun ngang n ct H l ti a, khng cun c na.
Tuy vy, Excel khng lu tnh cht ny khi lu bng tnh, nn ln sau m file ln
phi set Property li. Do ta phi vit 1 on code thc hin iu ny mi khi
kch hot sheet. Vo vng son tho code ca ng sheet mnh mun, chn s kin
worksheet_activate:
Private Sub Worksheet_Activate ( )
Me.ScrollArea = "A1:H50"
End Sub

By gi mi khi kch hot bng tnh, VBA s n nh vng gii hn nh mong


mun.
Mc d khng c vng bao quanh tm ti nh cch trn, nhng bn khng th no

cun ra khi vng, bn c chn 1 nm ngoi vng cho php cng khng c, k
c ct I, J, K d bn c ng thy cng ch thm thi.
Thm ch vi nhng on code VBA bn to sau ny, trong c cu lnh select 1
vng nm ngoi vng cho php, hoc chn nguyn ct nguyn dng, cng khng
chn c.
c th thc thi cc on code trn bn phi cho vo code 2 dng lnh:
u code thm dng: ActiveSheet.ScrollArea = ""
Cui code thm dng: ActiveSheet.ScrollArea = "$A$1:$G$50"
Th d:
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

on code trn chn Z100 trong sheet hin hnh v nh dng in m. Sau
chn T500 trong sheet khc, nh dng in thng (khng m). Trc khi thc
hin chn v nh dng sheet no, phi set vng cun sheet l . Sau khi nh
dng,set tr vng gii hn cun theo mong mun.
3. Ch kch hot vng d liu hin hnh:
Phng php ny linh hot hn, t ng gii hn vng cun bng tnh va bng
vng d liu ca bng tnh m bn t code sau:
Private Sub Worksheet_Activate( )
Me.ScrollArea =Me.UsedRange. Address
End Sub

on code trn s chy mi khi bn kch hot bng tnh m bn t code. D vy


cng c hn ch l bn khng th thm d liu vo dng mi hoc ct mi. Bn c
th m rng vng gii hn ra thm 5 dng v 2 ct bng on code sau:
Private Sub Worksheet_Activate()
With Me.UsedRange
Me.ScrollArea = .Resize(.Rows.Count + 5, .Columns.Count + 2).Add
ress
End With
End Sub

Cn nu bn mun hn na, nhp liu thm 1 cch thoi mi, th dng 1 on code
nhm reset vng cun bng nguyn sheet::
Sub ResetScrollArea( )
ActiveSheet.ScrollArea = ""
End Sub

Bn c th gn short key (phm tt) cho on code ny bng cch nhn Alt F8,
chn macro ResetScrollArea, nhn nt option, v gn 1 phm tt th d Ctrl + W.

Sau ny mi khi bn mun nhp liu, nhn Ctrl + W trc khi nhp liu. Khi nhp
liu xong, ch cn bn kch hot 1 sheet khc xong quay li sheet ny, vng cun
li b gii hn bi oncode trn (Worksheet_Activate())

Chiu th 09: Kha v bo v nhng c cha


cng thc
Chiu ny gip bn cho php ngi khc thay i cc c cha d liu, nhng
cm h thay i cc cha cng thc. Bn cng c th bo v cc c cha
cng thc m khng cn phi bo v ton b trang tnh ca bn.

Khi to mt bng tnh, thng chng ta s phi dng n mt s cng thc, v khi
chia s bng tnh cho mi ngi, c th bn mun rng, khng ai c th can thip
(xa, sa...) nhng vo nhng c cha cng thc. Cch d nht l cng ph bin
nht l Protect (bo v) bng tnh. Tuy nhin, Protect bng tnh khng ch ngn
khng cho can thip vo cc cha cng thc, m n khng cho can thip vo tt
c, ngha l khng ai c th lm g bng tnh ca bn. i khi, bn li khng mun
nh vy, bn ch mun bo v cc cha cng thc thi, cn nhng cha d liu
th khng.
C ba gii php thc hin iu ny: Kha nhng cha cng thc, s dng
chc nng Data-validation cho cc cha cng thc, v t ng bt tt chc nng
bo v.
Kha cc cha cng thc
Theo mc nh, tt c cc trong bng tnh u c kha (locked), tuy nhin, n
chng c tc dng g tr phi bn p dng lnh Protect bng tnh. y l cch d
nht p dng lnh Protect cho bng tnh, nhng ch nhng cha cng thc th
mi b kha, v c bo v:
Chn ton b bng tnh, bng cch nhn Ctrl+A, hoc nhn vo ci vung nm
giao im ca ct A v hng 1. Ri nhn nt phi chut v chn Format Cells, ri
trong tab Protection, b nh du ty chn Locked, ri nhn OK:

M kha (Unlock) ton b bng tnh bng cch b ty chn Locked


Sau , bn chn i mt no , chn Home Find & Select Go To
Special [E2003: Edit | Go To | Special]; hoc nhn Ctrl+G hay F5 ri nhn vo
nt Special.... Hp thoi sau y s m ra:

Dng hp thoi Go To Special chn cc c cha cng thc


Trong hp thoi , bn nhn vo ty chn Formulas, v nu cn thit th chn
hoc khng chn thm 4 nh di (lit k cc loi cng thc, mc nh th c 4
ny u c chn), v nhn OK. Sau , bn m li hp thoi Format Cells
ni trn, nhng ln ny th bn nh du vo ty chn Locked, v nu bn thch
n lun cng thc (khng cho thy) th nh du vo ty chn Hidden, nhn OK.
Vic cui cng l Protect bng tnh: Chn Home trn Ribbon, nhn vo Format
trong nhm Cells, ri nhn vo Protect Sheet...; hoc chn Review trn Ribbon,
ri nhn vo Protect Sheet [E2003: Tools | Protection | Protect Worksheet]:

Chn Protect Sheet t Home

Chn Protect Sheet t Review


Trong hp thoi Protect Sheet, b nh du ty chn Select locked cells, ch cho
php Select unlocked cells (chn nhng khng kha), v nhp vo mt
password, nu cn thit:

B ty chn Select locked cells trong hp thoi Protect Sheet


Vy l xong. T by gi, nhng cha cng thc ca bn s c bo v, c th
khng xem thy c nu bn chn Hidden, bn khng lo nhng cng thc ny
b can thip na.
S dng Data-validation
S dng Data-validation, ch l n gin khng cho ghi vo nhng c cha
cng thc, ngha l khng cho sa cng thc. Tuy nhin, phng php ny ch
phng nga cho chnh bn, ngha l trnh vic ty my sa li ci g trong
nhng cha cng thc, ch tht ra, mc d c "Validation", bn vn c th
xa cng thc, hoc dn vo nhng bt k d liu no bn thch... Ni chung
n khng bo v c g nhiu. Nhng cng xin ni s qua v phng php ny:
thc hin, bn hy chn nhng cha cng thc bng chc nng Go To
Specials m ti ni trn. Ri, vi nhng cha cng thc ang c chn,
bn gi Data Validation t menu Data trn Ribbon [E2003: Data | Validation].
Trong hp thoi ny, chn tab Settings, chn Custom cho khung Allow, v nhp
cng thc ny: =" " vo khung Formula, ri nhn OK, nh hnh sau:

S dng Data Validation bo v nhng cha cng thc


K t y, mi khi bn nhp bt k th g vo trong nhng cha cng thc, hoc
bn mun sa li cng thc, s c mt cnh bo xut hin, ngn khng cho bn
nhp vo. Xin nhc li, phng php ny khng cm vic xa hn cng thc, cng
nh dn th g vo nhng cha cng thc.
T ng bt tt chc nng bo v
Phng php ny, s t ng bt chc nng bo v bng tnh (Protect) mi khi bn
chn mt c kha (locked), nhng n cng s t ng tt chc nng bo v
khi bn chn mt khng b kha.
bt u, bn hy chc chn rng nhng bn mun bo v ( cha cng thc)
c kha, cn nhng khng cn bo v th khng b kha, nh ti trnh
by phng php th nht. Sau , bn nhn Alt+F11, nhn vo Sheet m bn
mun bo v cc kha trong , ri nhp vo trong khung son tho on
code sau y:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Locked = True Then
Me.Protect Password:="Secret"

Else
Me.Unprotect Password:="Secret"
End If
End Sub

Nu khng cn n password, bn khng cn dng on Password:="Secret", hoc


nu mun Password l th g khc, bn sa li ch Secret bng ci bn mun.
Nu bn lo rng ngi ta c th vo trong khung son tho VBA xem password,
bn c th bo v cc code ny (khng cho xem) bng cch chn Tools
VBAProject Properties, chn tab Properties, chn Lock Project for Viewing,
v nhp vo mt password.
Tuy nhin, phng php ny cng khng hot ng hon ho, mc d n cng
gip bn c phn no vic bo v cc cng thc. T kha Target c s dng
trong on code s ch tham chiu n ang "active" ngay ti thi im n
c chn (xin ni thm, cho d bn chn mt dy, nhng trong dy , ch c
mt "active" m thi, l ang c mu khc vi nhng cn li). V l do ny,
nu mt ngi no chn mt dy cc (vi "active" khng b kha), th ngi
c th xa ton b dy ny, bi v khi th chc nng Unprotect c t
ng bt!

Chiu th 10: S dng nh dng theo iu kin


tm d liu trng
nh dng theo iu kin ca Excel thng c s dng xc nh gi tr trong
phm vi c th trn bng tnh, nhng chng ta c th ci tin n nhn dng s
trng lp d liu trong mt danh sch hoc mt bng. Chc nng nh dng theo
iu kin trong Excel 2007 c ci tin, do vy bi hng dn ny thch hp
cho cc phin bn t Excel 2003 v trc.
Mi ngi thng xuyn phi nhn din s trng lp d liu trong mt danh sch
hoc mt bng, v lm th cng cng vic ny c th mt nhiu thi gian v d
mc li. lm cho cng vic ny d dng hn, bn c th ch bin cng c nh
dng theo iu ca Excel mt t.

V d nh, bn c mt bng d liu l vng $A$1:$H$100. Bn chn n bng cch


chn trn cng bn tri ca bng (A1) v ko chut n di cng bn phi
(H100). iu ny rt quan trng, v ta mun A1 phi l hin hnh (active) trong
vng la chn. Sau vo Format | chn Conditional Formatting.

Lnh nh dng theo iu kin trong Excel 2003

Trong hp thoi Conditional Formatting, bn chn Formulas Is ti Condition 1


v nhp cng thc sau vo hp trng bn cnh:
=COUNTIF($A$1:$H$100,A1)>1

Hp thoi Conditional Formatting

Nhn chn nt Format | chn mu v kiu ch ti ngn Font v chn mu nn ti


ngn Patterns. Nhn OK khi hon tt vic nh dng. Nhn tip OK p dng
nh dng cho vng d liu ang chn.

Hp thoi Format Cells

Theo bng s liu minh ha th hu ht cc u c d liu trng tr hai H7 v


H49.
Trong cng thc nh dng theo iu kin ny, ta s dng tham chiu tng i
cho a ch cn kim tra trong vng a ch xc nh. Bng cch s dng nh
dng theo iu kin nh th ny, Excel s t ng nhn bit a ch lm iu kin
trong hm COUNTIF. C th th cc cng thc nh dng theo iu kin ti cc
nh sau:
A1 s c cng thc l: =COUNTIF($A$1:$H$100,A1)>1
A2 s c cng thc l: =COUNTIF($A$1:$H$100,A2)>1
A3 s c cng thc l: =COUNTIF($A$1:$H$100,A3)>1

B1 s c cng thc l: =COUNTIF($A$1:$H$100,B1)>1


B2 s c cng thc l: =COUNTIF($A$1:$H$100,B2)>1

nh dng theo iu kin trong Excel 2007 c sn tnh nng lm ni cc gi tr


trng trong mt vng d liu. Cc bc thc hin nh sau:
Chn vng d liu | vo ngn Home | chn Conditional Formatting | chn
Highlight Cells Rules | chn Duplicate Values

Lnh Duplicate Values ca Conditional Formatting trong Excel 2007


Trong hp thoi Duplicate Values, bn chn kiu Duplicate (hoc Unique: duy
nht) v chn nh dng ti hp k bn sau nhn OK.

Hp thoi Duplicate Values

Chiu th 11: Tm d liu xut hin 2 hoc nhiu


ln bng cng c Conditional Formating
D cho cng c Conditional Formating ci tin rt nhiu trong Excel 2007, gip
chng ta tm nhng d liu trng (Duplicate), nhng n vn cha cung cp nhng
tnh nng tm ra nhng d liu xut hin 2 ln hoc nhiu hn.
Nu bn mun xc nh nhng d liu 2 ln hoc nhiu hn, bn c th dng
Conditional Formating vi s lng nhiu cc iu kin, trong gii hn cho php
ca b nh h thng. (Nh rng trong Excel 2003 tr v trc, ch chp nhn c 3
iu kin). Sau bn gn nhng nh dng mu sc cho mi iu kin.
thc hin, chn A1 l trn cng bn tri ca vng d liu, bm shif v
clickvo H100. Cn nhc cc bn 1ln na, l phi lmng trnht cho
chn (activecell) l A1. By gi vo tab Home, Conditional Formating, NewRule
trong mc Style. Chn [FONT=Birka]Use a Formula to determine which cells to
format v click chn Format values where this formula is true. i vi Excel
2003: Format, Conditional Formating, chn Formula Is). Trong trng g cng
thc:
=COUNTIF($A$1:$H$100,A1)>3

__________

Nhn nt Format, chn mu nn v mu ch cho nhng cha d liu xut hin


hn 3 ln, v OK.

_____________

Nhn New Rule (trong Excel 2003 chn vo iu kin th 2), lm tip 1 iu kin,
ln ny cng thc l: =COUNTIF($A$1:$H$100,A1)=3.
Nhn New Rule (trong Excel 2003 chn vo iu kin th 3), lm tip 1 iu kin,
ln ny cng thc l: =COUNTIF($A$1:$H$100,A1)=2.
Nh mi ln chn 1 mu khc nhau.
Kt qu: bn c nhng c mu khc nhau cho nhng d liu xut hin 2 ln, 3
ln, v nhiu hn.
Cn nhc li chuyn chn ng vng chn sao cho A1 l hin hnh, Excel
hiu ng iu kin trong cng thc CountIf. V: Excel 2003 gii hn bi 3 iu
kin, trong khi Excel 2007 ch b gii hn bi b nh h thng.

Chiu th 12: To ring mt thanh cng c cho


ring mt bng tnh c th
Bn tng to ra thanh cng c ring cho mnh? Bn c thy rng, thanh cng c
ny lun lun c np vo Excel, v lun hin th, vi bt k bng tnh no, vi
bt k ngi s dng no? C bao gi, bn mun rng, thanh cng c t to ny
ch c hin th vi mt bng tnh c th no m thi khng?
V d, bn t to ra mt thanh cng c c cha nhng nt dng h tr vic nhp
cng thc v x l bng (nhng du =, +, -, *, /, nhng nt dng xa hng, xa
ct, v.v...), tm gi l thanh cng c A, phc v ring cho bng tnh B. V bn
mun, lm th no ch khi bn m bng tnh B, th mi thy thanh cng c A
ca bn, cn m bng tnh khc, th ch thy nhng thanh cng c mc nh ca
Excel? Thm ch trong cng mt ca s Excel, nhng khi bn kch hot bng tnh
B, th mi thy thanh cng c A, cn khi nhn Ctrl+Tab chuyn sang bng tnh
khc, th thanh cng c A ny s bin mt?
Thit ngh, chc hn c lc bn mun iu ti va ni. V n gip cho thanh
cng c ca Excel lun gn gng, ngn np (lun l thanh cng c mc nh ca
Excel), nu khng phi l bn, m l ngi khc, th khng c g b ng vi thanh
cng c l hoc; hoc l, ch khi no m bng tnh B ra, th mi cn n thanh
cng c A, cn bnh thng th chng cn...
Vic ny, khng c g kh. Bn ch cn chn mt on code n gin vo trong
"Private module" ca bng tnh.
Trc ht, bn hy to cho ring mnh mt thanh cng c. t tn cho n l
"MyCustomToolbar" chng hn.
Tip theo, bn nhn Alt+F11 m ca s Microsoft Visual Basic, nhn p vo
This workbook trong khung Project. Bn cng c th lm nhanh vic ny bng
cch nhn nt phi chut vo ci biu tng Excel b t nm ngay bn tri menu
File, ri chn View Code, ca s VBA cng s m ra vi This workbook c
chn sn:

Nhn phi chut vo biu tng Excel nh bn tri menu File ri chn View Code
Ri, nhp vo hai on code sau y:

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 = Fal
se
On Error GoTo 0
End Sub

Bn c th thay th "MyCustomToolbar" bng ci tn m bn t cho thanh


cng c t to ca bn. Sau bn nhn Alt+Q tr v Excel.
th, bn hy m thm mt bng tnh na, Book2.xls chng hn. Bn s thy,
khi no bn chn bng tnh m c on code trn, th bn mi thy
"MyCustomToolbar", cn nu chn Book2 (chuyn i qua li gia cc bng tnh
bng Ctrl+Tab), "MyCustomToolbar" bin mt! Chn li bng tnh ban u,
"MyCustomToolbar" xut hin li. Vy l thnh cng ri!
c voi i tin. By gi, gi s bn mun rng, trong cng mt bng tnh,
nhng ch c Sheet1 th mi thy "MyCustomToolbar", cn Sheet khc th khng?
c thi. Bn c th vit thm mt "Level" na cho on code trn. Hy bo m
l bn ang chn bng tnh c cha code (tt nht l bn ng ci Book2 i). Quay
tr li ca s VBA, bn hy nhn phi chut vo Sheet no m bn mun thy
"MyCustomToolbar", ri chn View Code (hoc nhn p vo tn Sheet cng
c). y ti gi s bn chn Sheet1.
Nhp vo hai on code sau y:
Option Explicit
------------------------------------------------------------------Private Sub Worksheet_Deactivate()
On Error Resume Next
Application.CommandBars("MyCustomToolbar").Enabled = Fal
se
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. By gi, bn hy dng chut hoc nhn


Ctrl+PgUp/Ctrl+PgDn chn qua li cc Sheet v xem th ci g xut hin trn
mn hnh.

Chiu th 13: Sao chp cng thc gi nguyn


tham chiu tng i
Ging nh sao chp tham chiu tuyt i)
Trong Excel, 1 cng thc c th cha nhng tham chiu tng i hoc tuyt i.
Khi 1 cng thc c tham chiu tng i c sao chp, th do tnh cht, tham
chiu s chy theo n ch mi. Ch c cng thc c tham chiu tuyt i mi gi
nguyn khi sao chp.
Xin nhc li 1 t:
Khi bn mun cng thc, d cho copy i u, cng tham chiu n 1 hay 1 vng
c nh no , bn phi dng tham chiu tuyt i bng cch thm du $ vo
tham chiu th d $A$1. Bn cng c th ch thm du $ vo tiu ch dng hoc ch
tiu ch ct ch c nh 1 chiu khi copy cng thc.
Nhng i khi bn mun sao chp 1 cng thc tham chiu tng i, gi nguyn

tham chiu, nhng li khng mun chuyn thnh tuyt i? C nhiu cch lm.
1. T en cng thc trong thanh cng thc (formula bar) ri copy, khng copy ,
v ti ch cng paste vo thanh cng thc. Cch ny dng khi bn ch sao chp
1 .
2. Khi bn mun sao chp c 1 khi , th cng Find and replace:
- trc tin, t chn khi mun copy.
- Nhn Ctrl + H l phm tt ca Home Find & Select Replace (2007) hoc Edit
Replace (2003).
- trong find what: g du =
- trong replace with: g du v (&), hoc du nhy n (), hoc bt c k t
no khng dng trong cng thc
- Nhn Replace All
- nguyn nh vy, nhn ctrl + C
- Qua v tr cn chuyn n, nhn Ctrl + V
- nguyn nh vy, chuyn ngc li du & hoc du nhy thnh du = vi cng
c find and replace.
- Tr v vng ngun hi ny, cng chuyn ngc du & thnh du =
Nghe th nhiu kh, nhng vn nhanh hn sa tng tham chiu tng i thnh
tuyt i ca c 1 khi , ri chuyn ngc li.
Ghi ch: Nu ch 1 vi th dng cch 1 nhanh hn. (Ni nh: cch 1 l ca
Ptm0412, nu bn thch th xin nhn thank 1 pht)

Chiu th 14: G b nhng lin kt ma


Bn m mt bng tnh, nhn ngay mt thng bo: "Update links", nhng chng
c link no! Lm th no Update mt link khi n khng tn ti?
Nhng lin kt ngoi (external links) l nhng lin kt tham chiu n mt bng
tnh khc, chng c th nm trong cc cng thc, trong cc Name, hoc trong cc
i tng c chn vo (cc th, cc hnh...). Khi nhng lin kt ny b "gy",

phn ln l do l do vic di chuyn hoc sao chp mt Sheet n mt bng tnh


khc. V khi , chng tr thnh nhng "lin kt ma", ngha l thy ng link,
nhng khng bit chng c dn n t u. Sau y l mt vi cch gip bn x
l nhng lin kt ma ny.
u tin, bn cn xem li liu trong cc cng thc trong bng tnh ca bn c cha
bt k mt lin kt ngoi no (m khng phi l lin kt ma) khng. Nu bn
khng chc rng trong cc cng thc trong bng tnh ca bn c mt lin kt ngoi,
bn hy s dng cng c tm kim. Khi tm ra ri, bn ch vic n gin l sa li
cho n chnh xc, hoc xa hn chng i nu khng cn thit.
Bn cng c th vo trang web ny:
http://www.microsoft.com/downloads/s...displaylang=vi, ti v cng c Delete
Links Wizard, l mt cng c c thit k tm v xa tt c nhng lin kt
nh lin kt n cc Name, lin kt n cc Name n, n cc th, cc query,
cc i tng... Tuy nhin, cng c ny khng tm ra c nhng lin kt ma.
Cho d bn tin chc rng, khng c mt cng thc no c cha lin kt, bn vn
cn phi chc chn l khng c bt k mt lin kt ma no ang np u .
lm vic ny, ti thng m hp thoi Name Manager, d tng Name mt,
chc chn rng khng c mt Name no cha mt tham chiu n mt bng tnh
khc.
Vi Excel 2003, thay v nhn vo tng ci tn xem tham chiu ca n trong
khung Refers to, bn c th s dng cch ny, nhanh hn: Chn menu Insert |
Name | Paste, ri trong hp thoi Paste Name, nhn vo nt Paste Link. Excel s
to ra mt danh sch cc Name c trong bng tnh, cng nhng tham chiu ca
n, ngay trong bng tnh, bn kim tra.
Excel 2007 th d hn, bn c th xem mt ln tt c cc Name trong hp thoi
Define Name. Nhng nu bn cng mun dn chng ra ngoi bng tnh, bn hy
chn Formulas | Use in formula | Paste Name, ri nhn vo Paste List trong hp
thoi va xut hin.

Tuy nhin, vi tt c cc phin bn Excel, cch nhanh nht gi hp thoi Paste


Name, l nhn F3.
Nu c bt k mt Name no tham chiu n mt vng ngoi bng tnh, c th bn
s thy chng c cha t nht mt ng link ging ci hin th trong hp thoi
cnh bo Update Link khi bn m bng tnh. V bn hy t quyt nh l sa li
ng link cho ng, hoc xa Name i.
C mt loi kin kt khc na, nm trong cc biu . Khi bn kim tra cc
cng thc, cc Name nh ti va trnh by, m bng tnh ca bn vn i Update
Link, bn nn kim tra cc biu (nu c), ngha l kim tra vng d liu v nhn
X-asis ca biu xem chng c cha mt lin kt ngoi no khng. Nu tm thy,
hy sa li ng link cho ng.
Cc lin kt ngoi cn c th np trong cc i tng (object) nh l cc Text box,
cc hnh v, v.v... Cc i tng ny c th c lin kt n mt bng tnh khc.
Cch d nht chn nhanh cc i tng, l bn ng ti bt k mt no trong
bng tnh, chn Home | Find & Select | Go to Special [E2003: Edit | Go to... |
Special], hoc nhn F5, ri kch hot ty chn Object v nhn OK. Cc thao tc
ny s chn tt c cc i tng (object) c trong bng tnh. Bn nn lm nhng
vic sau y trong 1 bn sao ca file: Vi tt c cc i tng ang c chn, bn
c th xa, lu bng tnh, ng bng tnh, v m ra li xem th c cn vn g
na khng.
Cui cng, ni m bn phi tm l trong nhng sheet n m bn to ra, du i
ri qun pht. Bn hy lm cho chng hin ln (2007: View Unhide, 2003:
Format Sheet Unhide). Nu mc Unhide ny b m i, ngha l khng c
sheet n. Nu bn vn cn nghi ng rng co nhng sheet siu n, hy c li chiu
s 5 tm v buc chng hin ra.
Th l bn x xong nhng link c thc m b gy. By gi n nhng link ma.
M fle b li ln, Chn Data Edit links (2007) hoc Edit Links (2003). i khi
bn ch cn nhn chn vo ci link ma, nhn Change Source, v gn tr li chnh
ci link . Nhng thng th bn b 1 thng bo li rng cng thc no b li,
v khng thc hin c.

Nu bn lm cch d nh vy khng xong th p dng cch ny:


M c 2 file ln, file li v file c link n. T 1 bt k ca file li, nh du
bng (=), ri qua file kia chn cng 1 bt k, ri Enter. Bn to c 1 link
thit, link ngon. Lu c 2 bng tnh li, nhng ng ng. Vo bng tnh li, li
chn Data Edit links (2007) hoc Edit Links (2003), Change source, sa mi
tham chiu ca link ma vo bng tnh kia. Lu li ln na ri xo cha link bn
mi to.
Cch ny thng l c hiu qu tr ma, by gi Excel nhn ra rng bn xo link
n bng tnh cn li. Nhng nu vn cha tr tn gc v vn b li, bn lm bc
tip theo, nhng nh l lm trn 1 bn sao ca file li.
Cch ny s xo vnh vin d liu ca bn, nn tt nht l to 1 bn d phng
trc. M file li ln, delete 1 sheet, lu, ng, ri m ln li. Nu khng cn
thng bo update link ma, th 100% link ma nm trong sheet . Nu khng, delete
tip 1 sheet na kim tra. Trc khi xo sheet cui cng, phi insert 1 sheet
trng. Nh ghi li nhng sheet cha link ma.
Tip theo, m file backup hi ny ln, back up ln na, tr vo sheet li hi ny
bn ghi nh. By gi chn tng vng 10 x 10 d liu, xo bng lnh Clear
Clear All. M khoan, bn backup ln 2 cha? Nu cha th back up i nh. By gi
li lu, ng, m ln li xem cn li khng. Nu cn, chn vng 10 x 10 tip
theo, li xo, lu, ng, m ln xem thng bo update link. n khi no m khng
cn thng bo link ma th ngha l link ma nm trong vng 10 x 10 mi xo. Bn
tp trung tm kim trong khu vc ny, tng mt, s thy li ra con ma.
Hy vng bn thc hin thnh cng bng chiu ny, khng bao gi bc mnh v
nhng con ma quy nhiu na.

Chiu th 15: Gim kch thc file Excel b


phnh to bt thng
Bn c bao gi c 1 file Excel b tng kch thc n mc bo ng ch bit
nguyn nhn? C nhiu l do lm cho bng tnh b phnh ln v kch thc file v
c nhng cch loi tr. Nhng b quyt sau y c th gip bn nu bn c 1
file Excel c kch thc ln bt thng.
C khi no bn b bi thc do c n m cha tiu ho kp cha? File Excel cng
th. N b phnh ra l do bn c nhi nht th vo bt n phi thc hin, n phi
nut trng ch khng kp nhai, hu qu l n s khng lm vic nh mun.
Ti th vi 1 file Excel chun vi kh nhiu d liu. Vi d liu th, n c kch
thc 1,37 Mb. Ri ti cho vo 1 Pivot Table, s dng d liu ngun l 4 ct ca
vng d liu. Kch thc file tng ln 2,4 Mb. Ti th thit lp vi nh dng, v
kch thc file lp tc b nhn i.
Mt trong nhng nguynnhn ch yu lm tng kch thc file nhng file Excel
trc 2007, khi cha c khi nim table, l cc bn c th nh dng mu, c font,
mu ch, ng khung, . .. cho c ct hoc cho c dng, nu khng ni l c bng
tnh; ch khng ch nh dng cho khu vc cha d liu. Ti tng thy ngi h
m bng tnh mi ln, l lp tc Ctrl A, t trng ton b, ng khung ton b.
Khng nhng th h cn xc nh vng d liu ngun cho biu , cho Pivot table,
. . . l c nguyn ct. C khi thy ci thanh cun dc v ngang ca Excel tr nn
nh t t, ko hoi khng thy ht m d liu th trng trn.
gii quyt bn phi sa, b ht nhng nh dng tha trong nhng dng ct
trng, b ci thi quen xo mu fill color bng cch chn fill trng. Hy chn No
Fill! Sau iu chnh d liu ngun ca biu , ca Pivot Table ch va vi
vng c d liu.
Hy lm nh sau: trc ht hy back up bng tnh li.
1. G b nhng nh dng trn nhng dng ct tha:
Bc u tin l xc nh bng tay v mt cui cng bn phi di, c cha d
liu. ng c m dng phm ctrl+ mi tn xung hoc ctrl + mi tn qua phi,
hoc dng Find - Select - Go To Special Last Cells, cch ny s ch ti cui

cng c nh dng, khng phi cui c d liu. Khi xc nh bng mt cui


cha d liu th click chn nguyn dng k di . Lc ny i nhn Ctrl + Shift
+ mi tn xung chn ton b nhng dng bn di vng c d liu. Sau
dng lnh Clear All xo vng ny.
Tng t, khi xc nh cui c cha d liu xong, nhn chn nguyn ct lin k
bn phi, nhn tip Ctrl + Shift + mi tn qua phi chn ton b ct bn phi.
Sau li dng lnh Clear All xo vng ny.
Khng nn dng lnh xo dng hoc ct, v c th c nhng cng thc tham chiu
n chng. Lu bng tnh li v th xem kch thc file trong Property:
2007: Office button Prepare Properties Document Properties Advanced
Properties
2003: File Properties General
2. Xo Macro: Khng pho l xo hn Macro, m ch g chng ra ngoi file Excel:
C 1 cch nhanh, khng gy hi l Export tt c cc modules v UserForms vo
a cng. Nhn Alt F11 vo ca s VBA. nhn chut phi vo tng module, chn
remove module (tn mdule). Trong thng bo hin ra nhn Yes, v chn 1 th
mc lu li. lm tip cho tng ci Form. ng qun c nhng macro lu tr
trong sheet hoc workbook.
Sau khi xo xong, lu bng tnh li. Sau , cng trong ca s VBA, vo menu
File Import File v import ht nhng modue v form hi ny. Lm nh vy, ta
vn c th s dng form v Macro, nhng mi ci nh vy s to1 file text, v
ngn chn nhng th linh tinh m Macro mang theo.
Mt s ng dng trn Internet c th lm cng vic ny, nhng c bit rng
nhng tin ch s lm ri tung code v thm ch lm tng kch thc file. Tt
nht trc khi ng dng 1 tin ch no, hy backup file ca bn trc.
3. iu chnh vng d liu ngun:
Nu sau khi lm nhng bc trn m kch thc file ca bn khng gim c bao
nhiu, hy kim tra d liu ngun ca Pivot Table v Pivot Chart. Mt vi ngi
thng s dng nguyn c ct d liu lm ngun cho Pivot table, ch phng

xa sau ny c thm d liu cp nht vo d ch vi dng. Nu nht thit phi phng


xa nh vy, tt hn bn dng name ng. Xem thm tuyt chiu s 47.
4. Lm sch cc sheet:
Trong cc sheet ca bn c th tn ti nhng nh dng tha, nhng style, nhng
autoshape thy c v khng thy c (c khi ln n hng trm hoc hng
ngn).
a. Xo object v autoshape tha. tm ra nhng autoshape hoc object n bn
phi vo option ca Excel sa li nh hnh sau:
2007:

2003:

Bn c th nhn Ctrl + G, Special Object chn 1 lc nhiu object.

b. Lm sch nhng ci khng nhn thy trong sheet:


Trc tin, bn hy backup bng tnh. Unhide ton b sheet n v c sheet siu n.

(xem thm chiu s 5). By gi bnth xo ln lt tng sheet mt (xo hn), lu


li, ri vo Property xem li kch thc. Nu sau khi xo sheet no, m kch thc
file gim ng k, th sheet cha nhiu rc (khng k d liu). Vy, khi xc
nh sheet cha rc th bn phi lm g?
Bn hy m file backup hi ny ln, to 1 sheet mi toanh, chn vng d liu ca
sheet cha rc, dng lnh Cut (Ctrl + X), ch ng copy, Paste vo sheet mi.
Bng cch ct (Cut), Excel s gi nguyn tham chiu cho bn.
Cui cng, delete sheet cha rc.
Hy vng l sau ny, cc bn s bit cch x l nhng file c kch thc ln l
thng.

Chiu th 16: Cu d liu t mt bng tnh b li


Khi bng tnh b li (corrupt), b h, ngha l bn b mt ht d liu, m nhiu
khi s mt mt ny cn au hn l mt tin. Chiu ny s gip bn mt vi cch
phc hi li phn no d liu trong nhng bng tnh b li.
Mt bng tnh i khi gp phi nhng li m bn chng hiu v l do g. iu ny
c th em li cho bn nhng vn trm trng, nht l khi bn b h mt bng
tnh quan trng m bn cha h sao lu d phng. Do , bi hc u tin l:
Lun lun sao lu bng tnh ca bn vo mt ni khc. Nhng trong thc t th
khng phi ai cng nh iu ny, v, c th l bng tnh ca bn s b h trc khi
bn ngh n vic sao lu!
Tuy nhin, bn ng tht vng qu, v cho d bng tnh ca bn b li, i khi bn
vn c th m c n ra v c th lm c ci g ...
Khi bn vn cn m c bng tnh
Khi bn vn cn c th m c mt bng tnh b li, th trc khi lm bt c iu
g, bn hy sao lu ngay ra mt bn khc, nu khng, c th bn s mt lun n. V
nu cn gi c bn sao lu, bn c th cu cu c mt s gip chuyn
nghip hn, khi bn khng th lm g na.

1. Bn hy m ci bng tnh b li ra, vi phin bn Excel cao nht c th, v li


nhn lu thm mt ln na, tuy nhin iu ny th khng cn thit nu nh bn
ang dng Excel 2007.

2. Nu nh bng tnh lm bng cch trn y khng hot ng, bn hy c gng


m li ln na v lu n di dng HTML (Single File Web Page) hoc HTM
(Web Page). Ri ng n li, v li m ra, nhng ln ny th lu li vi dng bnh
thng (*.xls chng hn).

Khi lu dng HTML hoc HTM, bng tnh ca bn s b mt nhng th sau y:


Vi nhng bng tnh to ra t Excel 2007:
- Nhng tnh nng mi ca Excel 2007
- Cc PivotTable v cc biu (chng vn c lu li, nhng s mt ht
khi bn m ra v lu li vi dng bnh thng ca Excel)
- Cc VBA Project.

Vi nhng bng tnh to ra t nhng phin bn trc Excel 2007 (Excel


2003, Excel XP,...):
- Nhng nh dng s cha dng n
- Nhng style cha dng n
- Cc thit lp Data Consolidation
- Cc Seriano
- Cc cng thc s dng ngn ng t nhin, chng s c chuyn i thnh
cc tham chiu dy bnh thng
- Cc hm t to
- Cc nh dng gch ngang ch (strikethrough), ch s trn (superscript),
ch s di (subscript)
- Cc thay i c th hi phc (bng lnh Undo)
- Cc thit lp nh dng trang cho cc biu c nhng trong bng
tnh
- Cc danh sch ci t cho cc ListBox v ComboBox
- Cc loi nh dng c iu kin (Conditional Formatting)
Ngoi ra, cc bng tnh c chia s (shared workbook) trong nhng phin bn
trc Excel 2007 s khng cn chia s c na. Vi cc biu , nhng thit lp
cho "Value (Y) axis crosses at category number" trn tab Scale trong hp thoi
Format Axis s khng c lu, nu nh ty chn "Value (Y) axis crosses a
maximum category" c chn; nhng thit lp "Vary colors by point" trong hp
thoi Format Data Series cng khng c lu nu nh biu cha nhiu hn
mt Data Serie.
3. Cui cng, nu nh bng tnh vn khng hot ng, hy c gng m li bng
tnh mt ln na, v ln ny th lu n vi dng SYLK (loi tp tin c ui l
*.slk - Symbolic Link). Nhng hy nh rng, khi bn lu dng ny, th ch c
Sheet hin hnh (active sheet) c lu, do , nu trong bng tnh c nhiu Sheet,
bn hy lm thm vi ln, vi mi ln mt Sheet, nh t tn cho n sao cho d
nhn bit. Ri li m ci bng tnh *.slk ra, v lu li vi dng bnh thng
(*.xls chng hn).

Khi bn khng cn m c bng tnh


1. Nu nh bng tnh b h ca bn khng th m ra c na, bn hy th dng
Microsoft Word m n. Nghe th c v bun ci, nhng i khi, bn c th
copy c mt vi d liu trong bng tnh ny (d nhin tt c nhng nh dng,
cng thc, v.v... th mt ht).

2. Bn hy m mt bng tnh mi, v to cho n mt Extenal Link (lin kt ngoi)


n bng tnh b h. V d:
='C:\Documents and Settings\BNTT\My Documents\[ChookSheet.xls]Sheet1'!A1
Copy lin kt ny vo nhng khc (s lng bao nhiu th ty thuc vo tr nh
ca bn v ci bng tnh b h, n c bao nhiu hng, bao nhiu ct...), v cng
lm tng t cho nhng Sheet khc (nu cn thit). Nu bn khng nh c bt
k tn Sheet no trong bng tnh b h, bn c to i mt Sheet vi ng dn
chnh xc, Excel s hin th tn ca Sheet khi bn nhn Enter. C th bn s thy

c g ...

3. Nu hai cch trn khng em li cho bn iu g, bn hy vo trang web


Openoffice.org, download phin bn min ph ca b phn mm ny v. Ngoi tr
cc tn trn menu v toolbar, Openoffice.org kh ging Excel, v n c to ra
cng mt cu trc bng tnh vi Excel (c n 96% cc cng thc trong Excel c
th s dng trong bng tnh ca Openoffice.org).
Sau khi download phin bn min ph ca Openoffice.org, bn ci t n vo
my. Ri dng n m bng tnh b h ca bn. Trong kh nhiu trng hp, d
liu ca bn s c phc hi. Tuy nhin, nhng VBA code th khng cn g c, v
cc VBA code ca Excel khng tng thch vi Openoffice.org.

4. Nu s bn qu en, khng th dng Openoffice.org cu d liu, vn cn mt


cch na, nhng bn phi mt tin. Mt trong nhng chng trnh c th phc hi
kh tt nhng bng tnh b h l Corrupt File Recovery. Bn hy ti v ci t phn
mm ny, chy chng trnh ExcelFix, nhn Select File, chn bng tnh b li, v
nhn Diagnose phc hi. Bn s thy thnh qu ca mnh, v c th lu li bng
tnh, nu nh bn tr tin bn quyn, cn nu cha tr tin bn quyn, th bn
ch c th xem ch khng th lu li.

Chiu th 17: S dng Data-Validation khi danh


sch ngun nm trong mt Sheet khc
S dng Data-Validation l mt cch d nht p dng mt quy tc nhp liu
cho mt dy d liu. Theo mc nh, Excel ch cho php Data-Validation s dng
nhng danh sch ngun nm trong cng mt Sheet vi dy d liu s c p dng
quy tc ny. Tuy nhin, vn c cch lch khi chuyn .

Chiu ny s gip bn lm cho Data-Validation c th s dng nhng danh sch


ngun nm trong mt Sheet khc. Cch th nht l li dng chnh vic t tn cho
mt dy ca Excel, cch th hai l s dng mt hm gi ra danh sch .

Cch 1: S dng Name cho dy ngun

C l cch nhanh nht v d nht vt qua ro cn Data-Validation ca Excel


l t tn cho dy m bn s dng lm quy tc nhp liu. bit cch t tn cho
dy, bn xem lot bi ny: S dng tn cho dy.

Gi s bn t tn cho dy s dng lm quy tc nhp liu l MyRange. Bn


chn (hoc dy) trong bt k Sheet no m bn mun c mt danh sch x ra
nhp liu, ri trong menu Data trn Ribbon, bn chn Data Tools | Data Validation
[E2003: Data | Validation]. Chn List trong danh sch cc Allow, v trong khung
Source, bn nhp vo =MyRange. Nhn OK. Bi v bn s dng mt Name
lm List, nn bn c th p dng Data-Validation ny cho bt k Sheet no.

Cch 2: S dng hm INDIRECT

Hm INDIRECT() cho php bn tham chiu n cha d liu text i din cho
mt a ch . V ri bn c th s dng nh mt tham chiu cc b, cho d
n tham chiu n d liu trong mt Sheet khc. Bn c th s dng tnh nng ny
tham chiu n ni cha dy m bn s dng lm danh sch ngun cho quy tc
Data-Validation.

Gi s, dy cha danh sch ngun ny nm Sheet1, trong dy $A$1:$A$8.


to mt Dala-Validation, bn cng lm nhng bc nh ti ni cch 1, nhng
thay v g tn dy vo trong Source, th bn nhp vo cng thc:
=INDIRECT("Sheet1!$A$1:$A$8"). Hy chc chn rng ty chn In-cell dropdown ang c kch hot, v nhn OK.

Nu tn Sheet ca bn c cha khong trng, hoc c du ting Vit, bn phi


t tn Sheet trong mt cp nhy n ('). V d, gi s tn Sheet cha danh sch
ngun l Sheet 1 (ch khng phi Sheet1), th bn sa cng thc trn li nh sau:
=INDIRECT("'Sheet 1'!$A$1:$A$8"). Ch khc nhau so vi cng thc hi ny l
c thm mt du nhy n (') sau du nhy kp ("), v mt du nhy n (') na
trc du chm than (!).

Xin m mt ngoc n: Nu nh c th c, khi gp nhng tham chiu n tn


Sheet, bn nn tp thi quen lun lun b n vo trong cp du nhy n. iu
ny, tuy chng c tc dng g vi nhng tn sheet nh Sheet1, DMHH... nhng n
s gip bn khng bao gi gp li, khi bn hay t tn Sheet c khong trng, hay
l c b du ting Vit...

u im v Khuyt im ca c hai cch nu trn

t tn cho dy, v dng hm INDIRECT, u c ci tin li v c ci bt tin.

Tin li ca vic t tn cho dy, l vic bn thay i tn Sheet chng c nh


hng g n Data-Validation. V chnh l ci bt tin ca vic dng
INDIRECT, khi bn i tn Sheet, tn mi s khng t ng cp nht trong cng

thc dng INDIRECT, cho nn nu vn mun dng cng thc ny, bn phi m
Data-Validation ra v sa li tn Sheet trong cng thc.

Tin li ca vic dng INDIRECT, l dy dng lm danh sch ngun ca bn


lun lun nm yn ch chn (A1:A8 trong v d trn chng hn). Cn nu bn
dng Name, m bn l tay xa mt vi hng (hoc ct) ngay ch cha Name, th
bn phi iu chnh li cho ng...

Chiu th 18: iu khin Conditional Formating


bng checkbox.
Mc d Conditional Formating l 1 trong nhng chiu mnh ca Excel, nhng
mun bt hay tt n bng ribbon hay menu th kh bc bi. By gi ta bin ho
bng cch iu khin bng 1 checkbox ging nh 1 cng tc (hoc 1 ci toggle
Button cng ging hn).
Conditional Formating c t i Excel 97, gn nh dng cho nhng no tho 1
s iu kin no . iu kin c th l 1 iu kin v gi tr, nhng ta c th tu
bin nhiu hn khi dng iu kin l cng thc, da vo ta c th thay i nh
dng cho nhng ny, khi c s thay i gi tr ca khc.
1. Dng 1 Checkbox hoc 1 Toggle Button xem v n d liu:
Bn mun mt vng d liu no ch hin ra lc cn xem, xem xong th bin i
cho rnh. Trc tin bn phi gn ln sheet 1 Checkbox hoc 1 Toggle Button.
Trong Excel 2007, vo tab Developer, nhn Insert trong Controls - chn Checkbox
hoc Toggle Button trong Control Toolbox, trong Excel 2003 chn trong view
Toolbar Control Toolbox, v ln sheet 1 ci. Trong hnh, ti lm th 2 ci.

.................

Nhn vo nt design, click chn ci control bn va v, nhn thm nt Property.


Trong ca s Property, sa dng Caption thnh View/ Hide, sa dng Linked Cell
thnh $C$2. (c 2007 v 2003 nh nhau, c checkbox v Toggle Button nh nhau).

By gi khi bn click chn checkbox hoc nhn nt Toggle, C2 s ln lt c cc


gi tr TRUE v FALSE.

..................
By gi gi s vng d liu ca bn gm 4 fields, trong bn ch mun 3 fields
hin thng xuyn, cn field th 4 th khi no cn mi hin ra xem, khng cn
th du i. Bn nh du chn vng cha field 4, trong 2007 bn vo tab Home,
Conditional Formating, New Rule, chn tip use a formula to determine which
cells to format, trong 2003 l Fornat - Conditional Formating - chn tip
Formula is. Trong k bn, bn g: = $C$2=FALSE.

Nhn vo nt Format, nh dng font ch mu trng. Nhn OK v OK. Nhn nt


design 1 ln na thot ta khi ch design Mode. V nhn nt toggle hoc
click chn ci checkbox xem kt qu.

............

Nu bn khng thch th nh dng C2 ch trng lun, khi thy ch TRUE,


FALSE hin ln.
2. Tt m nh dng mu cho :
Dng Conditional Formating nhm t mu theo iu kin gip ta d tm c
nhng c gi tr c bit cho trc. Excel 2007 c nhiu nh dng khc nhau
cho gi tr s nm trong khong cho trc. Nhng bin php m tt bng
checkbox l khng c sn.
Tng t nh phn trn, ta to ra 1 checkbox hoc 1 Toggle Button link ti
$C$2. Nhng ln ny ta t name cho n l IsFill chng hn. Ta cng t name cho
$A$2 l BeginNum v $B$2 l EndNum, vi A2 l gii hn di th d 100, v
B2 l gii hn trn th d 1.000.
Trong vng d liu B5:B16, ta mun gi tr no nm trong khong BeginNum v
EndNum s c t mu. Vy dng conditional Formating nh trn, chn vng
C8:C18, ln ny cng thc l:
=AND($C8>=BeginNum,$C8<=EndNum,IsFill)
Chn cho n 1 nh dng mu theo mun.
Kt qu: khi nhn button hoc click checkbox thay i trng thi thnh True, cc
cha s trong khong (100, 1.000) s c t mu, cc cn li khng t. Khi thay
i thnh False, cc tr li bnh thng.
ng thi, v bn t cng thc lin quan n BeginNum v EndNum, nn khi
thay i 2 s ny, kt qu t mu cng thay i.

............

Bn thy y, nu bn cha xem bi ny m thy 1 file tng t ca ngi khc,


bn c th lm tng ngi ta s dng code ca VBA. S thc th qu n gin
phi khng?

Chiu th 19: nh du nhng cha cng thc


bng Conditional Formatting
Khi mt c cha d liu, bn c th mun bit d liu trong n thun l d
liu nhp vo, hay d liu l kt qu ca 1 cng thc. Bn c th ch cn click chn
v xem trn thanh cng thc. Bn cng c th dng phm tt Ctrl + ~
chuyn qua li gia ch xem gi tr v xem cng thc.
Chiu s 19 ny s gii thiu vi bn 1 hm t to, kt hp vi Conditional
Formatting nh du cha cng thc. Bng cch ny c th gip bn tm ra tt
c nhng cha cng thc trong s 10.000 m khng phi ng tng mt.
Mc d bn c th dng 1 hm c sn ca Macro4 trong Conditional Formatting,
nh sau:
Trong hp thoi Conditional Formatting, chn cng thc, g cng thc ny: =
CELL(type,A1). Nhng hn ch ca vic dng hm Cell() l cng thc s t tnh
li mi khi c s thay i nh xu trong bng tnh. V Cell() l 1 hm thuc loi
volatile. Khi Excel tnh li Cell() cho 10.000 nh trn s khin cho bn bc mnh
v ch i.
Do bn hy dng tuyt chiu sau y, n gin, d lm v khng phi hm loi
volatile:
Bn hy nhn Alt F11 vo ca s VBA, nhn chut phi vo This Workbook
insert vo 1 module. Nhp on code sau vo khung son tho:

Function IsFormula (CheckCells As Range)


IsFormula = CheckCells.HasFormula
End Function
Do tnh cht ca Property HasFormula, hm bn mi to s tr v cc gi tr lun
l True, False. Ngha l khi bn g vo bt k cng thc = IsFormula(A1) s cho

kt qu True nu A1 cha cng thc v cho kt qu False nu A1 cha gi tr.


ng ca s VBA li, tr v bng tnh. By gi nh du ton b vng d liu ca
bn (c th chn d ra mt s ct v dng, phng khi bn cp nht thm d liu)
sao cho A1 l hin hnh.
Bng cch nh chiu s 18, bn vo c ch cn thit g cng thc trong hp
thoi Conditional Formatting, v g vo:
=IsFormula(A1), sau nh dng t mu hoc i mu ch cho khc nhng cn
li.
Sau khi nhn OK bn s c kt qu l tt c nhng cha cng thc s c t
mu. Nu bn thm hoc thay i 1 , nu tr thnh cng thc th lp tc
i mu.
i khi bn khng thy kt qu, v anh Bill lanh chanh v chm hiu, anh ta cho
rng cng thc s dng hm ca bn l 1 text nn nh t sa thnh :
=IsFormula(A1). Vy bn phi vo ch c sa li.
By gi mi khi bn sa hoc thm 1 tr thnh cng thc, s c mu. ngc
li, nu bn sa 1 cng thc thnh gi tr hoc thm gi tr vo 1 , s khng
c mu.
Ci CF v ci UDF ny n gin m thc s hu ch, bn nh!

Chiu th 20: m hoc cng nhng c


nh dng c iu kin
Chng ta thng hi: "Lm th no tnh ton vi nhng c t mt mu
c th no ?" Cu hi ny thng c nu ra, bi v Excel khng c mt hm
bnh thng no thc hin c nhim v ny; tuy nhin, n c th c thc
hin bng mt hm t to.
Vn duy nht xy ra vi vic s dng hm t to, l n khng th lc ra bt k
mt loi nh dng no c p dng bi vic nh dng c iu kin

(conditional formatting). Tuy nhin, suy ngh mt t, bn vn c th c c kt


qu tng t m khng phi cn n mt hm t to.
Gi s rng bn c mt danh sch di nhng con s trong dy $A$2:$A$100. V
bn p dng nh dng c iu kin cho dy : nh du nhng no c gi tr
nm trong khong t 10 n 20. By gi, bn mun ly ra gi tr ca nhng tha
mn iu kin m bn thit lp, v tnh tng ca nhng c p dng nh
dng . Khng c g kh! Bn ng nhng kiu nh dng c p dng chi
phi bn, ni cch khc, bn khng cn quan tm nhng c nh dng
kiu g. Bn ch cn quan tm n iu kin p dng nh dng cho chng
(trong trng hp ny, l nhng c gi tr trong khong t 10 n 20).
Bn c th dng hm SUMIF() tnh tng ca nhng tha mn iu kin no
, nhng ch mt iu kin m thi! Nu mun c nhiu iu kin, bn phi dng
hm SUMIFS() trong Excel 2007, hoc l dng mt cng thc mng. y ti s
ni n cng thc mng, v n c th s dng trong hu ht cc phin bn ca
Excel.
Vi trng hp v d trong bi ny, bn s dng mt cng thc mng ging nh
sau:
=SUM(IF($A$2:$A$100>10, IF($A$2:$A$100<20, $A$2:$A$100)))
Khi nhp mt cng thc mng, bn ng nhn Enter, hy nhn Ctrl+Shift+Enter.
Khi , Excel s t ng thm mt cp du ngoc hai u cng thc, ging nh
vy:
{=SUM(IF($A$2:$A$100>10, IF($A$2:$A$100<20, $A$2:$A$100)))}
Nu bn t g cp du ngoc , th cng thc s khng chy. Bn phi Excel
lm vic ny cho bn.
V bn cng nn bit iu ny: s dng cng thc mng c th lm cho Excel tnh
ton chm hn, nu nh c qu nhiu tham chiu n nhng dy ln.
Trn din n ny c rt nhiu cc bi vit v cng thc mng, bn c th tham
kho thm. Hoc nu bn gii ting Anh v thch nghin cu su hn v cng thc
mng, bn hy gh thm trang web ny: http://www.ozgrid.com/Excel/arrays.htm.

Mt cch khc
Ngoi vic s dng cng thc mng, bn c th dng mt ct ph tham chiu
n nhng bn ct A. Nhng tham chiu ny s tr v nhng gi tr ca ct A m
tha mn iu kin bn t ra (v d: > 10, < 20). lm iu ny, bn theo cc
bc sau:
Chn B2 v nhp vo cng thc:
=IF(AND(A2>10, A2<20), A2, "")
Ko cng thc ny xung cho n B100. Khi cc cng thc c in vo,
bn s c nhng gi tr nm trong khong 10 n 20 (xut hin trong ct B).
Thm mt chiu ph: nhanh chng "ko" cc cng thc vo trong mt ct
xung n cng hng vi cui cng c s dng ca ct ngay bn cnh
(trong trng hp ny, l "ko" t B2 n B100, l tng ng vi cui
cng c s dng trong ct A, A100), sau khi nhp cng thc trong u
tin ( B2), hy chn , ri nhp p chut (double click) vo ci Fill handle
(l ci nm cht xu nm gc di bn phi ca c chn, m bn vn
thng dng "ko" cng thc)
By gi, bn c th chn bt k mt no m bn mun xut hin tng ca nhng
gi tr tha mn iu kin ra, v s dng mt hm SUM bnh thng
(=SUM(B2:B100) chng hn). Bn c th n (Hide) ct B i nu bn mun.
Mt cch khc na
Cch dng ct ph nh ti va ni, chc chn l chy tt ri. Nhng, Excel cn c
mt hm cho php bn s dng hai hoc nhiu iu kin cho mt dy. lm hm
DSUM().
th n, bn dng li v d trn: tnh tng ca nhng gi tr trong dy
$A$2:$A$100 tha mn iu kin ln hn 10 v nh hn 20. Bn hy chn cc
C1:D2, t tn cho n l SumCriteria. Ri chn C1, nhp vo cng thc:

=$A$1, tham chiu n u tin ca Sheet. Copy cng thc sang D1, bn s
c hai bn sao cho tiu ca ct A, v nhng ny (C1, D1) s c dng nh
nhng tiu ca vng iu kin ca hm DSUM, vng m bn t tn l
SumCriteria (C1:D2).
Trong C2, nhp vo biu thc >10. Trong D2, nhp vo biu thc <20. Ri ti
m bn mun c kt qu l tng ca nhng gi tr tha mn iu kin va nu,
nhp vo cng thc sau:
=DSUM($A$1:$A$100, $A$1, SumCriteria)
DSUM l mt hm c hiu qu nht khi bn lm vic vi nhng tha mn nhiu
iu kin; v khng ging nh mng, cc Hm c s d liu c thit k ring
cho nhng trng hp ny. Thm ch khi chng tham chiu n nhng d liu rt
ln, lm vic vi nhng con s ln, th nh hng ca chng n tc tnh ton
l rt nh so vi vic dng cng thc mng.
Thm mt cch khc na
Cch ny, ti hc c trn Gii php Excel: Dng hm SUMPRODUCT().
Cng vi bi ton tnh tng ca nhng gi tr trong dy $A$2:$A$100 tha mn
iu kin ln hn 10 v nh hn 20. Bn hy chn m bn mun c kt qu l
tng ca nhng gi tr tha mn iu kin va nu, nhp vo cng thc sau:
=SUMPRODUCT(($A$2:$A$100>10) * ($A$2:$A$100<20) * $A$2:$A$100)
Hoc:
=SUMPRODUCT(--($A$2:$A$100>10), --($A$2:$A$100<20), $A$2:$A$100)
Din mt cch bnh dn, th hm SUMPRODUCT s copy khi $A$2:$A$100 ra
thnh 3 mng (trong b nh my tnh): Mng th nht, nu gi tr trong mt m
> 10, s c gi tr l 1 (TRUE), cn khng th bng 0 (FALSE); Mng th hai,
cng tng t nh vy, nhng p dng cho nhng c gi tr <20; v Mng th 3
c gi tr trong mi bng cc gi tr tng ng trong $A$2:$A$100.

Tip theo, SUMPRODUCT s nhn tng nhm 3 gi tr tng ng trong mi mng


vi nhau. Bn s thy, ch khi no gi tr trong mng 1 v mng 2 l 1, th gi tr
c nhn ra mi bng gi tr tng ng trong $A$2:$A$100; cn nu c mt gi
tr no trong mng 1 hoc mng 2 m bng 0, th kt qu ca php nhn ny s
bng 0. Ni cch khc, ch nhng gi tr no trong $A$2:$A$100 tha mn iu
kin >10 v <20 th mi c ly ra.
Cui cng, SUMPRODUCT s cng ht cc kt qu ca php nhn trn (SUM l
php tnh tng, PRODUCT l php tnh nhn, SUMPRODUCT l tng ca cc
tch), v chnh l kt qu m ta mun c.

Chiu th 21: T mu dng xen k


t hn bn tng thy bng tnh Excel vi nhng dng t mu cch nhau, th d
dng chn th t mu xm, dng l khng t hoc t mu khc.
Trnh by bng tnh t mu cch dng nh vy khin cho bng tnh c v Pro v
lm cho ngi dng d c d liu. Bn c th nh dng t t bng tay tng dng,
nu bn kin nhn, nhng bn bit ri y, kin nhn 1 ln th cha . Bn s
phi bc mnh khi cn xo dng, chn dng, cp nht d liu.
May sao, s dng Conditional Formatting c th gip bn thc hin t mu nhanh
v loi b ht nhng phin toi trn sau khi t mu.
Gi s bn c d liu trong vng A1:H57, v bn d tr s cp nht cho n ht
thng s khong 100 dng. Vy bn nh du chn khi A1:H100 sao cho A1 l
hin hnh. Dng cch nh chiu 18, 19, vo ch cn g cng thc ca chc
nng Conditional Formatting, v g cng thc sau:
= Mod(Row(),2)
Nhn format v chn mu t cho dng l. Nguyn nhn t dng l: Cng thc trn
s cho cc gi tr ln lt l 1, 0, 1, 0, n ht dng 100, tng ng vi True,
False, v Conditional Formatting s ch t dng True.

Cng nh vy nu bn mun t mu ct cch ct, th dng cng thc


=Mod(Column(),2)

Ghi ch: Nu bn c s dng ASAP Utilities, bn cng c th lm c nh sau:


Vo menu ASAP Row & Column Color Each nth row or column in selection

Chn Row hoc column tu , chn mu tu , g 2 trong Steps, nh du vo


mc chn Conditional Formatting.

Kt qu cng thc ca Condition l =MOD(ROW()-1,2*1)+1<=1


Cng thc trn c v hi phc tp nhng nu rt gn l: = Mod(Row()-1,2)=0 th
hiu qu tng t nh cng thc trn. S d n phc tp, l c th thay i
phng php t mu theo steps chn. Th d khi chn step = 3, cch 2 dng t 1
dng, ngha l nh hnh sau: Ch t dng c Mod(Row()-1,3)=0

Mc d phng php ny d thc hin, nhng khng linh hot: Tt c cc dng l


t 1 n 100 u b t mu, d c d liu hay khng. (nh li, d liu hin ti ca
bn ch n dng 57). Vy c th ch t t dng n ht dng cui c d liu, c
nhng cha c d liu ch b t mu sau khi nhp liu khng? Hy xem cch sau
y:
T mu ng:
Ch cn bn sa cng thc trn li 1 xu xiu:
=And( Mod(Row(),2),CountA($A1:$H1))
Ch ch tham chiu tuyt i ct v tng i dng. ngha cng thc ny l:
- khi bn ng dng 1, l dng l v vng A1:H1 c d liu => t mu.
- Nu bn ng dng 10, cng thc tr thnh =And(
Mod(Row(),2),CountA($A10:$H10)) ngha l dng chn v c d liu => khng t
mu
- Nu bn ng dng 59: dng l nhng khng c d liu => khng t mu.

M rng: T mu cch 2 dng t 1, hoc t xen k 3 mu tr ln:


bn ch cn sa cng thc ASAP cho ph hp, kt hp vi CountA() cho linh hot.
Th d vi cc cng thc nh hnh:

bn s c kt qu nh hnh, dng no khng c d liu th khng t mu

Chiu th 22: To hiu ng 3D trong cc bng


tnh hay cc
Bt c khi no bn nhn thy mt hiu ng 3D trong mt chng trnh hoc mt
ng dng, chng hn nh Excel, t hn bn s thy mt s nh la qua th gic
c to ra bi cch nh dng c bit. Chnh bn cng c th to ra hiu ng ny
mt cch d dng bng cch nh dng mt hoc mt dy cc . Phin bn Excel
2007 a vo cc styles ca , v vy bn c th to hiu ng 3D v lu n li
s dng vo bt c khi no bn mun.
Hy bt u vi mt v d n gin, chng ta s to hiu ng 3D cho mt n
nhn ni ln trn ging nh mt nt lnh(button).
Trong mt bng tnh trng, bn chn D5. (Bn chn D5 bi v n khng nm
ra bng tnh). Di Cell Options tab Home, chn Format Format Cells
Border (vi phin bn trc Excel 2007: Format Cells Border). Hoc cc
bn c th click chut phi, chn Format cells Border. Trong hp line, chn
ng dy nht th 2 (bn phi, th 3 t di m ln). Chc chn rng mu c
chn l mu en (hoc chn automatic nu bn cha thay i mc nh ca la
chn ny). By gi click chn ng vin bn phi v ng vin bn di bng

Quay tr li vi box color chn mu trng. Vn chn ng vin dy th 2, v


chn hai ng vin cn li l ng vin bn trn v bn tri ca .

Chn tab Fill (vi phin bn trc Excel 2007: chn tab Patterns) trong hp thoi
Format Cells v chn mu xm. Click chn OK v thi khng chn D5 na (di
chuyn con tr chut sang khc). D5 s xut hin ni ln ging nh mt
button. Bn lm tt c iu ch vi cc ng vin v bng .

Nu mun vui hn v a dng hn, bn to mt nhn ging nh l b lm hoc


tht vo trong th chn E5 (v n k D5 v s s dng cho bi tp tip theo).

Chn Home Cells Format Format Cells Bord (vi phin bn trc
Excel 2007: Format Cells Border) v chn ng vin dy nht th 2 (th 3
bn phi t di m ln) trong bng line v chc chn mu c chn l mu en
cho ng vin trn v bn tri. Chn mu trng trong bng mu cho ng vin
bn phi v bn di . Chn tab Patterns v chn mu xm. Click OK. E5 s
b lm xung. Vic ny tri ngc vi D5 l hiu ng tri ln.

Nu bn cm thy thch th vi style ca m bn to ra. Bn lu li bng cch


chn Home Styles Cell Style NewCell Style, bn g tn m bn mun t
cho style ny vo v click OK. Ch rng cc Styles ca ch c lu li
workbook hin ti mc d bn c th kt hp cc Styles ny t nhng workbooks
khc. La chn ny khng c trong cc phin bn trc Excel 2007. Nu bn
mun lu mt style ca trong cc phin bn trc th bn vo Format Style.
S dng hiu ng 3D cho mt bng d liu
K tip, chng ta s lm th nghim vi cng c ny thy c cc loi hiu ng
3D m bn c th to ra cho cc bng hoc cc sheets ca mnh. Chn D5 v E5,
click chn cng c Format Painter (biu tng ci chi qut ) di Clipboard
options trn tab Home (vi phin bn trc Excel 2007: xem trn thanh standard
toolbar). Trong khi nhn chut tri, Click chn F5 v r chut qua J5, sau
nh ra.

By gi chn vng D5:J5 v click chn cng c Format Painter mt ln na.


Cng lc nhn chut tri, chn D6, ko chut ngang sang phi v ko xung
J15, sau nh ra.

Hiu ng 3D ca mt dy
Nu bn mun lu style ca bng ny, bn chn Home Styles Format as
Table NewTable Style. Vi cc phin bn trc Excel 2007 th bn khng th
lu style ca mt bng.
Chng ta s dng mt ng vin dy chc rng hiu ng c thy mt
cch r rng, tuy nhin, bn c th to ra mt s tinh t hn bng cch s dng mt
ng mnh hn.

Bn cng c th s dng cc ng khc to ra nhng hiu ng hay hn. Cch


d nht tm ra nhng s kt hp c hiu qu l bn nn th v kim tra sai st
trn mt bng tnh trng to ra hiu ng m bn mun. Bn ch b gii hn bi
s tng tng v c l l khiu thm m.

Th d dng mu khc

Th d dng ng k khng lin nt cho nhng ng k ngang

Hy lun lun nh rng hiu ng 3D c th lm cho bng tnh d c, nhn c v


chuyn nghip v d cm nhn hn, nhng khi chng c s dng qu mc
chng c th c nhng nh hng tri ngc. Nn nh, s dng mi th c mc
.
Nu bn mun to ra i xa hn v cung cp nhng hiu ng 3D mt cch t ng
v sinh ng, bn c th kt hp 3D vi nh dng c iu kin t ng cung
cp nhiu style m bn thch.
B sung:
Bn c th dng chnh hiu ng 3D cho 1 ( thc hin trn) dng nh 1
button thc th, nu bn kt hp vi VBA. Gi s bn mun bng tnh ca bn c
1 button (ni, ng nhin), khi nhn vo n s chm xung v thc thi 1 macro
no . Khi nhn 1 ln na th nt ny s ni ln v thc hin 1 macro khc hoc
dng thc hin macro th nht.
Dng cng c ghi macro ghi li qu trnh lp hiu ng 3D cho 1 D5, ta c 1
an code trong Module, sa li cht nh vi 1 bin Public IsRun tu trng
hp gn Border thch hp:
Sub Change1()
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = IIf(IsRun, 2, 0)
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = IIf(IsRun, 2, 0)
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlMedium

.ColorIndex = IIf(IsRun, 0, 2)
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = IIf(IsRun, 0, 2)
End With
End Sub

By gi da vo s kin SelectionChange ca sheet, ta lm cho D5 thay i


border nh sau:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$D$5" Then
If Target = "Run" Then
Target = "Stop"
IsRun = False
Else
Target = "Run"
IsRun = True
End If
Change1
Cells(1, 1).Select
End If
End Sub

Chiu th 23: Bt, tt chc nng Conditional


Formatting bng 1 checkbox
Bn thng dng Data Validation gii hn d liu nhp vo, hoc dng
Conditional Formatting cnh bo khi nhp d liu trng. Nhng i khi bn
mun tt chc nng cnh bo ca CF. C 1 cch n gin bt tt chc nng ny
bng cch s dng 1 checkbox. Xem thm bi Chiu s 18: iu khin Conditional
Formating bng checkbox.
Nhng y l CF t mu d liu nhp trng.
Trong th d di y, bn s dng CF nh du (t mu) nhng c d liu

xut hin nhiu hn 1 ln trong vng d liu. Gi s trong vng A1:A100 bn


thit lp CF vi cng thc nh sau:
=CountIf($A$1:$A$100,$A1)>1
By gi bn mun tu bt tt ci CF ny. Trc tin bn cng cng cu Form
hoc Control Toolbox, v 1 ci Checkbox ln sheet. Thit lp Property Cell Link
cho ci checkbox ny l 1 no , th d K1. Ta vo Name box t nun tn cho
ny l IsCheck.
By gi click chn vng d liu A1:A100 sao cho A1 l hin hnh. Thit lp
Conditional Formatting cho vng ny vi cng thc sau:
=AND(COUNTIF($A$1:$A$100,$A1)>1,IsCheck)
Nhn nt Format t mu theo mun, ri OK.
Sau khi hon thnh, khi bn check vo ci checkbox, K1 s thnh True, v nhng
c d liu trng s b t mu.
Tri li, khi bn uncheck ci checkbox, K1 s c gi tr False, v chng c no
b t mu na.
Cng nh chiu s 18, bn hon ton c th dng ci toggle Button lm 1 ci cng
tc bt tt y nh ci checkbox.
Chc cng cn ni li cch m cng tc ny hot ng:
Do cng thc ca bn l AND(iu kin 1, iu kin 2), nn ch cn 1 trong 2 iu
kin khng tho (=False), nguyn k chung s False, CF khng hot ng; v CF
ch c tc dng khi iu kin chung l True.

Chiu th 24: Dng nhiu List cho 1 Combobox


Excel cung cp cho bn nhng cch chn 1 th trong 1 danh sch nhp liu
vo 1 . Trong c cng c combobox, t danh sch x xung ca combobox,
bn c th chn 1 ngy trong tun, 1 thng trong nm, hoc 1 sn phm trong danh
sch. Nu bn cn chn la trong 3 danh sch khc nhau, bn s ngh rng bn cn
3 ci combobox.

Thay v vy, bn dng chiu sau y, kt hp 1 combobox vi 3 option button.


Trong th d sau, bn hy to 1 bng tnh, in s t 1 n 7 vo vng A1:A7, in
t ch nht n th hai vo vng B1:B7, v in thng t thng 1 n thng 7 vo
vng C1:C7.
Mt cch nhanh nht in 21 ny l hy g 1 vo A1. Trong khi nhn gi Ctrl,
nm ci fill handle ca A1 v ko xung A7. Tip theo, g Sunday vo B2,
doubled-click vo fill handle ca B1. Cui cng g Jan vo C1, doubled-click
vo fill handle ca C1. Xong.
By gi bn vo Developer Controls Insert Form Controls (vi Excel
2003, View Toolbars Forms) v nhn icon Option Button. V 3 ci ln sheet.
V thm 1 ci Groupbox bao quanh 3 ci Option cho p. By gi v 1 ci
Combobox 1 ch thch hp.
Nhn chut phi vo cc Option, chn Edit Text, sa cc t Option1, Option 2,
Option 3, Groupbox1 nh hnh:

Nhn chut phi vo 1 Option bt k, chn Format Control, trong tab Control, g
$F$1 vo Cell Link.

D6 g cng thc =ADDRESS(1;$F$1)&":"&ADDRESS(7;$F$1)


Vo Define Name, t mi 1 name MyRange, cng thc l =INDIRECT($D$6)
Nhn chut phi vo ci combobox, vo Format control, trong Cell link g
MyRange, Cell link l $G$1.
By gi khi bn chn 1 trong cc option, F1 thay i cc gi tr t 1 n 3, D6
thay i vi cc gi tr $A$1:$A$7, $B$1:$B$7, $C$1:$S$7. V list trong
combobox cng i theo.
B sung:
C 1 vn l 3 list khng phi lc no cng di bng nhau (bng 7 trong th d
trn), th d s t 1 n 10, th trong tun t Ch nht n th by, thng t 1 n
12. Vy ta s phi lm g?
Ta hy lm t t nh, trc tin l cch dng ph (tc gi cng dng 2 ph).
G cng thc sau vo G1:
=COUNTA(INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS(100;$ F$1)))

Vi cng thc trn, G1 s c cc gi tr l 10, 7, 12 tng ng vi F1 l 1, 2, 3.


Sa tip s 7 cht trong cng thc D6 thnh $G$1 cho ng:
=ADDRESS(1;$F$1)&":"&ADDRESS($G$1;$F$1)
Kt qu hon ton m mn. D6 s ln lt l $A$1:$A$10, $B$1:$B$7,
$C$1:$C$12

By gi l cch GPE: du (b) cc ph.


Hin Name MyRange ca ta l =INDIRECT($D$6),
Sa bc th nht l thay $D$6 bng cng thc ca D6:
=INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS($G$1;$F$1))
K thay $G$1 bng cng thc ca G1:
=INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS(COUNTA(INDIR
ECT(ADDRESS(1;$F$1)&":"&ADDRESS(100;$F$1)));$F$1))

Ta c th ng hong xo D6 v G1. Ch cn 1 F1 l link cell ca 3 options,


ta format n thnh ch trng l OK.

Chiu th 25: To mt danh sch xc thc thay


i theo s la chn t mt danh sch khc
Trc tin, chng ta cn chun b mt s d liu thc hnh bi ny. Bn hy to
mt sheet mi v t tn l List v ti A1 nhp vo tiu Objects. Ti B1
nhp vo tiu Corresponding List. Vng A2:A5 bn nhp vo t Can. Vng
A2:A9 nhp vo t Sofa. Vng A10:A13 nhp vo t Shower. Vng A14:A17
nhp vo t Car. Sau , trong vng B2:B17 bn nhp vo cc t sau: Tin, Steel,
Opener, Lid, Bed, Seat, Lounge, Cushion, Rain, Hot, Cold, Warm, Trip, Journey,
Bonnet, v Boot.
Ti C1 nhp vo tiu Validation List. K , bn nhp vo cc t sau ti cc
C2:C5: Can, Sofa, Shower v Car. y l danh sch cha cc t duy nht t
vng A2:A17.
Bn c th dng cha nng Advanced Filter lc ra danh sch duy nht ny bng
cch chn vng A2:A17 Data Sort & Filter Advanced (E2003: Data
Filter chn Unique Records Only chn Filter the List in Place OK. Sau
chp danh sch kt qu lc duy nht v dn vo vng C2:C5. Advanced Filter)
Sau khi nhp xong bn c danh sch nh hnh sau:

Bc tip theo l chng ta s nh ngha mt s Name cho cc List trn. Bn vo


Formulas Name Manager chn New (E2003: Insert Name Define).
Trong hp Name bn nhp vo t Objects. Ti hp Refer To bn nhp vo cng
thc sau: Define Names
=OFFSET($A$2,0,0,COUNTA($A$2:$A$20),1)
Nhn nt OK sau khi nhp xong cng thc trn. Tip theo, bn nhn New (E2003:
nhn Add) to Name mi. Trong hp Name nhp vo tn l ValList v ti
Refer To nhp vo =$C$2:$C$5. Nhn Close ng hp thoi li.
Bn chn thm mt sheet mi c tn l Sheet1. Bn vo Formular chn
Define Names Manager chn New (E2003: Insert Name Define).
Trong hp Name bn nhp vo CorrespondingList v ti Refer To nhp vo cng
thc sau: Name
=OFFSET(INDIRECT(ADDRESS(MATCH(Val1Cell,Objects,0)
+1,2,,,"Lists")),0,0,COUNTIF(Objects,Val1Cell),1)

Tip tc nhn New (hoc Add trong Excel 2003) thm Name mi. Trong hp
Name bn t tn l Val1Cell v ti Refer To nhp vo =$D$6 v nhn OK.
Tip tc nhn New thm Name mi vi tn l Val2Cell v Refer To l =$E$6
nhn OK sau khi hon tt.
Cc Name m bn to nh hnh sau:

Chng ta chun b xong cc th cn thit, by gi n lc p dng chc nng


Data Validation. Bn chn $D$6 trn Sheet1, sau vo ngn Data ti nhm
Data Tools bn chn Data Validation chn ngn Settings trong hp thoi Data
Validatin (E2003: Data Validation Settings). Bn chn loi List ti hp
Allow v ti hp Source nhp vo =ValList, nh du chn In-cell dropdown, sau
nhn OK hon tt.

Chn E6, sau vo ngn settings trong hp thoi Data Validation nh trn. Bn
chn List ti Allow v nhp vo =CorrespondingList ti hp Source, nh du
chn vo In-cell dropdown v nhn OK hon tt.
Trong qu trnh thit lp Data Validation cho E6, bn s nhn c thng bo li
The source currently evaluates to an error. Do you want to continue?. Bn hy
chn Yes. Li ny xut hin l do D6 ang rng.
Bn th chn mt tn trong danh sch ti D6 v xem s thay i tng ng trong
danh sch ti E6 nh hnh minh ha sau:

Chiu th 26: S dng chc nng thay th


(Replace) g b cc k t khng mong mun.
Khi nhp d liu hay khi sao chp v dn d liu t ngun khc vo Excel th cc
k t khng mong mun s xut hin trong ton b bng tnh ca bn. S dng
chiu ny bn c th khc phc c nhng rc ri khi g b cc k t khng
mong mun bng tay. Chc nng thay th (replace) trong Excel c th gip bn g
b cc k t khng mong mun trong bng tnh, nhng phi qua mt vi bc ph.

V d nh, bn c th thay th nhng k t khng mong mun bng chui rng ta


nh n cha h tn ti. Mun vy bn cn bit m ca tng k t m bn mun g
b. Tt c cc k t u mang mt m ring v Excel s cho bn bit n l g khi
bn s dng hm CODE.
Hm CODE s tr v mt m s cho k t u tin trong mt chui. M ny tng
ng k t m my tnh ca bn thit lp.

thc hin iu ny, chn mt trong cc c cha nhng k t khng mong


mun. T thanh cng thc, bi en k t v sao chp k t . Tip theo chn
trng bt k (A1 chng hn) v dn k t vo chn (A1).

Ti khc, nhp cng thc sau:


=CODE($A$1)
Cng thc ny tr v m ca k t khng mong mun.

Chn ton b d liu ca bn, chn Home Editing Find & Select Replace
(vi phin bn trc Excel 2007: chn Edit Replace), khung Find what:
nhn phim Alt v g s 0 km theo code a ra bi cng thc trn. Nu m s

l 163 th nhn Alt v nhn 0163. (Hoc bn c th con tr chut ti c k t


khng mong mun, sao chp k t v dn vo Find what cng c)
B trng khung Replace With v nhn Replace all. Vic lm ny s xa b tt c
nhng k t khng mong mun rt nhanh qua vic d tm m k t. Lp li cc
bc trn cho mi k t khng mong mun tip theo.

Chiu th 27: Chuyn i con s dng vn bn


sang s thc
Cc gi tr s (number) trong Excel c mc nh canh l phi v vn bn (text)
th canh l tri. Do vy, cch n gin nhn bit cc gi tr s v vn bn trong
mt ct trn bng tnh l bn thit lp ch canh l mc nh cho ct . Bn vo
Home nhm Alignment chn Format Cells vo ngn Alignment (E2003:
Format Cells Alignment) chn General ti hp Horizontal thit lp
vic canh l mc nh cho ct ang chn nhn OK ng hp thoi Format
Cells li.

Bn ko ct rng ra mt t phn bit vic canh l, khi bn s thy cc gi


tr s, ngy thng s c canh l phi v vn bn s c canh l tri.
Dng Paste Special chuyn gi tr s dng vn bn sang s thc
y l cch nhanh v d dng nht chuyn cc gi tr s dang vn bn sang s
thc. Cc bc thc hin nh sau:
Chn mt trng no v nhn lnh Copy (Ctrl + C) qut chn vng s liu
dng vn bn nh chuyn i (v d nh vng A1:A9 hnh trn) nhp phi
chut v chn Paste Special chn Add ti nhm Operation nhn OK

hon tt.
Vic lm trn s gip chuyn ton s cc con s dng vn bn sang s thc, v
rng c gi tr l 0 v khi bn cng bt k s no vo mt con s lu di dng vn
bn trong Excel th bn lm cho con s dng vn bn chuyn thnh s thc.
Dng cc hm TEXT chuyn i
Bn c th p dng nguyn tc nh cch trn vo mt s hm c sn ca Excel
thc hin vic chuyn i. Thng thng, khi bn dng mt hm thuc nhm
TEXT v kt qu tr v di dng con s th Excel vn xem con s l gi tr
dng vn bn.
Gi s bn c mt vng d liu A1:A7 nh hnh sau:

Bn dng hai hm trong nhm TEXT l LEFT v FIND tch cc gi tr ra khi


cc chui vn bn nh sau:

=LEFT(A1,FIND(" ",A1)-1)
Sau khi dng hm tch phn gi tr ra th cc kt qu tr v vn c Excel xem
nh l vn bn v chng c canh l tri nh hnh sau:

Do vy, bn cn phi hiu chnh cng thc tc chui trn mt t kt qu tr v l


cc con s thc s bng cch cng thm s 0 vo sau cng thc trn:
=LEFT(A1,FIND(" ",A1)-1) + 0

Chiu th 28: Trch xut d liu s trong 1 chui


bng VBA
Bn thng ly d liu t ngun ngoi, chng hn t Internet, trong c d liu
s xen ln ch nh: 1,254.00VND hoc USD 2,500.00, thm ch cn phc tp
hn.
V cng c khi bn nhp liu hn hp text v s khng theo quy lut no c
th ly ring s ra bng cc hm tch chui thng thng.
Dng 1 hm t to vit bng VBA, bn c th trch xut ring phn s ra, d cho
chui c kiu dng g i na.
Bn hy nhn Alt-F11 vo ca s VBA, insert 1 module v dn on code sau
vo:
Function ExtractNumber(rCell As Range)
Dim lCount As Long
Dim sText As String
Dim lNum As String
sText = rCell
For lCount = Len(sText) To 1 Step -1
If IsNumeric(Mid(sText, lCount, 1)) Then
lNum = Mid(sText, lCount, 1) & lNum
End If
Next lCount
ExtractNumber = CLng(lNum)

End Function

Vo li Excel, trong B1 g d liu s xen ln text tu , trong k bn C1 g


cng thc:
=ExtractNumber(B1)
Ta s c kt qu nh hnh:

B sung:
Vn cn cht vn : nu d liu l s thp phn nh B5, hoc d liu gm 2
nhm s ring bit tr ln nh B4, kt qu s khng nh mun.
1. gii quyt vn s thp phn, ptm0412 c 1 hm khc:
Function CtoN(Mystr As String, Optional Dautp As String) As Doub
le
Dim Kqng, Kqtp, Neg As Double, Kqtam As String
Dim Sotp As Double, Le As Byte
Neg = 1
Le = 0
For i = 1 To Len(Mystr)
tam = Mid(Mystr, i, 1)
Select Case tam
Case 0 To 9
Kqtam = Kqtam & tam
Case "-"
Neg = -1

Case Dautp
Kqng = Kqtam
Le = 1
Mystr = Right(Mystr, Len(Mystr) - i)
Kqtp = CtoN(Mystr)
Sotp = Kqtp * 10 ^ (-Len(Kqtp))
End Select
Next i
Select Case Le
Case 0
CtoN = IIf(Kqtam = "", 0, Kqtam)
Case 1
CtoN = Kqng + Sotp
End Select
CtoN = CtoN * Neg
End Function

Ghi ch:- Khi s dng hm ny, bn s thm vo hm 1 tham s cho bit du thp
phn l du no, , hay .. Th d =CtoN(USD 14255.20,.), v nu bn bit
chc l s nguyn th khng cn thm.
- Hm ny c c c s m nu k hiu s m l du tr v ng trc s.

2. gii quyt vn nhiu nhm s khc nhau trong chui, Ptm0412 cng
c 1 hm:
Function CtoNPlus(Mystr As String, sttchuoi As Byte, Optional Da
utp As String) As Double
Newstr = Mystr
For i = 1 To sttchuoi
If Len(Newstr) < 2 Then Exit For

CtoNPlus = CtoN1st(Newstr, Dautp)


Next i
Newstr = ""
End Function

PHP Code:
Function CtoN1st(ByVal Mystr As String, Optional Dautp As String
) As Double
Dim Kqng, Kqtp, Neg As Double, Kqtam As String
Dim Sotp As Double, Le As Byte, NewStr2 As String
Neg = 1
Le = 0
For i = 1 To Len(Mystr)
tam = Mid(Mystr, i, 1)
Select Case tam
Case 0 To 9
Kqtam = Kqtam & tam
If IsNumeric(Mid(Mystr, i + 1, 1)) = False And _
Mid(Mystr, i + 1, 1) <> "," And Mid(Mystr, i + 1, 1) <>
"." Then
Newstr = Right(Mystr, Len(Mystr) - i)
Exit For
End If
Case "-"
Neg = -1
Case Dautp
Kqng = Kqtam
Le = 1
NewStr2 = Right(Mystr, Len(Mystr) - i)
Kqtp = CtoN1st(NewStr2)
Sotp = Kqtp * 10 ^ (-Len(Kqtp))
End Select
Next i
Select Case Le
Case 0
CtoN1st = IIf(Kqtam = "", 0, Kqtam)
Case 1

CtoN1st = Kqng + Sotp


End Select
CtoN1st = CtoN1st * Neg
End Function

C php hm: CtoNPlus(Mystr , sttchuoi, [Dautp])


Sttchuoi l s th t nhm s trong chui, Dautp l k t du phn cch thp phn.

Chiu th 29: Ty bin ch thch ca bng tnh


Khi chng ta chn ch thch cho bng lnh Review Comments New
Comment (E2003: Insert Comment). Excel s mc nh chn tn ngi dng
ca my tnh vo hp ch thch. Bn c th thay i iu ny bng cch vo Office
Excel Options Popular (E2003: Tools Options General). Bn nhp li
on vn bn mc nh mong mun ti hp User name:

Mc d ch thch cho c mc ch chnh l hin th cc thng bo cho bn hoc


cho ngi dng khc, bn c th ty bin n nhm mc ch lm r hn ch ca
bn.
Trc tin, bn cn ty bin thanh Quick Access Toolbar (QAT) thm mt nt
lnh vo , cc bc thc hin nh sau: Office Excel Options Customize.
Ti hp Choose commands from bn chn Smart Art Tools | Format Tab nhn
nt Add thm vo QAT nhn OK hon tt (E2003: gi thanh Drawing bng
cch View Toolbars Drawing).

Chn mt ch thch cho bng cch vo ngn Review ti nhm Comments


chn New Comment (E2003: Insert Comment). Mt hp ch thch s xut hin
v bn c th nhp ni dung ch thch vo .
thay i hnh dng ca hp ch thch ny bn nhp tri chut ln khung vin

ca n thot khi ch nhp liu chn lnh Change AutoShape t thanh


QAT chn kiu hnh dng mong mun trong cc nhm hnh Basic Shapes,
Block Arrow, Flow Chart, Callouts v Stars and Banners sau khi chn hnh th
hnh dng hp ch thch ca s thay i tc th.

i vi phin bn Excel 2007 th vic hiu ng 3-D cho hp ch thch c thit


lp mc nh v cc ty chn Shadow Setting b loi b. Bn c th thay i cc
ty chn bng, hiu ng 3-D trong phin bn Excel trc nh sau: chn
khung vin ca hp ch thch vo thanh Drawing chn nt lnh Shadow
Settings chn kiu mong mun:

Thm nh vo ch thch
Mt iu cng kh th v l bn c th dng cc hp ch thch hin th cc nh
m khng lm nh hng n cc ni dung khc. Th d nh, bn c th chn mt
th vo hp ch thch nhm minh ha tt hn cho cc s liu m khng cn phi
lc no cng hin th ln.
thm hnh, bn chn ang c ch thch nhp phi chut ln chn Edit
Comment chn khung vin ca hp ch thch nhp phi chut chn
Format Comment (E2003: nhp chut 2 ln lin tip ln khung vin ca hp ch
thch) chn ngn Colors and Lines ti hp Color, chn Fill Effects chn
nt Select Picture chn hnh v nhn Insert OK OK.

Trch xut ni dung ch thch


trch xut ni dung trong hp ch thch, chng ta cn vit mt hm ngi dng
n gin. Bn nhn t hp ALT+F11 vo ca s VBE hoc vo ngn Developer
Code Visual Basic (E2003: Tools Macro Visual Basic Editor), sau
vo Insert chn Module nhp vo on m sau:

VB Code:
Function GetCommentText(rCommentCell As Range)
Dim strGotIt As String
On Error Resume Next
strGotIt =
WorksheetFunction.Clean(rCommentCell.Comment.Text)
GetCommentText = strGotIt
On Error GoTo 0
End Function

Vo File Save (Ctrl+S) lu Module, sau vo File Close and Return to


Microsoft Excel (ALT+Q) tr v ca s bng tnh. Bn vo mt trng no
v nhp vo:
=GetCommentText(B2)
Vi B2 l ang c ch thch. Nhn Enter xem kt qu.

Chiu th 30: Sort th t da trn nhiu hn ba


ct
Chc nng sort ca Excel b gii hn vi sort trong phm vi 3 ct. Trong hu ht
cc trng hp, sort theo 3 ct l nhng i khi bn cn sort nhiu hn 3 ct d
liu. Chiu ny s gip bn vt qua hn ch ny.
Vi v d sau, chng ti gi s bn c cc ct d liu lin quan vi nhau A, B, C,
D v E, v bn mun sort d liu ny u tin theo ct A, tip theo l ct B, k n
l ct C, tip na l ct D v cui cng l ct E.
lm iu ny, bn sort ln lt theo th t ngc: sort theo ct cui cng trc
v tip theo tun t ngc n ct u tin. Chn cc ct t A n E, sau chn
Data Sort. Chn sort theo th t ct C u tin, tip theo l n ct D v sau

n ct E. Nhn vo sort. By gi chn cc ct t A n E v chn Data


Sort. Lc ny, sort theo th t ct A trc ri mi n ct B. Click sort v mi th
s c sp xp theo th t.
Excel sort theo 5 ct thay v 3 ct. Nu bn mun Excel t ng lm iu ny,
bn c th s dng mt macro m s sort theo vng chn v gi nh rng d liu
ca bn c cc tiu ct c xc nh v nh dng hng u tin ca vng
chn. Nu cc tiu c in m, Excel s cho bit chng l cc tiu v s
khng sort chng. Thay vo , n s sort ct u tin bn tri trc ri mi ti ct
bn phi cho n ti a l 256 ct.
on code macro bn cn s dng phi c t trong mt module chun. lm
iu ny, bn chn Tools Macro Visual Basic Editor (Hoc nhn Alt+F11),
sau chn Insert Module v g on code sau vo:
Sub SortByX( )
Dim i As Long
For i = Selection.Columns.Count To 1 Step -1
Selection.Sort Key1:=Selection.Cells(2, i), _
Order1:=xlAscending, Header:=xlGuess, Orientation:=xlTopToBottom
Next i
End Sub

quay li excel, bn ng ca s code ny li hoc nhn Alt+ Q. Ngay khi bn


dn on code ny vo, bn c th thc hin c vic sort ny: T chn vng
cn sort, k c tiu , ri chy code.

Chiu th 31: Sp xp ngu nhin


Bn c th dng Excel chn ra mt cch ngu nhin ba ngi thng cuc 1, 2
v 3 t mt danh sch trn bng tnh. thc hin iu ny mt cch d dng nht
v cng bng nht, bn nn dng hm RAND kt hp vi tnh nng sp xp ca
Excel.
Gi s bn c mt bng d liu nh hnh sau:

Ti A2 bn nhp vo hm =RAND v sao chp xung n A10. Bn c th sp


xp cc ct Name, Age v ID No. theo ct A v t chn ra c ngu nhin 3
ngi thng cuc.
Hm RAND s c t ng tnh li mi khi c s thay i trn bng tnh, do vy
chng ta c th nhn F9 p Excel tnh ton li v t chn ra c nhng
phn t trong danh sch mt cch ngu nhin. Tuy nhin chng ta cn phi to mt
th tc sp xp li d liu sau khi Excel to ra b s ngu nhin mi.
vic chn la c d dng, chng ta s ghi mt Macro v gn n vo mt nt
lnh trn bng tnh. Mi khi mun chn ra nhm ngi thng cuc th bn ch cn
nhn nt lnh ny. Bn lm theo hng dn sau:
Bc ny bn s tin hnh ghi Macro, bn chn mt bt k v vo Developer
Code Record Macro (E2003: Tools Macro Record New Macro). Chn
4 ct A, B, C v D ri nhn F9. Vo Data Sort & Filter Sort chn sp xp
ct A theo th t ty (nh ln hoc ln nh).

Bc tip theo, bn hy vo ngn Developer nhm Controls Insert (E2003:


View Toolbars Forms) chn Button (Form Control) v v thnh mt nt
trn bng tnh chn tn Macro va ghi nhn OK hon tt.

Bn chn ct A v n n ngi dng khng thy cc s ngu nhin. Mi ln bn


nhp chut ln nt Pick Winner th d liu ca bn s c sp xp mt cch ngu

nhin v bn c th d dng chn ra 3 ngi thng cuc.

Lu : Hm RAND trong cc phin bn trc Excel 2003 c tn ti li trong vic


pht s ngu nhin. V mt l thuyt, hm RAND ch tr v cc gi tr t 0 n 1,
iu ny khng phi lun lun ng khi pht nhiu s ngu nhin v i khi hm
tr v gi tr nh hn 0. Xem thm thng tin v vic Microsoft thay i gii thut
pht s ngu nhin trong cc phin bn Excel 2003 & 2007 ti
http://support.microsoft.com/default.aspx?kbid=828795.

Chiu th 32: Thao tc trn d liu vi Advanced


Filter
Nu bn quen vi cng c Auto Filter, bn hn thy nhng hn ch ca
AutoFilter. Nu bn cn x l chn lc d liu ngoi gii hn ny, Advanced Filter
l 1 chn la tt.
D cho b hn ch, AutoFilter cng l 1 cng c hu ch ch th hin 1 phn
d liu ln mn hnh theo 1 vi iu kin no . Nhng i khi bn khng th
chn lc thng tin cn thit khi dng AutoFilter.
Xin ni thm, Excel 2003 v k c Excel 2007 ch c th lc 1 ln 2 iu kin
(And hoc Or) cho 1 ct. Hn th, nu bn mun lc d liu theo 2 tiu ch trn 2
ct, th ch c th kt hp bng ton t And gia cc iu kin ca 2 ct.
Advanced Filter s hu dng hn nhiu. Tuy nhin nu bn mun dng AdF, bn

phi sp xp d liu ng chun nh li ni u (bi 1, 2, 3):


- cha t nht 3 dng trng trn cng bng d liu
- Dng 1 dng duy nht lm tiu bng d liu
- Khng merge bt c no ca bng d liu
Khi s dng AdF, bn s phi dng tiu ct lm tiu ch lc, nn bn s phi
copy tiu ct dn vo ch no trn dng 1. Nhng tt nht bn nn dng 1
cng thc chng hn nh =A4 bo m rng bt c lc no iu kin lc cng
ng, d cho bn c thay i tiu ct.
Dng cng thc ny cho tt c cc ct m bn mun lm tiu ch lc.
Sau ngay di mi tiu (dng 2, v 3) bn nhng iu kin lc. Nhng
iu kin lc s dng nhng ton t so snh nh: =, >, <, >=, <=, <>.
Ghi nh 1 iu rng nhng iu kin Or cn sp xp theo chiu ng, nhng iu
kin And s sp theo hng ngang. Do nu bn cn lc theo 2 iu kin And v
cng 1 tiu ch, th phi dng 1 tiu ct trn 2 .
Sau y l cc hnh minh ho:
Cc iu kin Or:

Cc iu kin And:

Kt hp 2 And v 1 Or: (MLuong<700 And MLuong>400 And BPhan=KT) Or


BPhan=HC

Kt hp 2 And v 2 Or: (MLuong<700 And MLuong>400 And BPhan=KT) Or


(MLuong<700 And MLuong>400 And BPhan=HC)

Trn y ch l nhng th d n gin, m bn c th s dng AutoFilter.


By gi ta p dng AdF cho vi th d m AutoFilter khng lm c
By gi ta p dng AdF cho vi th d m AutoFilter khng lm c:
Bt c khi no p dng AdF cho iu kin l cng thc nh cc trng hp di
y, bn phi nh khng dng tiu ca bng d liu lm tiu cho iu kin.
Bn hy t 1 tn cho iu kin, hoc trng.
Th d 1: Bn mun lc d liu ct mc lng vi nhng gi tr tho iu kin
nh hn mc lng trung bnh, th dng cng thc sau:
=D6<AVERAGE($D$6:$D$22), kt qu s l True hoc False, bn ng quan
tm, m c dng AF, D2 l gi tr trung bnh tnh sn 468,8235 bn tin theo
di:

Bn cng c th kt hp vi iu kin b phn l KT:

Lu rng D6 l 1 tham chiu tng i trong khi $D$6:$D$22 l 1 tham chiu


tuyt i. iu ny l cn thit Excel d tm ln lt D6, D7, trong vng c
nh $D$6:$D$22, h gi tr no ca D6, D7, m c kt qu True th cho hin,
False th n dng. l cch m anh Bill ta thc thi AdF.
Th d 2: Nhn thy rng c nhng mc lng m nhiu ngi hng, v c
nhng mc lng m ch 1 ngi c, ta mun lc ra nhng ngi c mc lng
trng vi 1 ngi no khc, ta dng cng thc nh sau:

=COUNTIF($D$6:$D$22;D6)>1

Cn nu mun lc nhng ngi c mc lng c, ch 1 ngi c, ta dng cng


thc:
=COUNTIF($D$6:$D$22;D6)=1

By gi nu bn mun lc ra ch nhng mc lng khng trng nhau, cho ra 1 ct


khc th lm nh sau: khi m hp thoi AF, hy click vo Copy to another

location, click chn vo Unique records only, chn thm s copy sang
Copy To, v trng vng Criteria:

Kt qu:

Chiu th 33: To cc nh dng s cho ring bn


Excel c nhng nh dng s ca ring n nhng thnh thong bn cn s dng
mt nh dng s khng c sn trong Excel. S dng chiu ny, bn c th to ra
cc nh dng s m bn c th iu chnh cho nhu cu ring ca bn.
Trc khi bn th nhng chiu ny, s c ch cho bn nu bn hiu c lm th
no Excel nhn bit c cc nh dng ca . Excel nhn bit mt nh dng ca
khi c 4 phn sau (t tri sang phi): s dng, s m, gi tr 0, v gi tr chui.
Mi phn c ngn cch bi mt du chm phy (;).
Khi bn to ra mt nh dng s cho ring bn, bn khng cn phi nh dng tt
c 4 phn ny. Ni cch khc, nu nh dng ca bn ch c hai phn th phn u
tin c s dng cho c cc s dng v cc gi tr 0, trong khi phn th 2 s
c s dng cho s m.
Nu nh dng ca bn ch bao gm mt phn, tt c cc loi s s dng mt nh
dng. Chui b nh hng bi cc nh dng ring ch khi bn s dng tt c 4
phn, phn cui s s dng cho chui .
ng cho rng nhng nh dng ring ch p dng ch cho cc d liu kiu s. Cc
nh dng s cng p dng cho cc d liu kiu ch.
nh dng ring cho s c hin th hnh 2-18 l nh dng tin t chun ca
Excel, n ch ra s tin m l mu .

Nu bn g mt s dng tng ng vi mt gi tr tin t, Excel s nh dng n

ngay lp tc bao gm du phy (,) ngn cch hng ngn, theo sau hai s l thp
phn.
Excel s nh dng tng t cho gi tr m, ngoi tr s m c hin th l mu
. Bt k gi tr 0 no cng s khng c k hiu tin t v s c hin th hai s
l thp phn (0.00). Nu bn g mt chui vo mt , Excel s hin th dng ch
Chui hin th, bt k gi tr tht s ca chui bn g vo l g.
iu quan trng l phi ch , vic nh dng mt gi tr ca khng nh hng
n gi tr ch thc ca .
V d, g bt k s no vo A1. Nhn chut phi v chn Format Cells
Number Custom, v s dng bt k nh dng no ngay ti con tr chut u
tin (trong hp "Type), g "Hello" (vi du ngoc kp ("")). Sau nhn OK.
Mc d hin th t "Hello" nhng bn c th thy gi tr tht s ca bng cch
chn v xem trn thanh cng thc (Formula bar), hoc nhn F2. Nu bn tham
chiu ny trong mt cng thc - v d, =A1+20 - kt qu ca s dn n nh
dng lc ny, ngha l s tr v kt qu l "Hello" (bn hy lm th, bn s thy kt
qu ngay tc khc!)
Nu bn tham chiu A1 cng vi nhng khc m c bt k nh dng chun
Excel no - v d, =Sum(A1:A10)- kt qu tr v s vn theo nh dng ring ca
A1.
Excel a ra mt gi thit c thit lp trc rng bn mun kt qu ca
c nh dng ging nh cch tham chiu n mt hay nhiu . Nu cc tham
chiu cha nhiu hn mt loi nh dng th bt c nh dng ring no cng s
c u tin trc.
iu ny c ngha l, bn phi lun lun nh rng Excel s dng mt gi tr tht s
ca tnh ton, v s khng ly gi tr th hin ca n.
iu ny c th to ra ngc nhin khi Excel tnh ton da trn cc c nh

dng khng c s l thp phn hoc c mt vi s l thp phn, th d:


thy c iu ny, bn g 1.4 vo A1 v 1.4 vo A2, nh dng cho c hai
l khng c s l thp phn theo sau bng cch bn chn vng A1:A2, click
chut phi, chn Format Cells Number, trong khung "decimal places" chn 0.
Sau g cng thc =A1+A2 vo mt khc. D nhin kt qu tr v s l 3 v
Excel lm trn.
Excel c mt la chn c gi l Precision as Displayed, bn c th tm thy
bng cch chn Office button Excel Options Advanced (Vi phin bn trc
Excel 2007, chn Tools Options Calculation), nhng bn nn bit rng nh
dng ny s thay i vnh vin cc gi tr trong cc t y cc s l thp phn
(gm 15 k s) n bt k nh dng no, bao gm cc s l thp phn, c th
hin. Ni cch khc, khi bn nh du chn Precision as Displayed v nhn OK
th n s khng tr li kt qu ban u. (Bn c th th nhng cc thng tin v cc
s l thp phn m rng s b mt i.)

Ghi ch thm: hiu thm iu ny, bn lm v d nh sau A1 bn g 1.53,


A2: 2.75, A3: 5.68, A4: 3.25, A5: sum(A1:A4). Kt qu bn thy c A5 l
13.21. Gi bn vo Office button Excel Options Advanced v chn "Set
precision as display". Chn vng A1:A4, bn nhn nt Decrease Decimal , bn s
thy phn thp phn b lm trn dn ln. Khi cn 1 s thp phn th tng l 13.30;
khi khng cn ch s thp phn no na th tng l 14. By gi, bn li dng nt
Increase Decimal, bn s thy phn s l sau cc s ban u bn g vo tr
thnh s 0 ht. y l iu bn nn ch khi la chn ty chn ny. Tuy nhin
nu cc A1:A4 l cng thc th d liu ban u ca bn vn cn nguyn. V d,

thay v g trc tip A1 l 1.53, bn g =1.53 v tng t nh th cho cc khc


v lm theo cc bc hi ny v kim tra kt qu bn s thy c s khc bit.
nh dng mc nh cho tt c cc trong Excel l General. Nu bn g mt con
s vo mt , Excel thng s on nh dng s no l ph hp nht. V d, nu
bn g 10% vo mt , Excel s nh dng l kiu Percentage. Trong hu ht
cc trng hp th Excel on kh chnh xc nhng thnh thong bn cn thay i
li.
Khi s dng nh dng cho cc , hy trnh vic b cm d nh dng canh tri,
canh phi hay canh gia. Theo mc nh cc s s c canh phi v chui s c
canh tri. Nu bn b iu ny, bn c th nhn bit thong qua d cho l
chui hay s v trong trng hp v d trc, A1 bn thy l chui ("Hello")
nhng thc s n l mt s.
Mi phn ca mt nh dng c a ra s dng nhng m nh dng ring ca
n. Cc m ny nh hng n Excel trong vic th hin d liu theo cch m bn
mun. V vy, th d, gi s bn mun s m xut hin trong ngoc n(), v tt c
cc s, s dng, s m v s 0 u hin th 2 s l thp phn.
lm iu ny, bn click chut phi chn Format Cells, tab Number mc
Custom, khung Type bn g: 0.00_ ;(-0.00)
Nu bn mun s m mu , bn lm tng t nh trn nhng trong khung Type
bn g: 0.00_ ;[Red](-0.00)
Ch l hy s dng du ngoc vung ([]) trc code. Code s dng cho nh
dng ni cho Excel bit to ra s mu . Bn c th s dng nhiu code nh
dng khc nhau trong cc mc Format cells/number/custom.
Bng 2-1 n bng 2-5 c ly t ti liu ca Microsoft gii thch nhng code
ny.
Bng 2.1: cc m v nh dng s:

M s

M t

General nh dng s chung (g nh th no thy nh th y)


K hiu 0 ng vai tr nh s th ch cho mt k hiu s. K hiu 0 ch
ra rng nu s c nh dng khng c nhiu k t s nh s 0 trong
0 (s 0)
m nh dng th s 0 s th ch s . Th d nu m nh dng l
0000.000 th s 123.45 m bn g vo s c hin th l 0123.450

K hiu # ng vai tr nh k hiu 0 ch khc l n khng buc mt k


s phi th ch nu khng c s no tng ng. V d nu m nh dng
l #,###.## th s 1234.5 s c hin th l 1,234.5.

K hiu ny cng ging k hiu 0 ch c khc l nu trng ch th n


thay bng mt khon trng ch khng phi l s 0. iu ny hu ch nu
bn mun canh thng u phn cch thp phn trong bng. Ngoi ra k
hiu ? trong cng c s dng trong phn nh dng phn s. V d: #
???/??? th s c th hin s uc trnh by chnh xc n 3 con s v
nu c th gin c tt th n hin ra n mc di 3 v c thm khon
trng.

Nu bn s dng k hiu ny th khi hin thi s Excel s t ng nhn


s vi 100 v thm du ny ng sau.

,(du
Du phn cch hng ngn.
phy)
E+, E- Th hin mt s di dng scientific th d: m l 0.00E+00 th s
,e+,e- 12345.56 c th hin 1.23E+04
Bng 2.2: Cc m nh dng chui
M chui

M t

%,Cc k hiu ny c th hin trong m nh dng th s c


,+,/,:,(),khong th hin trong phn hin th ca s . Cc k hiu khc mun

c th hin ra th bn phi tham kho k t \ bn di

trng

y l k hiu c bit khng th hin trong nh dng nhng n


bt buc Excel th hin k t tip theo sau n d k t l k
t g v d: \ th du s c th hin. Nu bn mun th hin
du \ th bn phi ghi trong m \\

"text"

Trong trng hp bn mun th hin mt chui k t sau hay


trc mt s th bn b chui k t trong du ngoc kp nh
th ny."VND" #,##0.00 th mt s bt k s c thm vo
ng trc VND

Ging nh k hiu \ nhng khc mt iu l Excel s hin ra k


t sau n chim n ht

_ (du gch
di)

K hiu ny thng c dng l _), n nhc nh Excel chn


mt khong trng vo v tr ca n. V d: trong mt nh dng
c du ngoc bao quanh s m, du chm thp phn ca mt s
dng khng c canh thng hng vi du chm thp phn ca
s m, bi v s m s mt nhiu v tr hn bn phi du thp
phn v phi th hin du ng ngoc. Trong trng hp ny bn
dng mt du _ ti cui phn nh dng ca s dng Excel
dnh mt khong trng sau s dng: mt khong trng tng
ng vi v tr du ng ngoc trong s m. V d:
#,##0_);(#,##0).

K hiu @ dng ch chui k t c nhp vo . Trong


v d phn trn k hiu @ th hin nhng g nhp vo .

Bng 2.3: Cc m v nh dng ngy thng nm


M
ngy
M

M t
Ch ra s thng m khng c s 0 u vi s thng c mt ch s. V

d: 1, 2,...12.
Mm

Mmm

Ch ra s thng v c s 0 u vi s thng c mt ch s. V d: 01,


02,03...12
Ch thng nhng l vi 3 ch u ca thng (theo ting Anh) th d
thng 1 = Jan

Mmmm Ch thng v hin y tn thng th d thng 1 = January


D

Ch ngy vi 1 ch s i vi s nh hn 10

Dd

Ch ngy vi 2 ch s i vi s nh hn 10 v d ngy 8 thnh 08

Ddd

Ch th trong tun vi 3 k t th d th Hai = Mon, th Ba = Tue

Dddd

Ch th trong tun vi y cc k t. Th d: Monday, Tuesday,


Wednesday...
Ch nm vi 2 s cui ca nm. V d: nm 2008 = 08, nm 2009 = 09...

Yy

Yyyy Ch nm vi 4 s ca nm. V d: 2008, 2009, 2010....


Bng 2.4: Cc m nh dng v thi gian
M ngy

M t

Ch gi vi 1 ch s

Hh

Ch gi vi 2 ch s

Ch pht vi 1 ch s

mm

Ch pht vi 2 ch s

Ch giy vi 1 ch s

ss

Ch giy vi 2 ch s

AM/PM
am/pm

Hin th gi vi 12 ting, v hin th AM, PM hay bn cng c th


dng am/pm, A/P, a/p, S/C

Bng 2.5: Cc m nh dng khc:


M nh dng

M t

Dng th
hin mu. Mu
[BLACK],[BLUE],[CYAN],[GREEN],[MAGENTA],[RED], bn chn phi
[WHITE],[YELLOW], [CC MU KHC TY BN CHN] l mu trong
56 mu ca
bng mu.

[gi tr iu kin]

Dng ra
iu kin vi
cc ton t so
snh: >, <, =,
>=, <= , <>
(khng bng).
V du: [>100] :
iu kin ln
hn 100

Hy ch n im c bit m nh dng cui cng trong bng 2-5: cc ton t


so snh. Gi s bn mun nh dng s l: 0.00_ ;[Red](-0.00) hin th s m l
mu v trong ngoc n nu s nh hn -100. lm iu ny, bn lm nh
sau: 0.00_ ;[Red][<-100](-0.00);0.00
M nh dng [Red][<-100](-0.00) c t trong phn s m to nn kt qu ny.
Vic s dng phng php ny kt hp vi nh dng c iu kin bn c th nhn
i s iu kin nh dng c iu kin t 3 ln n 6 iu kin.
Thng ngi s dng mun hin th gi tr dollar dng ch. lm iu ny,

khung type ca Format cells/number/custom, bn g: 0 "Dollars and" .00 "Cents"


nh dng ny s nh hng n mt s c nhp vo nh 55.25 c hin th l
"55 Dollars and .25 Cents". Nu bn mun i s thnh dollars v cents, hy tham
kho thm hai hm t to t link sau ca Microsoft:
http://www.ozgrid.com/VBA/ValueToWords.htm and
http://www.ozgrid.com/VBA/CurrencyToWords.htm.
Bn cng c th s dng mt nh dng ring hin th cc t nh : Low,
Average, hay High cng vi s c g vo. n gin ch vic s dng m nh
dng sau: [<11]"Low"* 0;[>20]"High"* 0;"Average"* 0
Hy ch n vic s dng du "*". Du ny s lp li cc k t tip theo trong
nh dng in y theo rng ct, ngha l tt c cc t Low, Average, or
High s b dn v bn phi, trong khi s s b dn v bn tri.

Chiu th 34: Tng thm s ln Undo cho Excel


Tt c chng ta u quen thuc vi chc nng Undo ca Excel, cho php chng
ta lm li nhng sai lm ca mnh. Tuy nhin, mc nh, chng ta ch c th Undo
c 16 ln. Chiu ny gip bn c th tng s ln Undo ln nhiu hn, c th n
100 ln.
Khi bn s dng chc nng Undo ca Excel, v bn thc hin Undo 16 ln, th
nt Undo b m i, khng th Undo c na. Ngoi ra, khi bn nhn nt Save
lu bng tnh, th nt Undo cng b m i, v danh sch nhng tc v (nhng hnh
ng thc hin trn bng tnh) m bn thc hin b mt sch. l do khi
bn lu bng tnh, Excel cho rng bn hi lng vi bng tnh ny (th mi nhn
Save), v n thy rng khng cn thit phi gi li danh sch nhng tc v trc
khi lu na.
Bn c th thy rng, quay lui li 16 ln l khng , nhng lm cch no tng
s ln ny ln? Ngha l lm cch no tng danh sch cc tc v ca bn ln?
Tha rng, c cch, v bn c th tng con s ny ln n 100 ln.

lm iu ny, trc ht, bn hy thot khi Excel. Sau bn chy lnh Run
ca Windows (Start | Run, hoc nhn phm Window + R), g vo Regedit.exe
v nhn OK.

Khi bn m c chng trnh Regedit, hy tm n kha:


HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 11.0 \ Excel \ Options
Con s 11.0 trn y c th khc, v d vi Excel2000 th n l 10.0, vi Excel
2007 th n l 12.0

Nhn Edit | New | DWORD Value (xem hnh). Mt mc mi New Value #1 s


c to ra trong khung bn phi, bn nhp vo ch UndoHistory, v nhn
Enter.

Nhn p (double-click) vo mc UndoHistory mi to, ri g vo hp thoi m


ra mt con s bt k, min l ln hn 16 v nh hn 100. Nhn OK, ri thot
Regedit.

Bn hy khi ng li Excel v th lm g trong , ri nhn vo nt Undo xem


bn c th Undo c bao nhiu ln nh. Hy vng rng Undo 100 ln, l qu
cho bn. Tuy nhin, nu bn nhn lu bng tnh, th danh sch cc tc v c th
Undo vn mt.

Chiu th 35: T to danh sch fill


Bng cch t to 1 danh sch, bn c th ch cn g 1 gi tr u, sau fill xung
hoc fill ngang bng ci Fill Handle, danh sch s c t ng in vo tun t.
Excel cung cp cho bn 1 kh nng tit kim ng k thi gian cho vic nhp liu,
khng ch cho s m c cho chui. N c to sn cho bn vi danh sch: thng
trong nm, th trong tun. Bn ch cn g 1 t u (c trong list), ri ko ci Fill
Handle, danh sch s t ng c in vo vi nhng gi tr k tip ca list. Th
d bn g Tue, v fill xung, cc k s t ng c in l Wed, Thu, Fri, Sat,
Sun, Mon, v tr li Tue nu cn tip.
Bn hon ton c th t to 1 list ring ca bn dng sau ny. Mt cch n
gin to list l g danh sch bn cn vo cc . Th d bn cn danh sch cc
thng trong nm bng ting Vit. Vy bn hy g vo cc t A1 n A12:

Ri chn trong Office button Excel Options Popular Edit Custom Lists

(i vi Excel trc 2007, Tools Options Custom Lists), trong vng Import
List in cells, chn $A$1:$A$12. Nhn Import v nhn OK.

Mt khi bn to 1 list nh vy, ch cn g vo 1 vi 1 gi tr trong list, ri nm


ko ci fill Handle, bn s c kt qu:

Bn cng c th fill gi tr ngc chiu nu bn g 2 gi tr, 1 nm di trong danh


sch, 1 nm k trn trong danh sch, t chn c 2 ri Fill:

Chiu th 36: Lm ni cc Subtotal ca Excel


Khi lm vic vi subtotal trong Excel bng lnh Data Outline Subtotal, cc
dng subtotal rt kh phn bit vi cc s liu khi c nhiu ct d liu. C th l,
cc ct subtotal xut hin bn phi tp d liu trong khi tiu ca n thng li
nm ct u tin v cc subtotal li khng c nh dng in m nh cc tiu
nn gy kh khn cho vic c cc kt qu. Trong phn ny s hng dn bn cc
cch s dng nh dng theo iu kin nh dng cc subtotal sao cho d phn
bit v d c hn.

Trc tin, chng ta cn c tp s liu thc hnh. Cc bn nhp vo cc s liu


nh hnh sau:

Tip theo l cc bn hy tnh subtotal cho tng Region bng cch t hin hnh
vo dng s liu v vo Data Outline Subtotal (E2003: Data Subtotals).
Hp thoi Subtotal xut hin, bn thit lp cc tu chn nh hnh sau v nhn nt
OK.

Trong hnh trn, bn thy rng cc tiu subtotal ca tng Region ti ct A c


in m nhng cc gi tr subtotal bn ct B th khng. i vi tp s liu trn th
cng khng qu kh c cc kt qu, tuy nhin chng ta s kh nhn bit ngay
cc subtotal khi c nhiu ct s liu hn.
Chng ta s dng nh dng theo iu kin nh cc cc gi tr subtotal in m
mt cch t ng v bn phi thc hin iu ny trc khi dng lnh subtotal. Do
vy nu thc hin lnh subtotal th bn hy xo b n theo cch sau: chn hin
hnh trong vng kt qu subtotal v vo Data Outline Subtotal chn
Remove All.
Sau chn vng A1:B16, lu hin hnh ti ti A1, sau vo Home
Styles Conditional Formatting New Rules Use a formula to determine
which cells to format (E2003: Format Conditional Formatting Formula Is)
v nhp vo cng thc sau ti hp Format values where this formula is true:
=Right($A1,5)=Total

Lu phi c nh ct A (thm $ vo trc A) v dng tham chiu tng i cho


dng. Nhn nt Format vo hp Format Cells chn ngn Font chn
Bold ti Font Style v chn mu ti Color nhn OK nhn tip OK tr
v bng tnh.
Tip theo, bn chn mt no trong vng s liu v vo Data Outline
Subtotal cc tu chn mc nh OK. Kt qu nh hnh sau:

Do bn chn A1 l mc nh v sau khi p dng nh dng theo iu kin,


Excel s thay i a ch tham chiu trong cng thc nh dng trn cho cc
trong vng chn. V d nh ti A2 v B2 s c cng thc nh dng theo iu
kin l =Right($A2,5)=Total v cc A3, B3 s l =Right($A3,5)=Total. Khi
cng thc trong no tr v True th s c p dng nh dng theo thit lp
trong lnh nh dng theo iu kin.
Ci tin nh dng cho subtotal
Cc nh dng theo hng dn trn s nh nhau cho cc dng c tnh subtotal, do
vy cng s kh phn bit dng Grand Total vi cc dng subtotal khc. Phn ny,
chng ta cng s dng nh dng theo iu kin lm cho chng c nh dng

khc nhau.
Trc tin, bn phi xo nh dng theo iu kin phn trc bng cch t
hin hnh trong vng s liu ri vo Home Styles Conditional Formatting
Manage Rules chn Rule v nhn nt Delete Rule.

Bn phi xo vng kt qu Subtotal tng t nh hng dn phn trc. Sau ,


bn chn vng A1:B16, nh chn A1 l hin hnh ri vo Home Styles
Conditional Formatting Manage Rule New Rule Use a formula to
determine which cells to format (E2003, Format Conditional Formatting
Formula Is) nhp cng thc sau ti hp Format values where this formula is
true
=$A1=Grand Total
Nhn nt Format chn ngn Font chn Bold ti Font Style chn mu
xanh ti Color nhn OK. Tip tc, bn nhn nt New Rule (E2003: nhn Add)
chn Use a formula to determine which cells to format nhp cng thc sau
ti hp Format values where this formula is true:

=Right($A1,5)=Total
Nhn nt Format chn ngn Font chn Bold Italic ti Font Style chn
Single ti Underline nhn OK OK. Nhp tip OK tr li mn hnh bng
tnh.
Trong Excel 2007, Rule thm vo trc s nm di cng. Do vy bn chn Rule
to u tin =$A1=Grand Total v nhn Move Up a n ln u tin trong
danh sch cc Rule.

Cui cng, bn vo Data Outline chn Subtotal nhn OK v xem kt qu


nh hnh sau:

Chiu th 37: Chuyn i cc hm v cng thc


trong Excel thnh gi tr.
Hu ht cc bng tnh Excel u cha cc cng thc. Thnh thong bn ch mun
hin ln kt qu ca mt cng thc trong mt , thay v cng thc , v n s
thay i khi d liu m n tham chiu n thay i.
Bn c th lm iu ny bng tay theo hai cch hoc bn c th s dng mt macro
m s lm cho cng vic nh i. Trc ht hy xem cc phng php bng tay.

1. Dng Paste Special


Bn c th sao chp cc kt qu ca cc cng thc v vn li cng thc ti gc
bng vic s dng cng c Paste Special ca Excel. Gi s bn c cc cng thc
trong vng A1:A100. Chn vng ny, chn lnh copy (bn c th lm iu ny
bng cch chn cc la chn trong Clipboard tab Home hoc nhn chut phi),
sau chn bt u dn kt qu (gi s B1). Chn Clipboard Paste
Paste Values (hoc nhn phi chut v chn Paste Special Values hoc dng
phm tt Alt+E+S+V) v nhn OK. Lc ny bn s thy vng B1:B100 s l cc
kt qu ca cng thc cc trong vng A1:A100 nhng ch l cc gi tr.
Nu bn mun chp cc cng thc gc vi kt qu ca chng, chn dy cng
thc v chn Copy. Vn dy cng thc c chn , chn Paste Paste
Values (hoc click phi chut v chn Paste Special Values hoc dng phm tt
Alt+E+S+V), sau click OK.
2. S dng "Copy Here As Values Only"
Bn cng c th sao chp cc kt qu ca cng thc m vn li cc cng thc
gc bng cch s dng mt menu n m thm ch nhiu ngi dng khng bit
s tn ti ca n. Chn dy cng thc, nhn phi chut ng bin bn phi hoc
bn tri vng chn (ni cch khc l bn c th click chut phi bt k ng
bin no ca vng chn ngoi tr vic bn s dng nt "fill handle" c hnh du
thp). Trong lc nhn gi chut phi, ko chut n ni cn dn, nh chut phi v
nhn "Copy Here as Values Only" t mt menu x xung.
Bn cng c th chp ln cc cng thc vi kt qu ca chng. Chn dy c
cng thc, sau nhn phi chut ng bin bn phi hoc bn tri vng chn
(nhc li mt ln na l bn c th click chut phi bt k ng bin no ca
vng chn ngoi tr vic bn s dng nt "fill handle" c hnh du thp). Trong
khi nhn phi chut (hoc nhn Ctrl), ko chut qua mt ct bn phi hoc bn tri
v sau quay v dy ban u, nh chut phi v nhn "Copy Here as Values
Only" t kt qu ca mt mt menu x xung.

3. S dng Macro
Nu bn thng xuyn chuyn i cc c cng thc hoc hm thnh gi tr th
bn c th s dng macro n gin nh sau:
Sub ValuesOnly( )
Dim rRange As Range
On Error Resume Next
Set rRange = Application.InputBox(Prompt:="Select the formulas",
_
Title:="VALUES ONLY", Type:=8)
If rRange Is Nothing Then Exit Sub
rRange = rRange.Value
End Sub

s dng macro ny, chn Developer Code Visual Basic (vi phin bn
trc Excel 2007, chn Tools Macro Visual Basic Editor) hoc nhn Alt +
F11 chn mt module chun. Sao chp v dn on code trn trc tip vo
module.

Nhn chn nt Close ca ca s code hoc nhn Alt + Q quay tr li bng tnh
Excel. Chn Developer Code Macros (vi phin bn trc Excel 2007, chn
Tools Macro Macros) hoc nhn Alt+F8, chn ValuesOnly, sau click
chn nt Options, shortcut key bn thm mt phm no gn mt nt tt cho
macro ny (V d: bn g shortcut key l E th sau ny mun s dng macro ny
bn ch cn g Ctrl+E). Ch l bn khng nn chn cc phm tt trng vi cc
phm tt c sn ca Excel nh Ctrl+V, Ctrl+C, Ctrl+S....
Khi bn s dng macro, bn s thy mt Input box c hin th v hi dy cha
cng thc ca bn l dy no. a ch ca dy c chn s c hin th mt cch
t ng trong Inputbox, v tt c nhng g bn cn lm thc hin vic chuyn
i l nhn OK.

Chiu th 38: Thm d liu vo danh sch


Validation mt cch t ng
Nu bn tng s dng validation, bn s thy l mt tnh nng rt hay. C l
im n tng nht ca n chnh l kh nng thm mt danh sch la chn vo bt
k no trn bng tnh v cho php ngi s dng chn la. N s tuyt hn hay
khng nu khi bn nhp vo mt tn mi trong mt ang p dng tnh nng
validation th Excel s t ng thm tn ny vo trong danh sch validation? iu
ny c th thc hin c khi bn lm theo cc hng dn trong bi ny.
Gi s bn c danh sch tn trong vng A1:A10 nh hnh sau:

Danh sch ny chnh l tn ca cc nhn vin trong mt cng ty. Ti mt ang p


dng validation, bn s khng th no nhp vo c tn mt nhn vin mi ngoi
danh sch la chn, m bn phi thm tn nhn vin mi ny vo dng cui trong
danh sch v iu chnh li vng d liu ca validation trc. iu ny s rt bt
tin trong s dng.
hn ch nhc im ny, ti A11 bn nhp vo cng thc bn di v sao
chp n A20 (d tr trc s thm 10 tn mi).
=IF(OR($D$1="",COUNTIF($A$1:A10,$D$1)),"x",$D$1)
Chn Formulas Defined Names Define Name (E2003: Insert Name
Define), v nhp vo tn MyName ti hp Names. Ti Refers To, bn nhp vo
cng thc bn di ri nhp OK (E2003: nhn Add OK).
=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1)
Theo ti, ta thay bng cng thc
=OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A)COUNTIF(Sheet1!$A:$A,"=x"),1)

Cho D1, vo Data Data Tools Data Validation (E2003: Data

Validation). Chn List t hp Allow, v ti Source nhp vo =MyNames, bn m


bo rng chn thm hp In-Cell dropdown. Chn ngn Error Alert v b chn
Show error alert after invalid data is entered. Nhn nt OK khi hon tt.

Nhp phi chut ln tn Sheet1 v chn View Code. Sau bn nhp vo on m


sau:

VB Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lReply As Long
If Target.Cells.Count > 1 Then Exit Sub
If Target.Address = "$D$1" Then
If IsEmpty(Target) Then Exit Sub
If WorksheetFunction.CountIf(Range("MyNames"), Target)
= 0 Then
lReply = MsgBox("Add " & Target & " to list",
vbYesNo + vbQuestion)
If lReply = vbYes Then
Range("MyNames").Cells(Range("MyNames").Rows.Count + 1, 1) =
Target
End If
End If
End If
End Sub

ng ca s VBE v la bng tnh li, sau chn D1 v nhp vo mt tn mi


cha c trong danh sch validation v nhn Enter. Bn s thy tn mi xut xut
hin trong danh sch d liu trn bng tnh ti A11 v nu chn D1 v m danh
sch validation bn cng s thy tn mi c b sung vo.

Chiu th 39: Ngy thng trong Excel


Ngy thng trong Excel c x l rt tuyt khi c to v s dng trong Excel,
tuy nhin c nhng vng mc khi x l vi nhng d liu ngoi lai import vo.
May thay, Excel c nhng cng c v phng thc gii quyt khi n khng
ng nh bn mun.
Mc nh, Excel s dng h thng ngy da trn nm gc 1900. N coi ngy
01/01/1900 c gi tr 1, ngy 02/01/1900 c gi tr 2, v c th. Cc gi tr ny
gip cho Excel thc hin nhng yu cu tnh ton thi gian.
Gi pht cng tng t nh vy, nhng Excel coi gi nh l s thp phn, vi 1
tng ng 24:00 hay 00:00. 18:00 c coi nh l 0,75 v 18 gi l ca 1

ngy.
9 c th thy gi tr s ca ngy v gi, bn hy nh dng l General. Th d d
liu ngy gi y 03/05/2007 03:00:00 PM c 1 gi tr s l 39.025,625, ngha
l 39.025 ngy tnh t ngy gc 01/01/1900 v km theo 0,625 ngy tng
ng 15/24 ngy.
Tnh ton cho kt qu nhiu hn 24 gi:
Bn c th cng cc gi tr gi vi nhau bng ton t cng hoc dng hm Sum().
V vy Sum(A1:A5) s cho kt qu l tng gi ca vng A1:A5 nu trong vng c
nhng gi tr gi ng ngha. Th nhng nu bn khng bn s tng kt qu
sai nu nh tng tnh c nhiu hn 24 gi: mi 24 gi Excel coi nh 1 ngy, v
do nh dng gi pht, con s ch ngy khng hin th. bn hy th th bit:
Trong 1 no bn g cng thc =5:00 + 17:00 + 6:00, bn cho rng kt qu
phi l 28:00, nhng Excel li ch cho bn thy trn l 4:00, v 24 gi b
chuyn thnh 1 ngy, ch cn 4 gi l.
Mun buc Excel hin r s gi ln hn 24, bn phi nh dng custom cho
l [h]:mm hoc [h]:mm:ss.
Bn cng c th dng kiu nh dng bit s pht hoc s giy ca 1 gi tr
gi, hoc ngy. Th d nh 1 c gi tr 1 (24 gi) v nh dng [m] s hin th s
pht ca 24 gi l 1.440. Nu bn nh dng [s], bn s thy s giy l 86.400.
Tnh ton ngy v gi:
tnh ton ngy gi bn cn nh nhng con s sau:
1 ngy = 24 gi = 1.440 pht = 86.400 giy
1 gi = 60 pht = 3.600 giy
Khi nh cc con s ny, bn c th d dng s dng tnh ton quy i n v
thi gian.
Th d bn c con s 5,5 trong A1, v bn mun:
- Bn mun n l 5:30 hoc 5:30 AM, bn dng cng thc =A1/24

- Bn mun n l 17:30 hoc 5:30 PM, bn dng cng thc =A1/24 + 0,5
- ngc li bn mun tnh xem trong 5,5 ngy c bao nhiu gi, dng cng thc
=A1*24
Th d khc: bn c 1 gi tr ngy (ng ngha) nh l 22/05/2007 15:36 v bn ch
mun:
- Ly s ngy : = Int(A1)
- Ly s gi: =A1- Int(A1), hoc = Mod(A1, 1)
tm khong thi gian tnh bng ngy gia 2 mc ngy, bn tnh bng cng thc:
=DatedIf(A1, A2, d), vi A1 l ngy sm hn (c gi tr nh hn)
Hm DatedIf c th dng vi tham s m cho thng, y cho nm.
Hm datedif khng c trong danh sch hm ca Excel v n l 1 hm ca
Lotus123.
Nu bn khng bit chc ngy no nh hn ngy no trong cng thc tnh, hy
dng kt hp Min v Max nh sau:
=DatedIf(Min(A1, A2), max(A1, A2), d)
hin th gi m sau khi tnh ton:
Khi tnh ton thi gian, khi c nhng kt qu m, Excel s b li v hin th trn s:
#########.
Chng hn bn tnh khong thi gian gia gi bt u v gi kt thc: =A2 - A1.
Nu nh gi bt u l 17:00 v kt thc l 5:00 sng hm sau th cng thc trn s
b li. Bn hy dng cng thc ny:
=A2- A1+ If(A2<A1, 1)
Cn nu bn cn tnh hiu s ca 2 gi trong cng ngy, bn dng cng thc
=Max(A1:A2)- Min(A1:A2)
hoc = ABS(A2- A1)
Cch ny l chuyn s m thnh s dng, cn c 1 cch hin s gi m: chnh
Option - Calculation - nh du chn vo mc 1904 Date Systems. Tuy nhin
cch ny c th gy li tnh ton cho nhng cng thc khc,

y cn gi l h thng ngy MacinTosh, s ni k hn trong Chiu 87.


Bn cng c th yu cu Excel cng thm vo gi tr ngy c sn 1 khong thi
gian m bn mun (khi tnh thi hn ny n k t 1 thi im), bng cch dng
hm date() vi c php sau:
=Date(Year(A1)+ s nm, Month(A1) + s thng, Day(A1) + s ngy)
Th d nh thm 3 thng vo A1: = Date(Year(A1, Month(A1) + 3, Day(A1))
AddIns Analysis ToolPak cn h tr nhiu hm trong c nhng hm thi gian
nh Edate() cng tr 1 s thng vo 1 ngy cho trc. Hoc hm EoMonth()
tnh ngy cui thng ca 1 thi im bt k.
Ghi ch:
Excel c 1 li l coi nm 1900 l 1 nm nhun, trong khi khng phi vy. iu
ngc nhin l anh Bill c tnh lm vy, theo nh h tuyn b.
Sau y l 1 s link hu ch v x l ngy thng:
HOW TO: Use Dates and Times in Excel 2000
http://support.microsoft.com/default...n-us;Q214094#6
Text or Number Converted to Unintended Number Format
http://support.microsoft.com/default...;en-us;Q214233
Maximum Times in Microsoft Excel
http://support.microsoft.com/default...;en-us;Q214386
Dates and Times Displayed as Serial Numbers When Viewing Formulas
http://support.microsoft.com/default...;en-us;Q241072
Controlling and Understanding Settings in the Format Cells Dialog Box
http://support.microsoft.com/default...;en-us;Q264372
How to Use Dates and Times in Microsoft Excel
http://support.microsoft.com/default...b;en-us;214094
X l Ngy gi l 1 trong nhng iu k diu ca Excel. Nm vng nhng th
thut ny bn s tit kim v khi thi gian vi n.

Chiu th 40: Cho php s dng tnh nng


Group and Outline trn bng tnh b kho
thc hin iu ny, trc tin bn hy thit lp Group and Outline cho d liu
ca mnh. Chn vng d liu ri vo Data Group Outline v chn Auto
Outline (E2003: Data Group & Outline) kt qu nh hnh sau:

Sau , bn dng tnh nng Protect Sheet kho bng tnh li: vo Review ti
nhm Changes chn Protect Sheet v t vo mt m bo v. (V d nh mt
m l Secret).
Khi bng tnh trong ch bo v th bn khng th s dng c tnh nng Group
and Outline. Do vy chng ta s s dng tham s UserInterfaceOnly trong phng
thc Protect kt hp vi s kin m bng tnh (Workbook_Open) bt
UserInterfaceOnly v EnableOutlining thnh True.

Sau khi p dng Group and Outline xong, bn nhn ALT+F11 vo ca s VBE.
Bn chn ThisWorkbook v nhp vo on m sau (Tn Sheet1 l CodeName ca
Sheet Formulas Exercise, bn cng c th thay bng Index ca sheet trong bng
tnh hoc dng TabName):
VB Code:
Private Sub Workbook_Open()
With Sheet1
.Protect Password:="Secret", UserInterfaceOnly:=True
.EnableOutlining = True
End With
End Sub

Sau nhn Save v ng ca s VBE tr v ca s bng tnh, hy lu bng


tnh v ng li. Sau , bn m li tp tin v cho php Macro thc th (nu nhn
c hp thoi cnh bo), khi bn c th s dng c cc nt Group and
Outline trong bng tnh ang b kho (cc nt lnh b m).

Ghi ch thm:
Tham s UserInterfaceOnly ca phng thc Protect
l True: s bo v giao din ngi dng (user interface) nhng cho php
dng macro thay i.
nu khng khai bo th nhn gi tr mc nh l False: bo v c giao din
ngi dng v ngn cc lnh macro can thip vo giao din ngi dng.
EnableOutlining = True bt cc nt Show/ Hide Detail

Chiu th 41: By li trng d liu


Bng cch dng Data Validation, chng ta c th bo m rng 1 trng d liu
no nht thit phi nhp liu, khng c trng. Th d ta to 1 bng d liu
2 trng, vi tn trng l Tn v B phn nm 2 A1 v B1.

Bn di, bn mun rng bt k ngi no nhp liu vo bng cng phi nhp 2
ni dung ny. Nu bn bt u vi 1 bng d liu c sn nhng b trng, cn
in y vo, hy xem phn sau:
in d liu vo cc trng:
Mt s cc cng c hoc hm ca Excel khng lm vic vi trng nh Pivot
table, Sorting, Filter, hm SumProduct, Gi s bn c 1 ct A vi 1 ng nhng
trng nm xen k nhau. bn hy nhn F5, hoc Control G, nhn Special, chn
chn blank, v nhn OK. By gi tt c cc trng c chn. Nu bn mun
in vo nhng gi tr hoc cng thc ging lin ngay trn ca n, hy nhn
du bng (=), nhn mi tn ln, ri nhn Ctrl-Enter.

By gi n phn chnh:
T chn t A3 n B100 chng hn, theo ln ca vng bn nh nhp d
liu. M hp thoi Data Validation, trong tab setting chn Custom trong
Allow, ri in cng thc sau vo khung cng thc:
=AND(COUNTA($A$2:$A2)=ROW()-2,COUNTA($B$2:$B2)=ROW( )-2)
Ch cc k hiu $ lin quan n tham chiu tng i v tuyt i, nu sai hoc
thiu, validation khng hot ng nh mun rng chu.

Vo tab Alert, g tiu cho thng bo cnh bo trong Title, g cu thng bo


ca bn vo Error Message, chn Stop trong khung Error Style.

By gi mi khi bn nhp thiu dng trn, m nhy xung nhp dng di, bn s
c cnh bo nh sau:[/

Chiu th 42: Gim danh sch x xung ca


Validation, sau khi chn 1.
Rt hu ch cho ngi dng Excel khi bn cho h 1 danh sch chn bng
Validation, nhng ci danh sch ny t ng ngn li mi khi h chn 1 mc trong
danh sch, khi phi la chn trong 1 danh sch qu di, ng thi trnh vic
nhp trng d liu (i khi cn thit).
Bc 1:
Trong 1 sheet bt k (th d sheet1) bn c 1 danh sch trong vng A1:A10. Bn
hy t name cho danh sch ny bng cch t chn vng danh sch, ri g tn
MyList trong hp namebox.
Bc 2:
Trong 1 sheet khc m bn mun dng validation da vo danh sch MyList ni
trn, t chn vng bn cn, m menu Data Validation, chn Allow l List, source
l =MyList, ri nhn OK.
Bc 3: m ca s VBA ca sheet , copy on code sau:

vb Code:

Private Sub Worksheet_Change(ByVal Target As Range)


Dim strVal As String
Dim strEntry As String
On Error Resume Next
strVal = Target.Validation.Formula1
If Not strVal = vbNullString Then
strEntry = Target
Application.EnableEvents = False
With Sheet1.Range("MyList")
.Replace What:=strEntry, _
Replacement:="", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False
.Sort Key1:=.Range("A1"), Order1:=xlAscending, _
Header:=xlNo, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
.Range("A1", .Range("A65536").End(xlUp)).Name = "MyList"
End With
End If
Application.EnableEvents = True
On Error GoTo 0
End Sub
ng ca s VBA ri quay v Excel. Th chn 1 mc trong validation, sang 1
khc v x ci validation xung, bn s thy mc va chn xong khng cn trong
list na.
Lu trong code, khi ni n name MyList, phi xc nh r Sheet1.MyList, v
nu khng, VBA s cho rng name ny nm chung sheet vi sheet cha code v s
khng tm thy v bo li.

Chiu th 43: Thm cc danh sch c sn v c


danh sch t to vo menu chut phi
To mt danh sch fill trong Excel thng qua Fill handle l vic lm rt hay
nhanh chng nhp danh sch cc chui s hoc chui vn bn vo bng tnh. Excel
xy dng sn mt s Custom List v cc ngy trong tun (Sun - Sat), danh sch
cc thng (Jan Dec) v cc chui s nhng bn cng c th t to thm cc danh
sch mi cho mnh. Phn ny s hng dn bn cc to thm Custom List cho Fill

Handle.
Trc tin, bn cn nhp vo danh sch cc phn t cn a vo Custom List trn
bng tnh. V d nh bn nhp v 26 ch ci trong cc A1:A26 trn Sheet1. Sau
nhn vo nt Office Excel Options Popular Edit Custom Lists (E2003:
Tools Options Custom Lists). Nhp chn nt nm bn tri nt Import v
dng chut qut chn vng d liu A1:A26. Sau nhn nt Import v OK. K t
lc ny danh sch cc ch ci s c th s dng fill trong tt c bng tnh trn
my tnh ny.

Tip theo, a cc Custom List vo trong thc n ng cnh th bn nhn t


hp ALT+F11 ri vo Insert Module. Sau , bn nhp vo on m nh sau:

VB Code:
Sub AddFirstList()
Dim strList As String
strList = Application.CommandBars.ActionControl.Caption
If Not strList Like "*...*" Then Exit Sub
ActiveCell = Left(strList, InStr(1, strList, ".",
vbTextCompare) - 1)
End Sub

Bn kch chut hai ln ln ThisWorkbook trong ca s VBAProject v nhp vo


on m sau:
VB Code:
Private Sub Workbook_SheetBeforeRightClick _
(ByVal Sh As Object, ByVal Target As Range, Cancel As
Boolean)
Dim cBut As CommandBarButton
Dim lListCount As Long
Dim lCount As Long
Dim strList As String
Dim MyList
On Error Resume Next
With Application
lListCount = .CustomListCount
For lCount = 1 To lListCount
MyList = .GetCustomListContents(lCount)
strList = .CommandBars("Cell").Controls(MyList(1) &
"..." & _
MyList(UBound(MyList))).Caption
.CommandBars("Cell").Controls(strList).Delete
Set cBut =
.CommandBars("Cell").Controls.Add(Temporary:=True)
With cBut
.Caption = MyList(1) & "..." &
MyList(UBound(MyList))
.Style = msoButtonCaption
.OnAction = "AddFirstList"
End With

Next lCount
End With
On Error GoTo 0
End Sub

ng ca s VBE v lu bng tnh li. Sau nhp phi chut vo mt no


trn bng tnh, bn s thy cc Custom List dng sn v do bn to xut hin trong
trnh n ng cnh.

Mun s dng, bn ch cn nhn chut phi vo chn, ri chn 1 trong cc list


hin ra trong menu ng cnh, bn s c gi tr th nht ca list. Sau ko ci Fill
handle fill list nh mi khi

You might also like