Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Mehrstellige Zahl vor Artikel
#11
Hallöchen,

Wilfried hat noch einen guten Gedanken eingebracht. Wenn garantiert oder mindestens ein Leerzeichen und eine Zahl enthalten ist, geht es einfach mit der split-Funktion in VBA.

Im Prinzip:

msgbox len(split("1234 ABC"," ")(0))

Ansonsten kann man auch mit Excel auf die regular expressions zugreifen, die waren in den letzten Tagen schon in zwei Threads ein Thema ...:

Code:
Sub test_numeric()
MsgBox CountNumbersOnLeft("0815ABC-D3")
MsgBox CountNumbersOnLeft("ABC-0815-D3")
End Sub
Function CountNumbersOnLeft(ByVal strText As String) As Integer
'Variablendeklarationen
'Objekt
Dim regEx As Object
Dim Matches As Object
'RegEx Objekt zuweisen
Set regEx = CreateObject("Vbscript.Regexp")
'Mit dem Regex
With regEx
    ' beliebige Anzahl Zahlen am Beginn der Zeichenkette suchen
    .Pattern = "^[0-9]+"
    ' nur erstes auftreten ermitteln
    .Global = False
    ' Treffer ermitteln
    Set Matches = .Execute(strText)
    ' Bei erfolgreichem Test Laenge uebernehmen
    If .test(strText) Then CountNumbersOnLeft = Matches(0).Length
'Ende Mit dem Regex
End With
End Function
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#12
Hallo!

Kein Leerzeichen zwischen Text und Leerzeichen zwischen Text.
Dann so!

Tabelle2

AB
1456789hjk6
2123 bnm3
Formeln der Tabelle
ZelleFormel
B1=LÄNGE(VERWEIS(9^9;--LINKS(9&A1;SPALTE(1:1))))-1

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

Gruß
Wilfried
Antworten Top
#13
Hallo,
eine einfache Methode einschließlich Berücksichtigung führender Nullen:

Code:
Sub Ziffernanzahl()
Dim i As Integer
While IsNumeric(Mid(Trim(Cells(1, 1)), i + 1, 1))
i = i + 1
Wend
Debug.Print "Ziffern: " & i
End Sub
Antworten Top
#14
Hallöchen,

siehe dazu auch dieser Thread mit der Möglichkeit, Formeln im VBA anzuwenden. Der Fragesteller sotaros hat sich dabei auf die von Wilfried eingestellte Excelformel bezogen.

http://www.clever-excel-forum.de/thread-...ml#pid8360
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#15
Hallo,

kürzester Weg der Berechnung der Mehrstelligkeit einschließlich führender Nullen:

Code:
Debug.Print Len(CStr(Val("1" & Cells(1, 1)))) - 1

(In diesem Codebeispiel steht die Zahl in Zelle A1)
[-] Folgende(r) 3 Nutzer sagen Danke an ratrad für diesen Beitrag:
  • atilla, Kuwer, SonjaFido
Antworten Top
#16
Hallo,

schöne einfache und effektive Idee.
Muss man sich merken. Danke für Deinen Beitrag.
Gruß Atilla
Antworten Top
#17
Hallo ratrad,

das ist mir jetzt aber doch viel zu banal!! :21:
















































:05: Thumps_up

Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste