Excel VBA Beispiele für Anfänger
Makros sind Ihr bester Freund, wenn es darum geht, Ihre Produktivität zu steigern oder Zeit an Ihrem Arbeitsplatz zu sparen. Von kleinen bis zu großen Aufgaben können wir mithilfe der VBA-Codierungssprache automatisieren. Ich weiß, dass Sie oft an einige der Einschränkungen von Excel gedacht haben, aber mit VBA-Codierung können Sie all diese beseitigen. Ok, wenn Sie mit VBA zu kämpfen haben und noch der Anfänger in diesem Artikel sind, werden wir einige nützliche Beispiele für VBA-Makrocode in Excel geben.
Liste der Top 19 Beispiele
- Alle Blattnamen drucken
- Fügen Sie einen anderen Farbindex in VBA ein
- Seriennummer von oben einfügen
- Geben Sie die Seriennummer von unten ein
- Seriennummer von 10 bis 1 eingeben
- Fügen Sie so viele Arbeitsblätter ein, wie Sie möchten
- Löschen Sie alle leeren Arbeitsblätter aus der Arbeitsmappe
- Fügen Sie nach jeder zweiten Zeile eine leere Zeile ein
- Rechtschreibfehler markieren
- Ändern Sie alle in Großbuchstaben
- Ändern Sie alle in Kleinbuchstaben
- Markieren Sie alle kommentierten Zellen
- Markieren Sie alle leeren Zellen
- Alle Blätter außer einem Blatt ausblenden
- Alle Blätter einblenden
- Löschen Sie alle Dateien im Ordner
- Gesamten Ordner löschen
- Suchen Sie die zuletzt verwendete Zeile im Blatt
- Suchen Sie die zuletzt verwendete Spalte im Blatt
Sehen wir uns jedes dieser Beispiele im Detail an.
Sie können diese Excel-Vorlage für VBA-Beispiele hier herunterladen - Excel-Vorlage für VBA-Beispiele# 1 - Alle Blattnamen drucken
Code:
Sub Print_Sheet_Names () Dim i als Ganzzahl für i = 1 To Sheets.Count Cells (i, 1) .Value = Sheets (i) .Name Next i End Sub
Dadurch werden alle Blattnamen in das aktive Blatt extrahiert.
# 2 - Fügen Sie einen anderen Farbindex in VBA ein
Code:
Sub Insert_Different_Colours () Dim i As Integer Für i = 1 bis 56 Zellen (i, 1) .Value = i Zellen (i, 2) .Interior.ColorIndex = i Next End Sub
Dadurch werden Zahlen von 1 bis 56 und deren Farbindex in die nächste Spalte eingefügt.
# 3 - Seriennummer von oben einfügen
Code:
Sub Insert_Numbers_From_Top () Dim i As Integer Für i = 1 bis 10 Zellen (i, 1) .Value = i Next i End Sub
Dadurch werden Seriennummern von 1 bis 10 von oben eingefügt.
# 4 - Seriennummer von unten eingeben
Code:
Sub Insert_Numbers_From_Bottom () Dim i As Integer Für i = 20 bis 1 Schritt -1 Zellen (i, 7) .Value = i Next i End Sub
Dadurch werden Seriennummern von 1 bis 20 von unten eingefügt.
# 5 - Seriennummer von 10 bis 1 eingeben
Code:
Sub Ten_To_One () Dim i als Ganzzahl Dim j als Ganzzahl j = 10 Für i = 1 bis 10 Bereich ("A" & i) .Wert = jj = j - 1 Weiter i End Sub
Dadurch werden Seriennummern von 10 bis 1 von oben eingefügt.
# 6 - Fügen Sie Arbeitsblätter so oft ein, wie Sie möchten
Code:
Sub AddSheets () Dim ShtCount As Integer, i As Integer ShtCount = Application.InputBox ("Wie viele Blätter möchten Sie einfügen?", "Add Sheets" ,,,,, 1) Wenn ShtCount = False, dann beenden Sie Sub Else Für i = 1 zu ShtCount-Arbeitsblättern. Weiter hinzufügen i End If End Sub
Hier werden Sie aufgefordert, die Anzahl der Arbeitsblätter einzugeben, die Sie einfügen möchten. Geben Sie einfach die Nummer in das Eingabefeld ein und klicken Sie auf OK. Die vielen Blätter werden sofort eingefügt.
# 7 - Löschen Sie alle leeren Arbeitsblätter aus der Arbeitsmappe
Code:
Sub Delete_Blank_Sheets () Dim ws As Worksheet Application.DisplayAlerts = False Application.ScreenUpdating = False für jedes ws in ActiveWorkbook.Worksheets If WorksheetFunction.CountA (ws.UsedRange) = 0 Dann ws.Delete End If Next ws Application.DisplayAlerts = Application .ScreenUpdating = True End Sub
Dadurch werden alle leeren Arbeitsblätter aus der Arbeitsmappe gelöscht, an der wir arbeiten.
# 8 - Nach jeder zweiten Zeile eine leere Zeile einfügen
Code:
Sub Insert_Row_After_Every_Other_Row () Dim rng As Range Dim CountRow As Integer Dim i As Integer Set rng = Auswahl CountRow = rng.EntireRow.Count For i = 1 To CountRow ActiveCell.EntireRow.Insert ActiveCell.Offset (2, 0) .Select Next i End Sub
Dazu müssen Sie zunächst den Bereich auswählen, in den Sie alternative Leerzeilen einfügen möchten.
# 9 - Rechtschreibfehler hervorheben
Code:
Sub Chech_Spelling_Mistake () Dim MySelection als Bereich für jede MySelection in ActiveSheet.UsedRange Wenn nicht Application.CheckSpelling (Word: = MySelection.Text) Dann MySelection.Interior.Color = vbRed End If Next MySelection End Sub
Wählen Sie zunächst die Daten aus und führen Sie den VBA-Code aus. Es werden die Zellen hervorgehoben, die Rechtschreibfehler aufweisen.
# 10 - Alle in Großbuchstaben ändern
Code:
Sub Change_All_To_UPPER_Case () Dim Rng As Range für jedes Rng in Selection.Cells Wenn Rng.HasFormula = False, dann Rng.Value = UCase (Rng.Value) End If Next Rng End Sub
Wählen Sie zuerst die Daten aus und führen Sie den Code aus. Alle Textwerte werden in Großbuchstaben umgewandelt.
# 11 - Ändern Sie alle in Kleinbuchstaben
Code:
Sub Change_All_To_LOWER_Case () Dim Rng As Range für jedes Rng in Selection.Cells Wenn Rng.HasFormula = False, dann Rng.Value = LCase (Rng.Value) End If Next 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