Erstellen von Makros von Grund auf neu
Hier ist ein Beispiel für die Erstellung eines macro von Grund auf, das einfache Schritte in einem Arbeitsblatt aufzeichnet, sie durch Hinzufügen von Zellenformatierungen bearbeitet und die Ergebnisse der Gehaltsberechnung mit Message Box anzeigt.
1. Aufzeichnen von Makros
In dieser Phase werden wir die Schritte zur Eingabe der Zahlen und zur automatischen Berechnung des Gehalts aufzeichnen:
- Geben Sie die Lohnnummer in Zelle A1 ein.
- Geben Sie die Anzahl der Stunden in Zelle A2 ein.
- Fügen Sie die Ergebnisse in Zelle A3 ein, um das Gehalt zu berechnen.
2. Makros bearbeiten
Nachdem Sie diese grundlegenden Schritte aufgezeichnet haben, können Sie Visual Basic Editor (VBE) öffnen und Code hinzufügen:
- Formatieren Sie einen Zellbereich mit font und interior Eigenschaften (z. B. den Text fett formatieren und ihm eine Hintergrundfarbe zuweisen).
- Es wurde eine Message Box hinzugefügt, um die Ergebnisse der Lohn- und Gehaltsabrechnung anzuzeigen.
Einfaches Makrobeispiel: Berechnen des Gehalts und Formatieren von Zellen.
Sub Calculate_Salary()
Dim wage As Single
Dim hours As Single
Dim salary As Single
wage = Range(“A1”).Value
hours = Range(“A2”).Value
salary = wage * hours
MsgBox “Your salary is “ & salary, vbInformation, “Salary Calculation”
Range(“A3”).Value = salary
With Range(“A1:A3”)
.Font.Bold = True
.Interior.Color = RGB(144, 238, 144) ' Latar belakang hijau muda
End With
End Sub
Erklärung des Codes:
- Dim wage As Single: Dies ist eine wage Variablendeklaration (Lohn) mit dem Datentyp Single.
- Dim hours As Single: Dies ist eine Variablendeklaration hours (Arbeitsstunden) mit einem Single Datentyp.
- salary = wage hours: Hier wird das Gesamtgehalt berechnet, indem die Löhne und geleisteten Arbeitsstunden multipliziert werden.
- MsgBox: Die Ergebnisse der Gehaltsberechnung werden über das Nachrichtenfeld (Message Box) angezeigt.
- Range(“A3”).Value = salary: Die Ergebnisse der Gehaltsberechnung werden in der Zelle A3 gespeichert.
- With Range(“A1:A3”): Zellen, die durch A3 A1, werden mit fettem Text und einem hellgrünen Hintergrund formatiert (RGB(14444, 238, 144)).
Erwartete Ergebnisse:
- Sie geben den Wert der Löhne in A1 und der geleisteten Arbeitsstunden in A2 ein.
- Wenn der macro ausgeführt wird, wird das Gehalt automatisch berechnet und in der A3 Zelle angezeigt.
- Die Gehaltsergebnisse werden auch im Message Box angezeigt.
- Zellen, die durch A3 A1, werden mit fettem Text und einer hellgrünen Hintergrundfarbe formatiert.
Verwenden von For…Next Loop in Makros
Durch die Nutzung der For…Next Loop-Struktur können Sie das Füllen von Zellen in Excel-Arbeitsblättern mit bestimmten Daten automatisieren. For…Next Loop ermöglicht es Ihnen, Zeilen oder Spalten innerhalb eines bestimmten Bereichs zu durchlaufen, was es sehr effektiv für sich wiederholende Aufgaben beim Ausfüllen von Daten macht.
Beispiel: Füllen eines Zellbereichs mit Zeilen- und Spaltensummenergebnissen
Im Folgenden finden Sie ein Beispiel für eine macro, die For…Next Loop verwendet, um den Zellbereich A1:E10 mit dem Wert zu füllen, der durch die Summe zwischen der Zeilennummer und der Spaltennummer generiert wird.
Sub Fill_Cells_With_Loop()
Dim i As Integer, j As Integer
For i = 1 To 10
For j = 1 To 5
Cells(i, j).Value = i + j
Next j
Next i
With Range(“A1:E10”)
.Font.Bold = True
.Interior.Color = RGB(224, 255, 255)
End With
End Sub
Erklärung des Codes:
- For i = 1 To 10: Die erste Schleife für die Iteration durch Zeilen von 1 bis 10 (Zeilen 1 bis 10).
- For j = 1 To 5: Die zweite Schleife für Iterationen durch Spalten von 1 bis 5 (Spalten A bis E).
- Cells(i, j).Value = i + j: Füllen Sie die Zelle mit dem Summenergebnis zwischen der Zeilennummer (i) und der Spaltennummer (j).
- With Range(“A1:E10”): Formatieren Sie die Zellen A1 bis E10 mit fettem Text und hellblauem Hintergrund.