VBA-exempel

Excel VBA-exempel för nybörjare

Makron är din bästa vän när det gäller att öka din produktivitet eller spara lite tid på din arbetsplats. Från små uppgifter till stora uppgifter kan vi automatisera med hjälp av VBA-kodningsspråk. Jag vet ofta att du kanske har tänkt på några av de begränsningar som excel har men med VBA-kodning kan du eliminera alla dessa. Okej, om du kämpade med VBA och fortfarande nybörjaren i den här artikeln kommer vi att ge några av de användbara exemplen på VBA-makrokod i Excel.

Lista över de 19 bästa exemplen

  1. Skriv ut alla arknamn
  2. Infoga olika färgindex i VBA
  3. Infoga serienummer uppifrån
  4. Sätt in serienummer från botten
  5. Sätt in serienummer från 10 till 1
  6. Infoga kalkylblad så mycket du vill
  7. Ta bort alla tomma kalkylblad från arbetsboken
  8. Sätt in tom rad efter varannan rad
  9. Markera stavfel
  10. Ändra allt till versaler
  11. Ändra allt till gemener
  12. Markera alla kommenterade celler
  13. Markera alla tomma celler
  14. Dölj alla ark utom ett ark
  15. Ta bort alla ark
  16. Ta bort alla filer i mappen
  17. Ta bort hela mappen
  18. Hitta den sista begagnade raden i arket
  19. Hitta den senast använda kolumnen i arket

Låt oss se var och en av detta exempel i detalj.

Du kan ladda ner denna VBA-exempel Excel-mall här - VBA-exempel Excel-mall

# 1 - Skriv ut alla arknamn

Koda:

 Sub Print_Sheet_Names () Dim i As Integer For i = 1 To Sheets.Count Cells (i, 1) .Value = Sheets (i). Namn Nästa i End Sub 

Detta extraherar alla arknamn till det aktiva arket.

# 2 - Infoga olika färgindex i VBA

Koda:

 Sub Insert_Different_Colours () Dim i som heltal för i = 1 till 56 celler (i, 1). Värde = i celler (i, 2). Interieur.ColorIndex = i Nästa slut Sub 

Detta infogar siffror från 1 till 56 och deras färgindex i nästa kolumn.

# 3 - Sätt in serienummer uppifrån

Koda:

 Sub Insert_Numbers_From_Top () Dim i som heltal för i = 1 till 10 celler (i, 1). Värde = i Nästa i End Sub 

Detta infogar serienummer från 1 till 10 uppifrån.

# 4 - Sätt in serienummer från botten

Koda:

 Sub Insert_Numbers_From_Bottom () Dim i som heltal för i = 20 till 1 steg -1 celler (i, 7). Värde = i Nästa i End Sub 

Detta infogar serienummer från 1 till 20 från botten.

# 5 - Sätt in serienummer från 10 till 1

Koda:

 Sub Ten_To_One () Dim i som heltal Dim j som heltal j = 10 för i = 1 till 10 intervall ("A" & i). Värde = jj = j - 1 Nästa i End Sub 

Detta infogar serienummer från 10 till 1 uppifrån.

# 6 - Infoga arbetsblad så mycket du vill

Koda:

 Sub AddSheets () Dim ShtCount Som Integer, i As Integer ShtCount = Application.InputBox ("Hur många ark vill du infoga?", "Add Sheets",,,,,,, 1) Om ShtCount = False, avsluta sedan andra alternativ För i = 1 till ShtCount-kalkylblad. Lägg till nästa i Avsluta om avsluta sub 

Detta ber dig att ange antalet kalkylblad du vill infoga. Ange bara numret i inmatningsrutan och klicka på Ok, det kommer att infoga de många arken omedelbart.

# 7 - Ta bort alla tomma kalkylblad från arbetsboken

Koda:

 Sub Delete_Blank_Sheets () Dim ws As Worksheet Application.DisplayAlerts = False Application.ScreenUpdating = False For each ws In ActiveWorkbook.Worksheets If WorksheetFunction.CountA (ws.UsedRange) = 0 Då ws.Radera Slut om nästa med Application.DisplayAlerts = True Application .ScreenUpdating = True End Sub 

