You are on page 1of 8

12/10/2014

Tng tc cho code VBA ca bn


kuldokk

TRANGCH

KINTHC

THVIN

DINN

BIMI

Lu

TRCNGHIM

Hscabn

Khungiuchnh

Thot

NIQUIDINN
GoogleSearch...

MyBookmarks Bimi Hpthdinn Hipsdngdinn Lch Hotngcngng

Cclnhdinn

Linktnhanh

Dinn

LptrnhviExcel

Excelvccngnnglptrnhkhc

Thvinmlptrnh

TngtcchocodeVBAcabn
Hinthktqutmkimt1n3trntngs:3

ti:TngtcchocodeVBAcabn
iuchnh

Tmtrongti

Kiuxem

#1

060409, 09:58PM

HOTNGTHIN
NGUYN
CATHNHVINGPE
PhtngCTNmhc
mimpnghatnhx
ThnhSnBThc
ThanhHa

levanduyet
Noonelike
Thamgiangy:
NiCNg:

052006

HOTNGGPE
TITP.HCHMINH
&BNHDNG

HCM

Bigi:

1,735

Cmn:

1,823

ccmn4,317lntrong1,198bivit

TngtcchocodeVBAcabn

HithovVBAtiTP.HCM
voccngy9,16,
23/11/2014
CafeExcelk4tiBNH
DNGvongy9/11/2014

1.Ttccchcpnhtmnhnhvccchkhctngtcthchin
code
Code:

http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

1/8

12/10/2014

Tng tc cho code VBA ca bn


Option Explicit
Public glb_origCalculationMode As Integer
Sub SpeedOn(Optional StatusBarMsg As String = "Running macro...")
' Ch : y cc bn c th thay i thng bo
'
bng cch truyn vo chui UNICODE vo bin StatusBarMsg
glb_origCalculationMode = Application.Calculation
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
.Cursor = xlWait
.StatusBar = StatusBarMsg
.EnableCancelKey = xlErrorHandler
End With
End Sub
Sub SpeedOff()
With Application
.Calculation = glb_origCalculationMode
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
.CalculateBeforeSave = True
.Cursor = xlDefault
.StatusBar = False
.EnableCancelKey = xlInterrupt
End With
End Sub
Sub FillSlow()
Dim c As Range, r As Range, startTime, EndTime
Set r = Range("A1:C1000")
r.ClearContents
startTime = Timer
For Each c In r
c.Select
c.Formula = "=Row()*Column()"
Next c
DoEvents
EndTime = Timer
MsgBox "Total Time: " & EndTime - startTime
[A1].Select
End Sub
Sub FillFast()
Dim c As Range, r As Range, startTime, EndTime
Set r = Range("A1:C1000")
r.ClearContents
startTime = Timer
On Error Goto ResetSpeed
SpeedOn
For Each c In r
c.Select
c.Formula = "=Row()*Column()"
Next c
DoEvents
EndTime = Timer
MsgBox "Total Time: " & EndTime - startTime
[A1].Select
ResetSpeed:
SpeedOff
End Sub

Ngunty.
Cchdng:
XinxemvdFillSlowvFillFasttrn.
Bnsgithtctngtckhithchincconmbngcchgithtc
SpeedOnvgilithtcSpeedOffmikhibnhontt.
Ch:
Nucconmcabncsdngktqutnhtoncamtcngthc,thbnnn
xemxthocchnhsaccthtctrnchophhpvicngviccamnh.
LVnDuyt
thayinidungbi:levanduyet,030711lc10:41AM

Thvinmlptrnh|Cccchlclyccgitrkhngtrng|Cchmngidng
huch|Chngtrnhqunlkho|Sdngcctaglmchobivitsinhng|
TovinBarcode|Cngctrgiptnhgithnh

Cmn

AddToBookmarks

TrLiViTrchDn

C39thnhvincmnlevanduyetvbivitny:
adult,anktdn,bigbang1409,BNTT,chicpt,chipvang,Dauthivan,hoa_005tp,
http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

2/8

12/10/2014

Tng tc cho code VBA ca bn

