Microsoft Excel

Herbers Excel/VBA-Archiv

If ... Then ... Else ... in Visual Basic ???

Betrifft: If ... Then ... Else ... in Visual Basic ??? von: Rehhirsch
Geschrieben am: 14.09.2004 14:05:13

Hi hallo, ich habe eine Excel Datei in der sehr viele Namen untereinander stehen und zwar in der Art : "Vorname Nachname" . Nun habe ich es schon geschafft ein Script zu schreiben dass diese umgedreht werden in diese Art : "Nachname Vorname" . Ja hier kommt jetzt aber ein komplizierteres Problem. In meiner Excelliste sind Namen die aus mehreren Vornamen oder anderen Bezeichnungen wie z.B. AG oder GmbH bestehen. Um es mal zu verdeutlichen :

Alter Zustand Namen Neuer Zustand Namen

SELMA FEST FEST SELMA
JOACHIM FRIESICKE FRIESICKE JOACHIM
AMT OBERKRÄMER AMT OBERKRÄMER
SPREEFLEISCH HANDELS GMBH HANDELS GMBH SPREEFLEISCH
JENS CHR. PETERSEN PETERSEN JENS CHR.
WIGOTZKI & CO WIGOTZKI & CO
JÜRGEN U. KAROLA STUMPE STUMPE JÜRGEN & KAROLA
KARL-HEINZ HUEBCHEN HUEBCHEN KARL-HEINZ

Also um es mal zu verdeutlichen, es gibt Namen die sollen nachdem das Script ausgeführt wurde nicht verändert werden wie z.B. AMT OBERKRÄMER , da es ja keinen Sinn machen würde wenn diese umgedreht werden würden. es gibt aber auch Namen wie JÜRGEN U. KAROLA STUMPE , wo im nachhinein nur der Nachname nach vorne gesetzt werden soll.

Kennt irgendjemand eine Formel oder ein Scriptbefehl durch den ich bestimmte Fälle ignorieren könnte wie z.B. aus Pascal bekannt die "If ... Then ... Else ..."-Formel???

Wäre echt nett wenn mir jemand helfen könnte!!! Danke...

MfG Rehhirsch

  


Betrifft: AW: If ... Then ... Else ... in Visual Basic ??? von: Reinhard
Geschrieben am: 14.09.2004 14:30:01

Hi ?,
If then else gibt es in vba auch.
Probier mal:
Sub tt()
For Each Zelle In Worksheets("Tabelle1").Range("A1:A100").Cells
If InStr(Zelle, "& CO") = 0 And InStr(Zelle, "AMT ") = 0 Then
    If InStrRev(Zelle, " ") Then Zelle.Value = Mid(Zelle, InStrRev(Zelle, " ") + 1) & " " _
            & Left(Zelle, InStrRev(Zelle, " ") - 1)
End If
Next Zelle
End Sub

Gruß
Reinhard


  


Betrifft: AW: If ... Then ... Else ... in Visual Basic ??? von: Christoph M
Geschrieben am: 14.09.2004 14:30:24

Hallo,
If ... Then ... Else heißt in VBA genauso

Bsp:
If Bedingung1 Then
machwas
ElseIf Bedingung2 Then
machwasanderes
Else
machnochwasanderes
End IF

vielleicht wäre im konkreten Fall aber auch "Select Case" angebracht:

Bsp:
Select Case Variable
Case 1 To 5, 7, 9
machwas
Case 6, 8
machwasanderes
Case Else
machnochwasanderes
End Select

Gruß
Christoph


  


Betrifft: AW: If ... Then ... Else ... in Visual Basic ??? von: Rehhirsch
Geschrieben am: 14.09.2004 15:07:11

Hey Danke ihr habt mir beide sehr weiter geholfen. Ich denke mal mit dieser Formel müsste ich es hinbekommen, aber ich glaube das war nicht mein letzter Beitrag... ;-)

MfG Rehhirsch