Vergleich: VBA und ABAP: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Pwania (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Pwania (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
[[Category:vba-wiki]] | |||
== Unterschiedliche Syntax / Ansätze == | == Unterschiedliche Syntax / Ansätze == | ||
Aktuelle Version vom 28. Januar 2023, 00:32 Uhr
Unterschiedliche Syntax / Ansätze
Quelle für ABAP Beispiele: Help Portal: ABAP Programmierung (BC-ABA)
ABAP | VBA | |
---|---|---|
Kommentare | Kommentare werden mit '*' angeführt und abgeschlossen:
* WRITTEN BY KARL BYTE, 06/27/1995 * |
Kommentare werden mit einem Hochkomma angefangen und gelten bis zum Zeilenende: ' Written by Karl Byte, 06/27/1995 MsgBox "Hallo!" ' Meldung zur Begrüßung |
Klartext | Klartext wird in Hochkommas eingeschlossen: WRITE 'Erstes Programm'. | Klartext wird in Anführungszeichen eingeschlossen: Debug.Print "Erstes Programm" |
Befehle | Einzelne Befehle werden mit einem Punkt abgeschlossen: WRITE 'Erstes Programm'. | Jeder Befehl steht in einer eigenen Zeile: Debug.Print "Erstes Programm" |
Einzelne Befehle können aneinander gekettet oder auseinandergezogen werden: PROGRAM test. WRITE 'Dies ist eine Anweisung'. PROGRAM test. WRITE 'Dies ist eine Anweisung'. PROGRAM test. WRITE 'Dies ist eine Anweisung'. | Einzelne Befehle können mehrzeilig dargestellt werden. Hierzu wird der Unterstrich '_' verwendet (nicht innerhalb einer Zeichenkette verwenden und immer ein Leerzeichen voranstellen): MsgBox _ "Erstes Programm" Mehrere Befehle können mithilfe des Doppelpunktes ':' in einer Zeile aneinander gekettet werden: MsgBox "Huhu": MsgBox "Hallo!" | |
Prozeduren | Unterprogramm FORM ProzedurName. ... ENDFORM. | Sub-Prozedur Sub ProzedurName() ... End Sub |
Funktionsbausteine | Funktionsbausteine können nicht mit den VBA-Funktionen verglichen werden. Sie werden mit dem Function Builder erstellt. |
-- Keine Entsprechung -- |
Methoden | Methoden werden in Klassen verwendet und entsprechen den VBA-Methoden, wobei diese in VBA keine speziellen Prozeduren sind. | Methoden sind Sub-Prozeduren und müssen nicht zwingend in Klassen definiert werden. |
Funktionen | -- Keine Entsprechung? -- | Funktionen sind spezielle Prozeduren, welche einen (errechneten, ermittelten, ...) Wert zurückgeben. Function Tomorrow() As Date ' hier ist Date der Datentyp für Datumsangaben Tomorrow = Date + 1 ' hier wird die 'Date'-Funktion verwendet, um das aktuelle Datum abzurufen End Function |
Zuweisung von Werten | ABAP bietet zwei Wege an, Werte zuzuweisen: MOVE source TO destination. destination = source. | In VBA kann man ausschließlich mit '=' einen neuen Wert zuweisen: destination = source lngValue = 3 |
Vergleichsoperatoren | =, <>, <, >, <=, >= bzw. EQ, NE, LT, GT, LE, GE | =, <>, <, >, <=, >= |
Spezieller Vergleich von Texten | CO, CN, CA,NA, CS, NS, CP, NP | Siehe 'Like'-Operator. |
If-Abfrage | IF ... ... ELSEIF ... ELSE ... ENDIF. | If ... Then ... ElseIf ... Else ... End If |
(Select-)Case-Anweisung | CASE ... WHEN ... ... WHEN ... ... ENDCASE. | Select Case ... Case ... ... Case ... ... End Select |
X-Mal-Wiederholungen | DO 5 TIMES. ... ENDDO. | Siehe For-Schleifen For lngIndex = 1 To 5 .... Next |
Wiederholen solange ... | WHILE ... ... ENDWHILE. | Siehe Do-Schleifen, While-Schleifen Do While ... ... Loop bzw. While ... ... Wend |
Wiederholen bis ... | DO. .... IF ... EXIT. ENDIF. ... ENDDO. | Siehe Do-Schleifen Do ... If ... Then Exit Do End If ... Loop |
Vokabeltrainer
ABAP | VBA | |
---|---|---|
Ausgabe in Konsole / Direktfenster | WRITE 'Meldung in Konsole'. | Debug.Print "Meldung in Direktfenster" |