Microsoft Excel Visual Basic-Makros leicht gemacht

February 2

Microsoft Excel enthält eine eingebaute Programmiersprache Visual Basic, die können Sie Skripts erstellen, die Aufgaben, die in Microsoft Excel integriert sind nicht genannt. Diese Skripts werden Makros bezeichnet.

Ein Weg, die Makros können geschrieben werden soll diese aufzeichnen (Developer > Makro aufzeichnen), und eine andere Möglichkeit ist die integrierte Entwicklungsumgebung Visual Basic öffnen und das Skript von hand schreiben. Schreiben von Skripts auf diese Weise können Sie das Skript auf Ihre speziellen Bedürfnisse anpassen. Aber Sie brauchen entweder Grundkenntnisse der Programmiersprache Visual Basic schreiben von Skripts oder ein vorhandenes Skript, die, das Sie in der IDE eingeben können.

Überprüfen von E-Mail-Adressen

Das folgende Skript überprüft e-Mail-Adressen, die im ersten Arbeitsblatt der Arbeitsmappe Excel-Dokument gespeichert. Geben Sie einige e-Mail-Adressen in Zellen a1 bis a5 des Arbeitsblatts. Machen einige der Adressen absichtlichen Fehler durch Auslassen das kaufmännische und-Zeichen ("bei"). Führen Sie nach der Eingabe des Skripts in diesem Artikel das Skript (Alt-F8, "Validate_Emails") um zu sehen, die falschen Adressen hervorgehoben.

Geben Sie das Skript

Um zu beginnen, das Skript eingeben, nachdem Sie sich Excel geöffnet haben, geben Sie der Visual Basic-IDE (Alt-F11). (Sie können auch kopieren und fügen Sie das Skript anstatt es Zeile für Zeile einzugeben.) Im Bereich auf der linken Seite klicken Sie den Namen Ihrer Excel-Arbeitsmappe, und wählen Sie dann einfügen-Modul. Dadurch erhalten Sie ein neues Modul in die Code-Eingabe.

In der Codeansicht des Moduls Sie gerade erstellt haben, geben Sie diese Funktionen, achten Sie auf die Groß-/Kleinschreibung der einzelnen Buchstaben entsprechen.

Sub Validate_Emails()

Dim arrEmail As Variant Dim rc As Boolean arrEmail = Range("a1:a5").Value

'Check each cell's email address, now in an array For i = 1 To UBound(arrEmail) rc = blnEmailIsOkay(arrEmail(i, 1)) If (rc = False) Then 'Highlight the cell with an invalid email address HilightCell (i) End If Next

EndSub

Public Function BlnEmailIsOkay (CellContents als Variante) As Boolean

p = InStr (1, CellContents, "bei")

Wenn (p = 0) dann

blnEmailIsOkay = False

Sonst

blnEmailIsOkay = True

EndIf

EndFunction

Public Sub HilightCell(i)R = "a" & i & ": a" & ich

Mit Range(r). Innenraum

.Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 65535 .TintAndShade = 0 .PatternTintAndShade = 0

Enden mitEndSub


Wie es funktioniert

Die "ArrEmail ="-Anweisung am Anfang des Validate_Emails kopiert die e-Mail-Adressen aus den Zellen a1 bis a5 in Arbeitsblatt 1, in ein internes Array (ArrEmail).

Die For-Schleife, die folgt dieses Arrays durchläuft und ruft eine andere Funktion, BlnEmailsIsOkay, um die Suche nach der "bei" Zeichen für e-Mail-Adressen erforderlich. Wenn BlnEmailsIsOkay das kaufmännische und-Zeichen (gibt False zurück) nicht gefunden wird, wird eine andere Funktion, HilightCell, aufgerufen, um die beanstandeten Zelle gelb malen. Die HilightCell-Funktion ist ein guter Platz zum Basteln mit und erkunden Code gestartet werden, da Sie Details wie die Farbe und andere Formatierungsoptionen ändern können, während die gesamte Funktionalität des Programms intakt. Beispielsweise versuchen Sie die Hervorhebungsfarbe von gelb nach blau oder das Muster ändern, um etwas anderes als "XlSolid." F1 drücken, während sich der Cursor befindet sich über der ". Muster "und". Eigenschaften der Farbe"bekommen Sie eine Ahnung von anderen Optionen für diese Eigenschaften.