HYen17,jb007,KVP,leonguyenz,LinDan,luanvien177,Manhth.me,minhbeo,
MinhCong,nghiaphuc,nguyentuhp,nhapmon,phamduylong,phanngoclan,
phibonaxi,phongkiemtinh,phucbugis,ptlong04x1,ptm0412,qtm1987,
thehungqnu,thungdols,TrungChinhs,tvxdgt,viehoai,vu_tuan_manh_linh,
william.hoang74,xichdragon,xmenx56,yeudoi

#2

020711, 03:07PM
levanduyet
Noonelike
Thamgiangy:
NiCNg:

052006
HCM

Bigi:

1,735

Cmn:

1,823

ccmn4,317lntrong1,198bivit

2.TruycpnmttrongvngAccessingCellsInARange
GisticdliutiSheet1,vng
Code:
A1:B10

,vtittnl"MyRange",timunthamchiunB5:
NguynvnbiBitontra

Lmthnothamchiuncctrong(mangtnhtngi,sgiithch
phnsau)vngdliuA1:B10(tnMyRange)lnhanhnht?

Cutrli:
Thayvthamchiu
Code:
Range("MyRange").Cells(5,2)

tadng
Code:
Range("MyRange")(5,2)

NgoirakhithamchiunA1,ccbncthdngcode
Cch1:
Code:
Range("A1")

hoc
Cch2:
Code:
[A1]

Tronghaicchtrn,cch2ngngnhnnhngschmhncch1.
Nithmvthamchiukiuny:
Code:

http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

3/8

12/10/2014

Tng tc cho code VBA ca bn


Range("A1:B10")(5,2) ' Tham chiu n B5
Range("A1:B10")(1,1) ' Tham chiu n A1
Range("B2:C10")(0, 0) ' Tham chiu n A1, cc bn ch !
Range("C3:D10")(-1, -1) ' Tham chiu n A1, cc bn ch !
Range("A1:B10")(5,2)(5,2) ' Tham chiu n C9
Range("A1:B10")(5,3) ' Tham chiu n C5
Range("A1:B10")(12,13) ' Tham chiu n M12
Range("A1:B10")(1) ' Tham chiu n A1
Range("A1:B10")(2) ' Tham chiu n B1
Range("A1:B10")(3) ' Tham chiu n A2
Range("A1:B10")(4) ' Tham chiu n B2

Victhamchiukhidngmts(Range("A1:B10")(3))sittriquaphi,sau
xungmthngvlitiptcttriquaphi.
Dichuyntheohng:
Code:
Range("D4")(1) ' Tham chiu n D4
Range("D4")(2) ' Tham chiu n D5
Range("D4")(3) ' Tham chiu n D6

Dichuyntheoct:
Code:
Range("D4").Columns(1) ' Tham chiu n D4
Range("D4").Columns(2) ' Tham chiu n E4
Range("D4").Columns(3) ' Tham chiu n F4

Ccbncthcthmbivitvcckiuthamchiutiy.
3.KhithamchiunmtsheetCollectionIndexes:
KhithamchiunmtsheetbncththamchiubiTnhocSnh,
Cch1:
Code:
Worksheets("Sheet1")

Cch2:
Code:
Worksheets(1)

Thamchiucch2snhanhhn.Nhngch,sthamchiunycthsthayi,
chnhviunyantonththamchiucchmtvnantonhnvdthayi
hn.
4.KhaibosmEarlyBinding:
ikhikhilptrnhchngtasthamchiunmtsitngthvickhaibosm
(EarlyBinding:cthhiultngminh,vnubnkhaibolObject(itng),th
chngtrnhphimtthigiandtm)snhanhhn.
VdsautithamchiunitngWord:
Thkhaibosau
Code:
Dim WordObj As Word.Application

sgipthcthinhanhhn
Code:
Dim WordObj As Object

5.ChkhidngvnglpFOREACH:
BnnndngvnglpFOREACHnhsau:
http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

4/8

12/10/2014

Tng tc cho code VBA ca bn

Code:
Dim WS as Worksheet
For Each WS In Worksheets
MsgBox WS.Name
Next WS

