Вы находитесь на странице: 1из 15

06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Contact Us
(https://www.automateexcel.com/contact/)

Search

 Return to VBA Code Examples Menu (/vba-code-examples/)

VBA Cheat Sheets – Commands & Syntax Lists

IN THIS ARTICLE
VBA CHEAT SHEETS
SHEETS
CELLS & RANGES
ROWS
COLUMNS
WORKBOOKS
SETTINGS
ERRORS
FILES
ARRAYS
COLLECTIONS
DICTIONARIES

(/vba-code-generator)

AutoMacro: VBA Add-in with Hundreds of Ready-To-Use VBA Code Examples & much more!

https://www.automateexcel.com/vba/cheatsheets/ 1/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Learn More!
Contact Us
(https://www.automateexcel.com/contact/)

VBA
Search
Cheat Sheets
Reference this page for lists of all common VBA Commands & Syntax. You will find many basic commands (ex.
insert a sheet) and some advanced syntax (ex. working with arrays).

Tips:

Use CTRL + F to search this page.

Bookmark this page (CTRL + D on Chrome)!

Sheets
Description VBA Code

Activate by Tab Name Sheets(“Input”).Activate

Activate by VBA Code Name Sheet1.Activate

Activate by Index Position Sheets(1).Activate

Next Sheet ActiveSheet.Next.Activate

Get ActiveSheet MsgBox ActiveSheet.Name

Select Sheet Sheets(“Input”).Select

Set to Variable Dim ws as Worksheet


Set ws = ActiveSheet

Name / Rename ActiveSheet.Name = “NewName”

Add Sheet Sheets.Add

Add Sheet and Name Sheets.Add.Name = “NewSheet”

Add Sheet to Variable Dim ws As Worksheet


Set ws = Sheets.Add

Copy Sheet Sheets(“Sheet1”).Copy Before:=Sheets(“Sheet2”)

Hide Sheet Sheets(“Sheet1”).visible = False


or
Sheets(“Sheet1”).visible = xlSheetHidden

Unhide Sheet Sheets(“Sheet1”).Visible = True


or
Sheets(“Sheet1”).Visible = xlSheetVisible

Very Hide Sheet Sheets(“Sheet1”).Visible = xlSheetVeryHidden

https://www.automateexcel.com/vba/cheatsheets/ 2/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Delete Sheet Sheets(“Sheet1”).Delete

Clear Sheet Sheets(“Sheet1”).Cells.Clear

Unprotect (No Password)


Contact UsSheets(“Sheet1”).Unprotect
(https://www.automateexcel.com/contact/)
Unprotect (Password) Sheets(“Sheet1”).Unprotect “Password”
Search
Protect (No Password) Sheets(“Sheet1”).Protect

Protect (Password) Sheets(“Sheet1”).Protect “Password”

Protect but Allow VBA Access Sheets(“Sheet1”).Protect UserInterfaceOnly:=True

Return to Top

Cells & Ranges


Description VBA Code

Activate Cell Range(“B3”).Activate


Cells(3,2).Activate

Select Range Range(“a1:a3”).Select


Range(Range(“a1”), Range(“a3”)).Select
Range(Cells(1, 1), Cells(3, 1)).Select

Resize Range(“B3”).Resize(2, 2).Select

Offset Range(“B3”).Offset(2, 2).Select

Copy Range(“A1:B3”).Copy Range(“D1”)

Cut Range(“A1:B3”).Cut Range(“D1”)

Delete Range(“A1:B3”).Delete
Range(“A1:B3”).Delete shift:=xlShiftToLeft

Clear Range(“A1:A3”).Clear
Range(“A1:A3”).ClearContents
Range(“A1:A3”).ClearFormat

Count Range(“A1:A3”).Count

Set to Variable Dim rng as Range


Set rng = Range(“A1”)

Merge/UnMerge Range(“A1:A3”).Merge
Range(“A1:A3”).UnMerge

Loop Through Cellls Dim cell As Range

ForEach cell In Range(“A1:C3”)


MsgBox cell.Value
Next cell
https://www.automateexcel.com/vba/cheatsheets/ 3/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Return to Top Contact Us


(https://www.automateexcel.com/contact/)
Rows
Search
Description VBA Code

Activate Rows(1).Activate
Rows(“1:1”).Activate
Range(“a1”).EntireRow.Activate

Height / Width Range(“A1”).EntireRow.RowHeight = 30

Delete Range(“A1”).EntireRow.Delete

Count Range(“A1”).Rows.Count

Insert Range(“A1”).EntireRow.Insert

Last dim lRow as long


lRow = Cells(Rows.Count, 1).End(xlUp).Row

Copy Range(“1:1”).Copy Range(“5:5”)

Insert Range(“1:1”).Copy
Range(“5:5”).Insert

Return to Top

Columns
Description VBA Code

Activate Columns(1).Activate
Columns(“a:a”).Activate
Range(“a1”).EntireColumn.Activate

Height / Width Range(“A1”).EntireColumn.ColumnWidth = 30

Delete Range(“A1”).EntireColumn.Delete

Count Range(“A1”).Columns.Count

Insert Range(“A1”).EntireColumn.Insert

Last dim lCol as long


lCol = Cells(1, Columns.Count).End(xlToLeft).Column

Copy Range(“A:A”).Copy Range(“E:E”)

Insert Range(“A:A”).Copy
Range(“E:E”).Insert

https://www.automateexcel.com/vba/cheatsheets/ 4/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Return to Top

Workbooks Contact Us
(https://www.automateexcel.com/contact/)
Description VBA Code

Activate Search Workbooks(“Book1”).Activate

Activate First Opened Workbooks(1).Activate

Activate Last Opened Workbooks(Workbooks.Count).Activate

Get ActivateWorkbook MsgBox ActiveWorkbook.Name

Get ThisWorkbook (containing VBA Code) MsgBox ThisWorkbook.Name

Add Workbooks.Add

Add to Variable Dim wb As Workbook


Set wb = Workbooks.Add

Open Workbooks.Open(“C:\example.xlsm”)

Open to Variable Dim wb As Workbook


Set wb = Workbooks.Open(“C:\example.xlsm”)

Close Workbooks(“Book1”).Close SaveChanges:=False


Workbooks(“Book1”).Close SaveChanges:=True

Save Workbooks(“Book1”).Save

Save As Workbooks(“Book1”).SaveAs strFileName

Protect/Unprotect Workbooks(1).Protect “password”


Workbooks(1).Unprotect “password”

Set to Variable Dim wb as Workbook


Set wb = Workbooks(“Book1”)

Loop Through All Workbook in Workbooks Dim wb As Workbook

ForEach wb In Workbooks
MsgBox wb.Name
Next wb

Check Exists If Dir(“C:\Book1.xlsx”) = “” Then


MsgBox “File does not exist.”
EndIf

Copy Closed FileCopy “C:\file1.xlsx”,”C:\file2.xlsx”

Return to Top

Settings
https://www.automateexcel.com/vba/cheatsheets/ 5/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Description VBA Code

Screen Updating Application.ScreenUpdating = False


Application.ScreenUpdating
Contact Us = True
(https://www.automateexcel.com/contact/)
Display Alerts Application.DisplayAlerts = False
Application.DisplayAlerts = True
Search
Events Application.EnableEvents = False
Application.EnableEvents = True

Enable Cancel Key Application.EnableCancelKey = xlDisabled


Application.EnableCancelKey = xlInterrupt

Text Compare – Ignore Case Option Compare Text

Require Variable Declaration Option Explicit

Automatic Calculations Application.Calculation = xlManual


Application.Calculation = xlAutomatic

Background Error Checking Application.ErrorCheckingOptions.BackgroundChecking = False


Application.ErrorCheckingOptions.BackgroundChecking = True

Display Formula Bar Application.DisplayFormulaBar = False


Application.DisplayFormulaBar = True

Freeze Panes ActiveWindow.FreezePanes = False


ActiveWindow.FreezePanes = True

Full Screen View Application.DisplayFullScreen = False


Application.DisplayFullScreen = True

PageBreak Preview ActiveWindow.View = xlPageBreakPreview


ActiveWindow.View = xlNormalView

Display Scroll Bars With ActiveWindow


.DisplayHorizontalScrollBar = False
.DisplayVerticalScrollBar = False
End WithWith ActiveWindow
.DisplayHorizontalScrollBar = True
.DisplayVerticalScrollBar = True
End With

Display Status Bar Application.DisplayStatusBar = False


Application.DisplayStatusBar = True

Status Bar Contents Application.StatusBar = “I’m working Now!!!”


Application.StatusBar = False

Display Workbook Tabs ActiveWindow.DisplayWorkbookTabs = False


ActiveWindow.DisplayWorkbookTabs = True

UserName Application.UserName = “AutomateExcel.com”

App Caption Application.Caption = “AutomateExcel Model”

https://www.automateexcel.com/vba/cheatsheets/ 6/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Zoom ActiveWindow.Zoom = 80

Contact Us
Return to Top
(https://www.automateexcel.com/contact/)

Errors Search

Description VBA Code

On Error – Stop code and display error On Error Goto 0

On Error – Skip error and continue running On Error Resume Next

On Error – Go to a line of code [Label] On Error Goto [Label]

Clears (Resets) Error On Error GoTo –1

Show Error number MsgBox Err.Number

Show Description of error MsgBox Err.Description

Function to generate own error Err.Raise

Return to Top

Files
Description VBA Code

Copy File FileCopy “C:\test\test_old.xlsx”, “C:\test\test_new.xlsx”

Delete File Kill “C:\test\example.xlsx”

Make Folder MkDir “C:\test\”

Delete All Files From Folder Kill “C:\test\” & “*.*”

Delete Folder Kill “C:\test\” & “*.*”


RmDir “C:\test\”

Current Directory strPath = CurDir()

ThisWorkbook Path strPath = ThisWorkbook.Path

Loop Through All Files in Folder strFile = Dir(“C:\test” & “\*”)

Sub Len(strFile) > 0


Sub strFile
strFile = Dir
Sub

Return to Top

https://www.automateexcel.com/vba/cheatsheets/ 7/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Arrays
Description VBA Code
Contact Us
Create (https://www.automateexcel.com/contact/)
Dim arr(1 To 3) As Variant
arr(1) = “one”
Search
arr(2) = “two”
arr(3) = “three”

Create From Excel Dim arr(1 To 3) As Variant


Dim cell As Range, i As Integeri = LBound(arr)ForEach cell In Range(“A1:A3”)
i=i+1
arr(i) = cell.value
Next cell

Read All Items Dim i as Long


Fori = LBound(arr) To UBound(arr)
MsgBox arr(i)
Next i

Erase Erase arr

Array to String Dim sName As String


sName = Join(arr, “:”)

Increase Size ReDim Preserve arr(0 To 100)

Set Value arr(1) = 22

Return to Top

Collections
Description VBA Code

Create Dim coll As New Collection


coll.Add “one”
coll.Add “two”

Create From Excel Dim coll As New Collection


Dim cell As RangeForEach cell In Range(“A1:A2”)
coll.Add cell.value
Next cell

Add Item coll.Add “Value”

Add Item Before coll.Add “Value”, Before:=1

Add Item After coll.Add “Value”, After:=1

Read Item MsgBox coll (1)

Count Items coll.Count

https://www.automateexcel.com/vba/cheatsheets/ 8/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Read All Items Dim item As Variant


ForEach item In coll
MsgBox item
Contact Us
Next item
(https://www.automateexcel.com/contact/)
Remove Item coll.Remove (1)
Search
Remove All Items Set coll = New Collection

Return to Top

Dictionaries
Description VBA Code

Required Reference Tools > References > Microsoft Scripting Runtime

Create Dim dict As New Scripting.Dictionary


dict.Add “”
dict.Add “”

Create From Excel Dim dict As New Scripting.Dictionary


Dim cell As Range
Dim key As IntegerForEach cell In Range(“A1:A10”)
key = key + 1
dict.Add key, cell.value
Next cell

Add Item dict.Add “Key”, “Value”

Change Value dict(“Key”) = “Value”

Get Value MsgBox dict(“Key”)

Check For Value If dict.Exists(“Key”) Then


MsgBox “Exists”
End If

Remove Item dict.Remove (“Key”)

Remove All Items dict.RemoveAll

Loop Through Items Dim key As Variant


ForEach key In dict.Keys
MsgBox key, dict(key)
Next key

Count Items dict.Count

Make Key Case Sensitive dict.CompareMode = vbBinaryCompare

Make Key Case Insensitive dict.CompareMode = vbTextCompare

https://www.automateexcel.com/vba/cheatsheets/ 9/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Return to Top

VBAContact
Code Us
Examples Add-in
(https://www.automateexcel.com/contact/)
Easily access all of the code examples found on our site. Simply navigate to the menu, click, and
Search
the code will be inserted directly into your module. .xlam add-in (no installation required!)

Free (https://www.automateexcel.com/vba-add-in-
Download download/)

Privacy Policy (https://www.automateexcel.com/privacy/)

 Return to VBA Code Examples Menu (/vba-code-examples/)

https://www.automateexcel.com/vba/cheatsheets/ 10/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Contact Us
(https://www.automateexcel.com/contact/)

Search

(/vba-code-

generator/)

(https://www.automateexcel.com/automacro/reviews)

You may also like some of this


related content...

https://www.automateexcel.com/vba/cheatsheets/ 11/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Advertisements

Contact Us
(https://www.automateexcel.com/contact/)

Search

ABOUT AUTOMATE EXCEL

"At Automate Excel we offer a range of free resources, software, training, and consulting to help you Excel at Excel.
Contact me (https://www.automateexcel.com/excel/contact/) to learn more."

Steve Rynearson, Chief Excel Officer (CEO) at Automate Excel

VBA CODE GENERATOR


(HTTPS://WWW.AUTOMATEEXCEL.COM/VBA
-CODE-GENERATOR)

VBA TUTORIAL (/LEARN-VBA-TUTORIAL)

VBA CODE EXAMPLES FOR EXCEL


(HTTPS://WWW.AUTOMATEEXCEL.COM/VBA
-CODE-EXAMPLES/)

VBA CHEATSHEETS
(HTTPS://WWW.AUTOMATEEXCEL.COM/VBA
/CHEATSHEETS/)

START HERE
(HTTPS://WWW.AUTOMATEEXCEL.COM/TUTORIALS-
PRACTICE-TESTS/)

EXCEL BOOT CAMP


(HTTPS://WWW.AUTOMATEEXCEL.COM/EXC
EL-BOOT-CAMP/)
https://www.automateexcel.com/vba/cheatsheets/ 12/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

FORMULAS TUTORIAL (/FORMULAS-


FUNCTIONS)
Contact Us
FORMULAS LIST
(https://www.automateexcel.com/contact/)
(HTTPS://WWW.AUTOMATEEXCEL.COM/FOR
MULAS/)
Search
FUNCTIONS LIST
(HTTPS://WWW.AUTOMATEEXCEL.COM/FUN
CTIONS/)

SHORTCUT COACH
(HTTPS://WWW.AUTOMATEEXCEL.COM/SHO
RTCUTCOACH/)

SHORTCUT TUTORIAL (/LEARN-KEYBOARD-


SHORTCUTS)

SHORTCUTS LIST (/SHORTCUTS/)

NEWSLETTER SIGNUP

I'm constantly posting new free stuff! Sign up here to receive


notices.

First Name

Email

SUBMIT

https://www.automateexcel.com/vba/cheatsheets/ 13/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Contact Us
(https://www.automateexcel.com/contact/)

Search

(/learn-vba-tutorial/)

(/vba-code-generator/)

(https://www.automateexcel.com/automacro/reviews)

© 2020 Spreadsheet Boot Camp LLC. All Rights


Reserved.

https://www.automateexcel.com/vba/cheatsheets/ 14/15
06/01/2020 VBA Cheat Sheets - Commands & Syntax Lists - Automate Excel

Automate Excel (https://www.automateexcel.com)

Contact Us
(https://www.automateexcel.com/contact/)

Search

https://www.automateexcel.com/vba/cheatsheets/ 15/15

Вам также может понравиться