0% found this document useful (0 votes)
23 views20 pages

VBA Course

Excel VBA course

Uploaded by

mhhussain131313
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views20 pages

VBA Course

Excel VBA course

Uploaded by

mhhussain131313
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 20

VBA Course

Sub Write_a_macro()

MsgBox "My first macro"


MsgBox 1

'Cell refrencing- how to write any value in the cell on the sheet
'Method-1- Writing value into active cell
ActiveCell.Value = " Good VBA"

ActiveCell.Value = 1234
'Method-2- Writing value into non-active cell
'[Celladdress].Value = 1234
[a4].Value = 1234

'Method-3- Writing value for a range of cell


'[Cellarange].Value = 1234
[f6:f22].Value = "hassan"

'Method-3- Writing value for a cell


Range("B1").Value = "Pakistan"
'Method-3- Writing value for a range of cell
Range("B2:B10").Value = "Islamabad"
End Sub

Sub Copy_paste
Range("i1:i9") = "Capital"
Range("i1:i9").Copy
Range("j1:j9").PasteSpecial
Application.CutCopyMode = False
End Sub

Sub Font

Range("l1:l9") = "Capital"
Range("l1:l9").Font.Name = "Poppins"
Range("l1:l9").Font.Bold = True
Range("l1:l9").Font.Italic = True
Range("l1:l9").Font.Underline = True
Range("l1:l9").Font.Strikethrough = True

End Sub

Sub With_Block()

Range("m1:m9") = "Capital"
With Range("m1:m9").Font
.Name = "Poppins"
.Bold = True
.Italic = True
.Underline = True
.Strikethrough = True
End With
End Sub

Adding borders
Sub Borders()

Range("r1:r10") = "Great"
Range("r1:r10").Borders.Weight = 3
Range("r1:r10").Borders.Color = vbRed
Range("r1:r10").Borders.LineStyle = xlDouble
Range("r1:r10").Borders.LineStyle = xldashed
Range("r1:r10").Borders.LineStyle = xlContinuous
End Sub

Sub Alignment()

Range("t1:t10") = "VBA"
'Horizontal Alignment
Range("t1:t10").HorizontalAlignment = xlLeft
Range("t1:t10").HorizontalAlignment = xlRight
Range("t1:t10").HorizontalAlignment = xlCenter

'Vertical Alignment

Range("t1:t10").VerticalAlignment = xlTop
Range("t1:t10").VerticalAlignment = xlBottom
Range("t1:t10").VerticalAlignment = xlCenter

End Sub

Sub Font_Color()

Range("t1:t10") = "VBA"

'Method-1
'For the 8 standard colors

Range("t1:t10").Font.Color = vbGreen
Range("t1:t10").Font.Color = vbYellow
Range("t1:t10").Font.Color = vbRed

'Method-2
'Through color-index
'color-index is till 56

Range("t1:t10").Font.ColorIndex = 3
Range("t1:t10").Font.ColorIndex = 4
Range("t1:t10").Font.ColorIndex = 7
Range("t1:t10").Font.ColorIndex = 43
End Sub

Sub Font_Color()

' Similar to the Font color

Range("t1:t10") = "VBA"

'Method-1
'For the 8 standard colors

Range("t1:t10").Interior.Color = vbGreen

'Method-2
'Through color-index
'color-index is till 56

Range("t1:t10").Interior.ColorIndex = 3
End Sub

Sub Pastespecial()

Range("v1:v10").Value = "Excel VBA Complete Cou"


Range("v1:v10").Copy
Range("w1:w10").Pastespecial xlPasteAllUsingSourceTheme
Range("w1:w10").Pastespecial xlPasteColumnWidths
Application.CutCopyMode = False

End Sub

Sub Orientation()

'To change the angle of text in a cell


Range("z1").Value = "Excel"
Range("z1").Orientation = 90
End Sub

Sub Wraptext()

Range("o1:o3").Value = "Excel- To change the angle of text in a cell"


Range("o1:o3").Wraptext = True
Range("o1:o3").Wraptext = False
End Sub

Sub Merge_Unmerge()
Use range of cells for unmerge