thayvdng
Code:
Dim i as Integer
For i = 1 To Worksheets.Count
MsgBox Worksheets(i).Name
Next i

6.TrnhsdngSELECT:
Gisticnhiushapetrnmtsheet,timunach"Hello"voccshapeny.
ThayvsdngSELECT
Code:
For i = 0 To ActiveSheet.Shapes.Count
ActiveSheet.Shapes(i).Select
Selection.Text = "Hello"
Next i

thiftidngtrctipnhsau,snhanhhn
Code:
For i = 0 To ActiveSheet.Shapes.Count
ActiveSheet.Shapes(i).TextEffect.Text = "Hello"
Next i

7.cvghitrnmtkhidliuln:
Vnny,ngivitcngtnggp,nhtlkhiphilmvicvikhidliuln.
Vdnh:khivitchngtrnhlydliuttptinExceltVisualBasic6.
Khivitcode,bncnchlmgimthiuvictruyndliutExcelvcodeca
bn.
Code1:
Code:
Dim DataRange As Range
Dim Irow
As Long
Dim Icol
As Integer
Dim MyVar
As Double
Set DataRange = Range("A1:C10000")
For Irow = 1 To 10000
For Icol = 1 To 3
MyVar = DataRange(Irow, Icol)
xcel
If MyVar > 0 Then
MyVar = MyVar * MyVar
tr
DataRange(Irow, Icol) = MyVar
ngc vo Excel
End If
Next Icol
Next Irow

' c gi tr t E
' Thay i cc gi
' a cc gi tr

Code2:
Code:

http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

5/8

12/10/2014

Tng tc cho code VBA ca bn


Dim DataRange As Variant
Dim Irow
As Long
Dim Icol
As Integer
Dim MyVar
As Double
DataRange = Range("A1:C10000").Value
i tr t Excel mt ln, v a vo mng
For Irow = 1 To 10000
For Icol = 1 To 3
MyVar = DataRange(Irow, Icol)
If MyVar > 0 Then
MyVar = MyVar * MyVar
tr trong mng
DataRange(Irow, Icol) = MyVar
End If
Next Icol
Next Irow
Range("A1:C10000").Value = DataRange
tr t mng vo Excel mt ln

' c tt c cc g

' Thay i cc gi

' a li cc gi

Code2snhanhhn.Vyccbnchcccodesau:
Code:
DataRange = Range("A1:C10000").Value

Code:
Range("A1:C10000").Value = DataRange

vkhaibobinlkiuVariant
Code:
Dim DataRange As Variant

slmchochngtrnhcabnnhanhhn.
ikhingitacndnghmsau(cngchlvntinitrn)
Code:
Function ExcelToVBA(Rng As Range)
Dim Arr
As Variant
Arr = Rng.Value
End Function

Ngoira,ccbnnnthamkhotopicbnvcchlmvicvimngtiy.
8.SdngcchmsnccaExcel:
NndngcchmsnccaExcel.VdsaudnghmSUMchovngA1:A100
Code:
MySum = Application.WorksheetFunction.Sum(Range("A1:A100"))

Bnngvitlicodenhsau:
Code:
For Each C In Range("A1:A100")
MySum = MySum + C.Value
Next C

9.TrnhsdngApplication.Volatilekhicth
10.TrnhsdngOFFSET,nndnggingnhmc2
Tnghp.
LVnDuyt
thayinidungbi:levanduyet,200711lc09:23AM

Thvinmlptrnh|Cccchlclyccgitrkhngtrng|Cchmngidng
huch|Chngtrnhqunlkho|Sdngcctaglmchobivitsinhng|
http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

6/8

12/10/2014

Tng tc cho code VBA ca bn

TovinBarcode|Cngctrgiptnhgithnh

Cmn

TrLiViTrchDn

C17thnhvincmnlevanduyetvbivitny:
Dauthivan,dhn46,donxxiii,letin,MinhCong,nganson,nghiaphuc,ngodany135,
phanngoclan,ptm0412,qtm1987,rhanchunshan,thangcola114,TrungChinhs,
viehoai,xmenx56,yeudoi

