Excel VBA: Text mit einem Makro aufbereiten

Sehr häufig werden Makros gebraucht, um einen Text nach Excel einzulesen und direkt in das entsprechende Format zu bringen. Es wird z. B. ein ganzer Text kopiert und dieser wird dann mit Hilfe eines Makros aufbereitet. Wie das funktioniert, lesen Sie hier.

Beispiel für ein Excel Marko zur Aufbereitung von Text

Dieses Beispiel zeigt Ihnen, wie so etwas aussehen könnte.

Sub Text_komplett()

‚Erstmal werden alle Aktualisierungen ausgeschaltet

With Application

    .ScreenUpdating = False

    .Calculation = xlCalculationManual

    .EnableEvents = False

End With

‚Der Text muss vor dem Start des Makros kopiert werden

    ActiveSheet.Paste

    ActiveCell.Offset(0, 1).Range(„A1“).Select

‚Der Text wird jetzt mit der Links-Funktion selektiert

    ActiveCell.FormulaR1C1 = „=+LEFT(RC[-1],FIND(„“ „“,RC[-1])-1)“

    ActiveCell.Offset(1, 0).Range(„A1“).Select

‚Der Text wird hier mit der Rechts-Funktion selektiert

    ActiveCell.FormulaR1C1 = _

        „=+RIGHT(R[-1]C[-1],LEN(R[-1]C[-1])-FIND(„“(„“,R[-1]C[-1]))“

    ActiveCell.Offset(-1, 0).Range(„A1:A2“).Select

    ActiveCell.Activate

 ‚Die selektierten Texte werden kopiert und als Wert wieder eingefügt

   Selection.Copy

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

        :=False, Transpose:=False

  ‚Jetzt werden die Texte selektiert 

    ActiveCell.Select

    Application.CutCopyMode = False

    ActiveCell.Offset(1, 0).Range(„A1“).Select

    ‚Die Texte werden kopiert

  Selection.Copy

    ActiveCell.Offset(-1, -1).Range(„A1“).Select

‚Die Texte werden an einer neuen Stelle eingefügt

    ActiveSheet.Paste

    ActiveCell.Offset(1, 1).Range(„A1“).Select

‚Die alten Texte werden gelöscht

    Selection.ClearContents

    ActiveCell.Offset(-1, 2).Range(„A1“).Select

‚Zum Schluß werden alle Aktualisierungen eingeschaltet

With Application

    .ScreenUpdating = True

    .Calculation = xlCalculationAutomatic

    .EnableEvents = True

End With

End Sub

Dieser Makro muss übrigens nicht aufwendig programmiert werden, sondern kann ganz einfach aufgezeichnet werden. Wichtig ist nur, damit das Makro flexibel bleibt, dass mit der relativen Aufzeichnung gearbeitet wird.

Bildnachweis: blanche / stock.adobe.com