Microsoft Excel

Herbers Excel/VBA-Archiv

VBA Namen umdrehen-Ausnahmen ausgliedern

Betrifft: VBA Namen umdrehen-Ausnahmen ausgliedern von: Rehhirsch
Geschrieben am: 16.09.2004 13:41:46

Hey ihrs...hab ma wieder ein Problem! Also ich habe ja nun eine Formel mit deren Hilfe ich alle Zeilen einer Spalte durchgehe und die Namen umdrehe, von "Vorname Nachname" nach "Nachname Vorname", auch wenn der Name aus bis zu 3 Vornamen besteht.

Range("B:B").Select
Selection.FormulaR1C1 = "=TRIM(IF(RC[18]="""",(IF(RC[17]="""",RC[16]&"" ""&RC[15],RC[17]&"" ""&RC[15]&"" ""&RC[16])),CONCATENATE(RC[18],"" "",RC[15],"" "",RC[16],"" "",RC[17])))"

Nun habe ich aber das Problem, das innerhalb der Spalte auch Namen oder manchmal auch Zahlen sind, die nicht umgeändert werden dürfen. Kann mir bitte jemand eine Formel sagen, mit der ich die Ausnahmen behandeln kann, am besten eine die ich vielseitig anwenden kann, also wo ich auch ohne Problem eine Ausnahme hinzufügen kann?! Bitte...

Ich habe mir das so vorgestellt, das die Formel praktisch überprüft ob in der jeweiligen Zeile eine Ausnahme steckt und wenn nicht sie die Tauschformel von oben anwendet. Wenn einer eine bessere Idee hat, ich bin für alle Ratschläge offen!

MfG Rehhirsch

  


Betrifft: AW: VBA Namen umdrehen-Ausnahmen ausgliedern von: andre
Geschrieben am: 18.09.2004 21:58:54

Hallo Reh,
wenn Du eine Ausnahmeregel brauchst dann ist die Frage wann. Die Formel wird ja von einem Makro eingetragen. Wenn Du nicht willst, dass die Formel eingetragen wird, dann musst Du jede Zeile einzeln durchgehen und prüfen. Jetzt klatschst Du die Spalte ja mit einem mal zu.
For i=1 to 65536
if cells(i,1)<>"nicht doch" then 'wenn in Ai nicht doch steht dann nicht
Range("B:B").FormulaR1C1 ..... 'kannst die beiden Zeilen zu einer zusammenfassen ohne Select...
end if
Next
Wenn Du in der Formel eine Bedingung haben willst dann zeichne die Eingabe der Formel =wen(.....) im Blatt wieder auf, und nimm diese Lösung.