Detta tar bort alla tomma kalkylblad från arbetsboken vi arbetar med.

# 8 - Sätt in tom rad efter varannan rad

Koda:

 Sub Insert_Row_After_Every_Other_Row () Dim rng As Range Dim CountRow As Integer Dim i As Integer Set rng = Selection CountRow = rng.EntireRow.Count For i = 1 To CountRow ActiveCell.EntireRow.Insert ActiveCell.Offset (2, 0). Avsluta sub 

För det första måste du välja det intervall där du vill infoga alternativa tomma rader.

# 9 - Markera stavfel

Koda:

 Sub Chech_Spelling_Mistake () Dim MySelection som intervall för varje MySelection i ActiveSheet.UsedRange om inte Application.CheckSpelling (Word: = MySelection.Text) Då MySelection.Interior.Color = vbRed End Om nästa MySelection End Sub Sub 

Välj först data och kör VBA-koden. Det markerar cellerna som har stavfel.

# 10 - Ändra alla till versaler

Koda:

 Sub Change_All_To_UPPER_Case () Dim Rng som intervall för varje Rng i val Celler Om Rng.HasFormula = Falsk Då Rng.Value = UCase (Rng.Value) Avsluta om nästa Rng End Sub 

Välj först data och kör koden. Det konverterar alla textvärden till versaler.

# 11 - Ändra alla till små bokstäver

Koda:

 Sub Change_All_To_LOWER_Case () Dim Rng som intervall för varje Rng i val Celler Om Rng.HasFormula = Falsk Då Rng.Value = LCase (Rng.Value) Avsluta om nästa Rng End Sub 

First, select the data and run the code. It will convert all the text values to lower case characters in excel.

#12 – Highlight All the Commented Cells

Code:

 Sub HighlightCellsWithCommentsInActiveWorksheet() ActiveSheet.UsedRange.SpecialCells(xlCellTypeComments).Interior.ColorIndex = 4 End Sub 

Result: 

#13 – Highlight All the Blank Cells

Code:

 Sub Highlight_Blank_Cells() Dim DataSet As Range Set DataSet = Selection DataSet.Cells.SpecialCells(xlCellTypeBlanks).Interior.Color = vbGreen End Sub 

First, select the data range and run the code. It will highlight all the blank cells with green color.

#14 – Hide All Sheets Except One Sheet

Code:

 Sub Hide_All_Except_One() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets If Ws.Name  "Main Sheet" Then Ws.Visible = xlSheetVeryHidden Next Ws End Sub 

The above code hides all the sheets except the sheet named as “Main Sheet”. You can change the worksheet name as per your wish.

#15 – Unhide All Sheets

Code:

 Sub UnHide_All() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets Ws.Visible = xlSheetVisible Next Ws End Sub 

This will unhide all the hidden sheets.

#16 – Delete All Files in the Folder

Code:

 Sub Delete_All_Files() 'You can use this to delete all the files in the folder Test '' On Error Resume Next Kill "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\*.*" On Error GoTo 0 End Sub 

Change the folder path which is marked in red as per your folder deletion.

#17 – Delete Entire Folder

Code:

 Sub Delete_Whole_Folder() 'You can use this to delete entire folder On Error Resume Next Kill "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\*.*" 'Firstly it will delete all the files in the folder 'Then below code will delete the entire folder if it is empty RmDir "C:\Users\Admin_2.Dell-Pc\Desktop\Delete Folder\" 'Note: RmDir delete only a empty folder On Error GoTo 0 End Sub 

Change the folder path which is marked in red as per your folder deletion.

#18 – Find the Last Used Row in the Sheet

Code:

 Sub Last_Row() Dim LR As Long LR = Cells(Rows.Count, 1).End(xlUp).Row MsgBox LR End Sub 

Here we find the Last used Row in the Sheet

#19 – Find the Last Used Column in the Sheet

Code:

 Sub Last_Column() Dim LC As Long LC = Cells(1, Columns.Count).End(xlToLeft).Column MsgBox LC End Sub 

Here we find the Last used Column in the Sheet