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 60<br />
Ablaufsteuerung I<br />
✘ Die Inhalte der Zielzellen werden, wie bei manuellen Kopiervorgängen, ohne<br />
Vorwarnung überschrieben.<br />
✘ Im Unterschied zum manuellen Kopieren ist der Inhalt der Zwischenablage nach dem<br />
Einfügen leer. Mehrmalige Kopiervorgänge müssen also programmtechnisch geregelt<br />
werden.<br />
7.8 Einfügen<br />
Neben der schon oben beschriebenen Möglichkeit, Inhalte der Zwischenablage in Zellen /<br />
Zellbereiche einzufügen, ist es zusätzlich möglich <strong>mit</strong>tels der PASTE <strong>–</strong> Methode Zellen <strong>mit</strong><br />
dem Inhalt der Zwischenablage zu belegen. Die Zwischenablage sollte vorher mir CUT oder<br />
COPY einen Inhalt erhalten:<br />
ActiveSheet.Cells(1, 1).Cut<br />
ActiveSheet.Paste Destination:=Cells(1, 2)<br />
ActiveSheet.Cells(2, 1).Copy<br />
ActiveSheet.Paste Destination:=Range("B3")<br />
ActiveSheet.Cells(3, 1).Cut<br />
ActiveSheet.Paste Destination:=Worksheets("Tabelle2").Range("A4")<br />
✘ Wenn die Zwischenablage leer ist, fügt PASTE leere Zellen ein. Auf diese Weise kann in<br />
Tabellen leerer Platz geschaffen werden.<br />
7.9 ASCII <strong>–</strong> Werte / ASCII <strong>–</strong> Zeichen<br />
Jedem Zeichen des ASCII <strong>–</strong> Codes ist ein numerischer Wert zugeordnet.<br />
Dieser Wert läßt sich über die Funktion ASC er<strong>mit</strong>teln:<br />
Ausgabe = Asc("A")<br />
Der umgekehrte Weg <strong>–</strong> die Er<strong>mit</strong>tlung des zu einem numerischen Wert gehörenden ASCII <strong>–</strong><br />
Zeichens ist über die Funktion CHR möglich:<br />
ActiveCell.Value = Chr(75)<br />
belegt die aktive Zelle <strong>mit</strong> dem Buchstaben K.<br />
Beide Funktionen lassen sich kombinieren und in Funktionen und Ausdrücken benutzen:<br />
ActiveCell.Value = Chr(Asc("D") + 4)<br />
ActiveCell.Value = Chr(Asc("D") - 2)<br />
Das Ergebnis der ersten Anweisung ist ein H in der aktiven Zelle, die zweite liefert ein B in<br />
der aktiven Zelle.<br />
Beide Anweisungen werden gerne zum einfachen Verschlüsseln von Passwörtern<br />
benutzt. Das folgende Beispiel demonstriert eine sehr einfache Verschlüsselung unter<br />
Anwendung einiger bisher schon vorgestellter Elemente:<br />
Sub testen()<br />
Eingabe = "FernUni"<br />
Weite = Len(Eingabe)<br />
Ausgabe = ""<br />
For i = 1 To Weite<br />
Ausgabe = Ausgabe + Chr(Asc(Mid(Eingabe, i, 1)) + 4)<br />
Next<br />
MsgBox Eingabe & Chr(13) & Chr(13) & Ausgabe, , "Ergebnis"<br />
End Sub