Mit UDF-Einsatz wäre das kein Problem und ...
06.10.2017 02:31:39
Luc:-?
…die Fml überschaubar kurz, Tommi,
egal wieviel reine (auch leerzeichen-getrennte) Texte da noch zwischengeschoben sind. Diese Texte dürfen nur ihrerseits nicht wieder Ziffern enthalten, die irrelevant sein sollen. D.h., es muss letztlich die ursprünglich von dir gezeigte Struktur herauskommen können. Wären das dann immer konstant 3 (leerzeichen-getrennte) ZiffernBlöcke, käme folgende (plurale) MatrixFml (über 2 Zellen) zum Einsatz:
{=Splint(MaskOn(A1;"num");;2;3)}
Ist das nicht der Fall und die Anzahl der ZiffernBlöcke kann mal 2, 3 oder mehr betragen, aber es sollen stets die beiden letzten ausgewählt wdn, sähe die MatrixFml so aus:
{=Splint(MaskOn(A1;"num");;CountOn(MaskOn(A1;"num");" "))}
Die Pgmm der verwendeten UDFs sind hier zu finden:
CountOn (Vs1.1) https://www.herber.de/forum/archiv/732to736/732035_Zaehlennwenn_mit_Zahlenkombinationen.html#734566
MaskOn (Vs2.1) https://www.herber.de/cgi-bin/callthread.pl?index=1344962#1345181
Splint (Vs1.1) https://www.herber.de/forum/archiv/864to868/865813_Texte_per_VBA_in_einzelne_Teile_aufteilen.html#865877
Für die 2.Fml-Variante wird allerdings Vs1.2 von Splint benötigt:
Rem Bildet aus Einzeltexten Teiltextfelder von
bis
Posit (lfdElemNr) im Text
' m.d.Möglichk, nur d.Endposition durch d.real letzte Element zu ersetzen.
' Vs1.2a -LSr.CyWorXxl -CDate:20070427 -1Pub:h20070428(1.1) -LUpd:20080109n
Function Splint(Text, Optional Trenner As String = " ", Optional ByVal AnfPos As Integer, _
Optional ByVal EndPos As Integer, Optional ByVal LetztEnd As Boolean)
Dim i As Long, j As Long, l As Long, m As Long, TxtVkt, x, y() As String
If AnfPos = 0 And EndPos = 0 Then Splint = Split(Text, Trenner): Exit Function
If InStr(Text, Trenner) = 0 Then
Else: TxtVkt = Split(Text, Trenner): m = UBound(TxtVkt) + 1 - LBound(TxtVkt)
End If
If AnfPos = 0 Then AnfPos = 1
If EndPos = 0 Then EndPos = m
l = EndPos - AnfPos: If l = AnfPos And i l) Then y(l) = x: Exit For
Next x
Splint = y
End Function
Feedback nicht unerwünscht! Gruß, Luc :-?
Besser informiert mit …