30.09.2013 Aufrufe

VBA – Programmierung mit Excel Grundlagen

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Seite 78<br />

Manipulation von Zellen und Zellbereichen<br />

✘ Die Funktionskombination EINFÜGEN / NAMEN / FESTLEGEN / LÖSCHEN der <strong>Excel</strong> <strong>–</strong><br />

Oberfläche kann ebenfalls zu Löschen benutzt werden.<br />

10.7 Suchen von Zellinhalten<br />

Das Suchen nach bestimmten Zellen oder Zellbereichen ist oft nur über das Suchen nach<br />

bestimmten Inhalten der Zellen zu bewerkstelligen. Im <strong>VBA</strong> sind dafür mehrere für ein RANGE<br />

<strong>–</strong> Objekt definierte Methoden vorhanden, von denen zwei hier vorgestellt werden.<br />

Die beiden vorgestellten Methoden besitzen eine Vielzahl von recht komplexen Argumenten,<br />

auf die hier nicht näher eingegangen wird <strong>–</strong> näheres siehe Online <strong>–</strong> Hilfe.<br />

Die nachfolgenden Beispiele demonstrieren die einfachste Suche und das Ersetzen von<br />

Zelleninhalten.<br />

FIND Sucht eine Bereich nach Informationen durch und gibt im Erfolgsfall<br />

eine Range <strong>–</strong> Objekt zurück.<br />

REPLACE Sucht und ersetzt Zelleninhalte<br />

➨ Find gibt ein Range <strong>–</strong> Objekt zurück, welches anschließend ausgewertet werden muß.<br />

<br />

Wert1 = Range("B1:D5").Find("Summe:").Value<br />

MsgBox Wert1<br />

<br />

Wert1 = Range("B1:D5").Find("Summe:").Address<br />

Range(Wert1).Value = 2222<br />

<br />

Range("B1:D5").Replace "Summe2:", 2222<br />

Range("B1:D5").Find("Summe:").Interior.Pattern = 2<br />

Im ersten Beispiel wird im Bereich B1:D5 die Zelle <strong>mit</strong> dem String Summe: gesucht und ihr<br />

Inhalt (Value) in die Variable Wert1, die per MsgBox ausgegeben wird, übertragen.<br />

Im zweiten Beispiel wird die Adresse der Zelle <strong>mit</strong> dem String Summe: er<strong>mit</strong>telt und der<br />

Variablen Wert1 zugewiesen. Diese wird anschließend für die Zuweisung eines neuen<br />

Wertes an die Zelle benutzt.<br />

Die erste Anweisung der dritten Beispielgruppe erledigt die im Beispiel 2 in zwei<br />

Anweisungen ausgeführte Wertänderung in einer Anweisung.<br />

Die zweite Anweisung weist der Zelle <strong>mit</strong> dem gesuchten Inhalt ein Hintergrundmuster zu.<br />

10.8 Suchen von Zelleninhalten über Schleifen<br />

Die Suche nach Zelleninhalten, die in mehreren Zellen auftreten können ist am einfachsten<br />

über EACH <strong>–</strong> Schleifen möglich. Dabei können die Größer- / Kleiner <strong>–</strong> Operatoren, das<br />

Gleichheitszeichen oder der LIKE <strong>–</strong> Operator benutzt werden.<br />

Die Suche über Schleifen hat noch einen zusätzlichen Vorteil <strong>–</strong> es ist möglich nicht nur nach<br />

Zellinhalten zu suchen, sondern auch nach Formatelementen (Näheres zu diesen Elementen<br />

<strong>–</strong>siehe Folgekapitel).<br />

Für die Suche nach Zelleninhalten wird die Eigenschaft VALUE benutzt. Dabei ist zu<br />

beachten, daß die Inhalte unterschiedlich sein können <strong>–</strong> numerisch, alphanumerisch oder<br />

aus Formeln bestehend. Entsprechend muß in den Suchkonstrukten reagiert werden, um<br />

nicht unnötige Fehlermeldungen zu erzeugen.<br />

Die Anweisungen des folgenden Beispiels sollen die Suche nach numerischen Werten<br />

demonstrieren, die ein bestimmtes Kriterium erfüllen (> 20). Im Positivfall soll der<br />

Zellenhintergrund farblich abgesetzt werden:

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!