Range("o1").Value = "Excel- To change the angle of text in a cell"


Range("o1").Merge
Range("o1").UnMerge
End Sub

Sub Clear Cells()

Range("n1:q1").Value = "Excel- To change the angle of text in a cell"


Range("n1:q1").ClearFormats
Range("n1:q1").ClearContent
Range("n1:q1").ClearHyperlinks
Range("n1:q1").Clear
The last one “clear” clears everything

End Sub

Sub Delete Cells()

Range("n1:q1").Value = "Excel"
Range("n1:q1").Delete
Range("n1:q1").EntireRow.Delete

Range("y1:y10").Value = "VBA"
Range("y1:y10").Delete
Range("y1:y10").EntireColumn.Delete
End Sub

Sub Insert_Row_Column()
Range("v:v").Insert
Range("2:2").Insert
Range("v1").EntireColumn.Insert
Range("v1").EntireRow.Insert
End Sub

Sub Delete_Row_Column()

Range("r2").Delete
Range("v2").EntireRow.Delete
Range("v3").Delete
Range("v3").EntireColumn.Delete
Range("v4:v10").EntireColumn.Delete
Range("v4:v12").EntireRow.Delete

End Sub

Sub Column_Width()

Range("r2").ColumnWidth = 12
“Gives same result but two methods
Range("r2").Columns.ColumnWidth = 12

Range("l2").Columns.AutoFit

End Sub
Sub Row_Height()
Range("r2:r10").Rowheight = 12
‘Gives same result but two methods
Range("r2:r10").Rows.Rowheight = 12
Range("l2:l10").Rows.AutoFi
End Sub
Sub Select_Active()
Range("a1").Select
Range("a1:a10").Select

Range("a1").Activate
Range("a1:a10").Activate
End Sub

Sub Hide_Unhide_Columns()

Range("a:a").Columns.Hidden = True
Range("a:a").Columns.Hidden = False

Range("a:f").Columns.Hidden = True
Range("a:f").Columns.Hidden = False

End Sub
Sub Hide_Unhide_Rows ()

Range("1:1").Rows.Hidden = True
Range("1:1").Rows.Hidden = False

Range("1:10").Rows.Hidden = True
Range("1:10").Rows.Hidden = False

End Sub

Sub Sheet_Refrencing()
‘Used to refer an inactivated sheet
Sheets("Jeeto Pakistan").Range("a1:a10").Value = "Kamran"

End Sub

Sub Add_Sheets()
'Method-1, to add sheets
Sheets.Add
Worksheets.Add
'To add sheets at specific place
Sheets.Add After:=Sheets("Jeeto Pakistan")
Sheets.Add Before:=Sheets("Jeeto Pakistan")
End Sub
Sub Add_Sheets_Name()
‘Sheet will be added before the active cell
Sheets.Add.Name = "Fahad Khan"
End Sub

Sub Rename_Sheets()
‘Method-1
Sheets(1).Name = "Host"
‘(1) refers to sheet number
‘Method-2
Sheets("Fadi").Name = "zadiq"
End Sub

Sub Get_SheetNames()
'To get sheet names in a messagebox

MsgBox Sheets(1).Name
MsgBox Sheets(2).Name
MsgBox Sheets(3).Name
MsgBox Sheets(4).Name
MsgBox Sheets(5).Name

End Sub

Sub Copy_Paste_Sheets()

Sheets("zadiq").Copy after:=Sheets("Jeeto Pakistan")


Sheets("zadiq").Copy before:=Sheets("Jeeto Pakistan")
End Sub

Sub Move_Sheets()

Sheets("zadiq").Move after:=Sheets("Jeeto Pakistan")


Sheets("zadiq").Move before:=Sheets("Jeeto Pakistan")
End Sub

Sub Change_Sheets_TabColor()

Sheets("zadiq").Tab.Color = vbBlue
Sheets("Jeeto Pakistan").Tab.Color = 8
Sheets("Fahad Khan").Tab.Color = vbRed
Sheets("zadiq").Tab.Color = False
End Sub

