Microsoft Excel

Herbers Excel/VBA-Archiv

UDF, Minuszeichen vor Zahl auswerten

Betrifft: UDF, Minuszeichen vor Zahl auswerten von: Peter
Geschrieben am: 06.08.2007 14:02:35

Guten Tag
Die Funktion ErsteZahl liefert mir die Stelle in einem String, wo erstmals eine Zahl vorkommt
=ErsteZahl(abc1) ergibt zum Beispiel 4

Nun wollte ich die Funktion ergänzen, dass ein allfälliges Minuszeichen auch als "Beginn" einer Zahl berücksichtigt wird. Doch If Mid(Wert, ErsteZahl, 1) = "-" Then ErsteZahl = ErsteZahl - 1
funktioniert nicht.
- wie muss die Ergänzung lauten (unter Berücksichtigung, dass das Nichtvorhandensein einer Zahl resp. eines Minuszeichens nicht die Rückgabe einer Fehlermeldung ergibt?

Danke für eine Rückmeldung
Peter

Function ErsteZahl(Wert As String) As Integer

Dim iStelle  As Integer

   For iStelle = 1 To Len(Wert)
      If IsNumeric(Mid(Wert, iStelle, 1)) Then
         ErsteZahl = iStelle
         Exit For
      End If
   Next iStelle
 
  If Mid(Wert, ErsteZahl, 1) = "-" Then ErsteZahl = ErsteZahl - 1
   
   
End Function


  

Betrifft: AW: UDF, Minuszeichen vor Zahl auswerten von: ede
Geschrieben am: 06.08.2007 14:05:18

hallo peter,
dann solltest du auch eine stelle vor der ersten zahl auf "-" prüfen!
gruss


  

Betrifft: AW: UDF, Minuszeichen vor Zahl auswerten von: Rudi Maintaire
Geschrieben am: 06.08.2007 14:15:43

Hallo,

Function ErsteZahl(Wert As String) As Integer
 
 Dim iStelle  As Integer
 
    For iStelle = 1 To Len(Wert)
       If IsNumeric(Mid(Wert, iStelle, 1)) Then
          ErsteZahl = iStelle
          Exit For
       End If
    Next iStelle
  ErsteZahl = ErsteZahl + (Mid(Wert, ErsteZahl - 1, 1) = "-")
 End Function


Gruß
Rudi

Eine Kuh macht Muh, viele Kühe machen Mühe


  

Betrifft: AW: Vielen Dank! owT von: Peter
Geschrieben am: 06.08.2007 14:24:42




 

Beiträge aus den Excel-Beispielen zum Thema "UDF, Minuszeichen vor Zahl auswerten"