#3

060711, 08:09AM
levanduyet
Noonelike
Thamgiangy:

052006

NiCNg:

HCM

Bigi:

1,735

Cmn:

1,823

ccmn4,317lntrong1,198bivit

11.Sdngcckiudliuphhpvinhau:
VBAqudgii,chnhvthmikhitrongcconmchngtaliisosnhhai
binkhnghgingnhau.trnhnhnglingticxyra,trckhitruynbin
chomtthtc,haygnmtbinchomtbinkhc,lunlunphichcchnrng
cckiubincachngphigingnhau.
12.Thchinchuynitrctip,thayvphiVBAtquytnh:
Khihaibinkhngcngkiudliu,bnnnthchinvicchuynikiudliu
nhCStr(),CDbl()vv...Bngvicthchinny,bnsgiptitkimthigianthayv
phiVBAaraquytnh.
13.SdngLen(chui)=0thayvdngchui="":
VBAlutrchuitrongbnhbngvicluchiudicachui,ctheosaubi
ccktchuinycha.
ChnhvvyvicsosnhchiudicachuinhLen(chui)=0snhanhhn.
14.SdngLeft$,Right$,Mid$...thayvdngLeft,RightvMid

Thvinmlptrnh|Cccchlclyccgitrkhngtrng|Cchmngidng
huch|Chngtrnhqunlkho|Sdngcctaglmchobivitsinhng|
TovinBarcode|Cngctrgiptnhgithnh

Cmn

TrLiViTrchDn

C15thnhvincmnlevanduyetvbivitny:
buimaingoc,chuot0106,donxxiii,fubi,letin,maytinhvp01,nghiaphuc,phibonaxi,
ptm0412,qtm1987,SA_DQ,thangcola114,TrungChinhs,viehoai,yeudoi

TiTrc|TiK
Thngtinvchny

Hinc1ngiangxemtiny.(1thnhvinv0khch)

kuldokk
titngt

Tngtctnhton
VitbitrongdungstrongchuynmcLpTrnhviExcel

Trli:37
Bimigi:080810,10:43AM

http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

7/8

12/10/2014

Tng tc cho code VBA ca bn

VitbitrongdungstrongchuynmcLpTrnhviExcel

Bimigi:080810,10:43AM

lmbngchmgitngcamingy

Trli:0

VitbithuymakettrongchuynmcNhngvnchung

Bimigi:201109,07:45AM

Tmslngcngnhntng,gimhngthng

Trli:28

Vitbitam8678trongchuynmcLpTrnhviExcel

Bimigi:030909,10:15AM

Dngcngthcnotngtctnhton?

Trli:26

Vitbianhtuan1066trongchuynmcHmvcngthcExcel

Bookmarks

Bimigi:151107,04:58PM

QuynSDngDinn

Google
Facebook

Bnkhngthng
timi

BBcodeangM

Bnkhngthngtr
li

[IMG]angM

Bnkhngthngfile
nhkm.
Bnkhngthsabi
vit.

SmiliesangM
[VIDEO]codeis
M
HTMLangTt
Niquydin
n

Webmail LinLc Trangch LuTr TrLnTrn


TINGPE
Schxutbn
Khahc
Hotng&skin
Tiliuminph
Tinchminph
DINN
Niquidinn
Thngtindinn
Bimi
Bivittnghp
Dnangthchin

KINTHC
KinthcExcel
LptrnhVBA
Sonthovnbn
Boco,thuyttrnh
Tinhcmrng

MigiGMT+7.Hintil08:34PM.
PhttrinbivBulletinPhinbn4.2.2
Bnquynvphthnht20002014,biJelsoft
EnterprisesLtd.
GiiPhpExcelwww.giaiphapexcel.com
info@giaiphapexcel.com
nghghir"NgunGiiPhpExcel"khiphthnhlithng
tinttrangwebny.
vBulletinImprovedByvBFoster(LiteVersion),
UltimateScheme,Ltd.

http://www.giaiphapexcel.com/forum/showthread.php?21361-Tang-t?c-cho-code-VBA-c?a-b?n

8/8

You might also like