Sub Hide_Unhide_Sheets()
Sheets("Sheet1").Visible = False
Sheets("Sheet1").Visible = True
End Sub

Sub Protect_Unprotect_Sheets()
When sheet is protected using this method the password does not work to unprotect the sheet.
Manual sheet protection is better.
Sheets("Sheet1").Protect Password = 123
Sheets("Sheet1").Unprotect Password = 123
End Sub

Sub Select_Active_Sheets()
Sheets("Learning VBA").Select
Sheets("Learning VBA").Activate

End Sub

Sub Add_Workbook()

Workbooks.Add
Workbooks.Add.SaveAs Filename:="E:/Demobook.xlsx"
‘In the filename, give proper folder address.
End Sub

Sub Get_Workbook_Names()
'To get sheet names in a message box

MsgBox (Activeworkbook.Name)
MsgBox (Thisworkbook.Name)
MsgBox (Activeworkbook.Name)

Sub Workbook_Save_Close()

Workbooks("Book1.xlsm").Sheets(4).Range("b1:b10") = "Geo Pakistan"

Workbooks("Book1.xlsm").Save
Workbooks("Book1.xlsm").Close

End Sub
Sub Workbook_Open_Close()

Wookbooks.Open Filename:="FORECASTING COURSE:/Week01.01.xlsm"


Workbooks("Week01.01.xlsm").Sheets(6).Range("m10") = "Good Job"
Workbooks("Week01.01.xlsm ").Save
Workbooks("Week01.01.xlsm ").Close

End Sub

Sub Workbook_Delete ()

Kill (“File location:/filename.Extension”)


Kill (“E:/Book1,xlsx”)

End sub

Sub Create_Folder()
MkDir ("C:/Pakistan")
End Sub

Sub Variable_Usage()
Var1 = "BBC News"
Range("d1:d10").Value = Var1
Range("e1:e10").Value = Var1
Range("f1:f10").Value = Var1

End Sub

Sub For_Loop()
Rem For Loop is used to repeat a function for given number of times.

Dim x as Integer
For x = 1 To 5
MsgBox "Hassan"
Next
End Sub
Sub For_Loop()
Rem For Loop is used to repeat a function for given number of times.

Dim x as Integer
For x = 1 To 5
MsgBox x
'Now the messagebox will show values of x
Next

End Sub
Sub For_Loop()
Rem For Loop is used to repeat a function for given number of times.

Dim x as Integer
For x = 1 To 5 step 2
MsgBox x
'Now the message box will show values of x+2
Next

End Sub

Sub For_Loop2()
Rem For Loop is used to repeat a function for given number of times.

Dim x As Integer
For x = 1 To 10000
Cells(x, 8).Value = x
'Now the message box will show values of x
Next

End Sub

Sub For_Loop2()
Rem For Loop is used to repeat a function for given number of times.

Dim x As Integer
For x = 1 To 10000 step 5
Cells(x, 9).Value = x
'Now the message box will show values of x after every 5 cells

Next
End Sub

Sub For_Loop3()
‘Get all 56 colors
Dim x As Integer
For x = 1 To 56
Cells(x, 12).Value = x
Cells(x, 13).Interior.ColorIndex = x
Next
End Sub

Sub For_Loop4()
‘To go in the reverse order
Dim x As Integer
For x = 56 To 1
Cells(x, 12).Value = x
Next
End Sub

Sub For_Loop4()
'To add values diagonally
Dim x As Integer
For x = 1 To 20
Cells(x, x).Value = x
Next x
End Sub
For Each Next Loop used for collecting objects of similar types.

Sub For_Each_Next1()
'To get names of sheets in a workbook
Dim Y As Worksheet
For Each Y In ThisWorkbook.Sheets
MsgBox Y.Name
Next
End Sub

'To do something repeatedly


Sub Loop_Do_While()
'To do something repeatedly
'To add a number to a value in one cell and write the answer in other cell
Dim a As Integr
a=1
Do While Cells(a, 1) <> ""
Cells(a, 2).Value = Cells(a, 2).Value + 10
a=a+1
Loop
End Sub

You might also like