VBA + Excel
VBA-Code-Beispiele
AutoMacro: VBA-Add-in mit Hunderten von einsatzbereiten VBA-Code-Beispielen und viel mehr!
Suchen Sie in der folgenden Liste nach kostenlosen Excel-VBA-Code-Beispielen mit Erklärungen.
Einige enthalten auch als Dateien zum Herunterladen. Diese Excel-VBA-Makros und -Skripte sind professionell entwickelt und sofort einsatzbereit.
Wir hoffen, dass Sie diese Liste nützlich finden!
Excel-Makro-Beispiele
Sie finden unten eine Liste mit grundlegenden Makro-Beispielen für gängige Excel-Automatisierungsaufgaben.
Eine Zeile aus einem Blatt kopieren und in ein anderes einfügen
Dieses sehr einfache Makro kopiert eine Zeile aus einem Blatt und fügt sie in ein anderes ein.
Sub Eine_Zeile_Einfuegen()
'Zeile kopieren und einfügen
Sheets("Tabelle1").Range("1:1").Copy Sheets("Tabelle2").Range("1:1")
Application.CutCopyMode = False
End Sub
E-Mail versenden
Dieses nützliche Makro startet Outlook, verfasst eine E-Mail und hängt die aktuelle Arbeitsmappe an.
Sub Mail_Versenden()
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.to = "test@test.com"
.Subject = "Test Email"
.Body = "Nachricht"
.Attachments.Add ActiveWorkbook.FullName
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
Alle Blätter einer Arbeitsmappe auflisten
Dieses Makro listet alle Blätter einer Arbeitsmappe auf.
Sub BlaetterAuflisten()
Dim ws As Worksheet
Dim x As Integer
x = 1
ActiveSheet.Range("A:A").Clear
For Each ws In Worksheets
ActiveSheet.Cells(x, 1) = ws.Name
x = x + 1
Next ws
End Sub
Alle Arbeitsblätter einblenden
Dieses Makro blendet alle Arbeitsblätter ein.
'Alle Arbeitsblätter einblenden
Sub AlleArbeitsblaetterEinblenden()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Visible = xlSheetVisible
Next ws
End Sub
Alle Arbeitsblätter außer dem aktuellen Blatt (ActiveSheet) ausblenden
Dieses Makro blendet alle Arbeitsblätter mit Ausnahme des aktuellen Blattes aus.
'Alle Arbeitsblätter außer dem aktuellen ausblenden
Sub AlleAusserDemAktuellenAusblenden()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> ActiveSheet.Name Then ws.Visible = xlSheetHidden
Next ws
End Sub
Den Schutz bei allen Arbeitsblättern aufheben
Dieses Makro-Beispiel hebt den Schutz für alle Arbeitsblätter in einer Arbeitsmappe auf.
'Den Schutz bei allen Arbeitsblättern aufhebe
Sub SchutzBeiAllenAufheben()
Dim ws As Worksheet
For Each ws In Worksheets
ws.Unprotect "passwort"
Next ws
End Sub
Alle Arbeitsblätter schützen
Dieses Makro schützt alle Arbeitsblätter in einer Arbeitsmappe.
'Alle Arbeitsblätter schützen
Sub AlleBlaetterSchuetzen()
Dim ws As Worksheet
For Each ws In Worksheets
ws.protect "passwort"
Next ws
End Sub
Alle Formen löschen
Dieses Makro löscht alle Formen in einem Arbeitsblatt.
Sub AlleFormenLoeschen()
Dim meineForm As Shape
For Each meineForm In ActiveSheet.Shapes
meineForm.Delete
Next
End Sub
Alle leeren Zeilen in einem Arbeitsblatt löschen
Dieses Beispiel-Makro löscht alle leeren Zeilen in einem Arbeitsblatt.
Sub LeereZeilenLoeschen()
Dim x As Long
With ActiveSheet
For x = .Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
If WorksheetFunction.CountA(.Rows(x)) = 0 Then
ActiveSheet.Rows(x).Delete
End If
Next
End With
End Sub
Doppelte Werte in einer Auswahl hervorheben
Verwenden Sie dieses einfache Makro, um alle doppelten Werte in einer Auswahl hervorzuheben.
'Doppelte Werte in einer Auswahl hervorheben
Sub DoppelteWerteHervorheben()
Dim meinBereich As Range
Dim Zelle As Range
Set meinBereich = Selection
For Each Zelle In meinBereich
If WorksheetFunction.CountIf(meinBereich, Zelle.Value) > 1 Then
Zelle.Interior.ColorIndex = 36
End If
Next Zelle
End Sub
Negative Zahlen hervorheben
Dieses Makro automatisiert das Hervorheben negativer Zahlen.
'Negative Zahlen hervorheben
Sub NegativeZahlenHervorheben()
Dim meinBereich As Range
Dim Zelle As Range
Set meinBereich = Selection
For Each Zelle In meinBereich
If Zelle.Value < 0 Then
Zelle.Interior.ColorIndex = 36
End If
Next Zelle
End Sub
Abwechselnde Zeilen hervorheben
Dieses Makro ist dafür nützlich, abwechselnde Zeilen hervorzuheben.
'Abwechselnde Zeilen hervorheben
Sub AbwechselndeZeilenHervorheben()
Dim Zelle As Range
Dim meinBereich As Range
meinBereich = Selection
For Each Zelle In meinBereich.Rows
If Zelle.Row Mod 2 = 1 Then
Zelle.Interior.ColorIndex = 36
End If
Next Zelle
End Sub
Leere Zellen in einer Auswahl hervorheben
Dieses einfache Makro hebt leere Zellen in einer Auswahl hervor.
'Alle leeren Zellen in einer Auswahl hervorheben
Sub LeereZellenHervorheben()
Dim bereich As Range
Set bereich = Selection
bereich.SpecialCells(xlCellTypeBlanks).Interior.Color = vbCyan
End Sub
Beispiele für Excel-VBA-Makros – Kostenloser Download
Wir haben ein kostenloses Add-In für VBA-Code-Beispiele (Makros) erstellt. Das Add-in enthält über 100 einsatzbereite Makro-Beispiele, darunter auch die obigen Beispiele!
FAQs zu Excel-Makros / VBA
Wie schreibt man VBA-Code (Makros) in Excel?
Um VBA-Code in Excel zu schreiben, öffnen Sie den VBA-Editor (ALT + F11). Geben Sie „Sub HalloWelt“ ein, drücken Sie die Eingabetaste und schon haben Sie ein Makro erstellt! ODER Kopieren Sie eine der auf dieser Seite aufgeführten Prozeduren und fügen Sie sie in das Code-Fenster ein.
Was ist Excel VBA?
VBA ist die Programmiersprache, die zur Automatisierung von Excel verwendet wird.
Wie kann man VBA zur Automatisierung von Excel verwenden?
Sie verwenden VBA zum Automatisieren von Excel, indem Sie Makros erstellen. Makros sind Code-Blöcke, die bestimmte Aufgaben erledigen.
Üben Sie VBA
Sie können VBA anhand unseres interaktiven VBA-tutorials üben.