Autor
|
Thema: String zerlegen (1085 mal gelesen)
|
M.Philipp Mitglied Konstruktionsingenieur
![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für M.Philipp](/foren/ubb/pmimages/gbu.gif) Beiträge: 14 Registriert: 18.09.2014
|
erstellt am: 12. Mai. 2015 14:16 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
Hallo zusammen, ich suche eine Möglichkeit in meinem VBA Programm einen String in mehrere Single zu zerlegen: Beispiel String: "Ro ø25x3,5*395 fix" herauskommen soll Single1 = 25 Single2 = 3,5 Single3 = 395 Ich kriegs einfach nicht hin. Bitte helft mir. Oder wenigstens wie schmeiße ich alle Buchstaben und Sonderzeichen aus dem String außer x * und , Danke im Voraus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RSchulz Ehrenmitglied V.I.P. h.c. Head of CAD, Content & Collaboration / IT-Manager
![](/foren/avatars/RSchulz.gif)
![Schreiben Sie einen Gästebucheintrag für RSchulz](/foren/ubb/pmimages/gbu.gif) Beiträge: 5541 Registriert: 12.04.2007 @Work Lenovo P510 Xeon E5-1630v4 64GB DDR4 Quadro P2000 256GB PCIe SSD 512GB SSD SmarTeam V5-6 R2016 Sp04 CATIA V5-6 R2016 Sp05 E3.Series V2019 Altium Designer/Concord 19 Win 10 Pro x64
|
erstellt am: 12. Mai. 2015 17:20 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für M.Philipp
Hallo Phillip, ich habe dir mal ein Bespiel zusammen geschrieben ![](/foren/ubb/zwinker.gif) Code:
Sub CATMain() Dim str1 As String Dim str2() As String Dim str3 As Variant Dim i As Integer str1 = "Ro ø25x3,5*395 fix" str2 = GetNumbersSplittedUp(str1) i = 1 For Each str3 In str2 MsgBox ("Wert" & i & ": " & str3) i = i + 1 Next End Sub Function GetNumbersSplittedUp(strText As String) As String() Dim i As Integer Dim j As Integer Dim strTemp As String Dim strtemp2 As String Dim strRet() As String j = 0 For i = 0 To Len(strText) strTemp = Mid(strText, i + 1, 1) If IsNumeric(strTemp) = True Or strTemp = "," Then strtemp2 = strtemp2 & strTemp Else If Len(strtemp2) > 0 Then ReDim Preserve strRet(j) strRet(j) = strtemp2 strtemp2 = "" j = j + 1 End If End If Next GetNumbersSplittedUp = strRet End Function
------------------ MFG Rick Schulz Nettiquette (CAD.de) - Was ist die Systeminfo? - Wie man Fragen richtig stellt. - Unities ![](http://www.xing.com/img/buttons/16_de_btn.gif)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
M.Philipp Mitglied Konstruktionsingenieur
![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für M.Philipp](/foren/ubb/pmimages/gbu.gif) Beiträge: 14 Registriert: 18.09.2014
|
erstellt am: 13. Mai. 2015 08:07 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif)
|
HenryV Mitglied Konstrukteur, Engineering
![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif) ![](/foren/ubb/star3.gif)
![Schreiben Sie einen Gästebucheintrag für HenryV](/foren/ubb/pmimages/gbu.gif) Beiträge: 778 Registriert: 18.05.2005 SolidWorks 2020 x64 SP3.0 Dell Precision 5820 Intel Xeon W-2125 4x4GHz NVIDIA Quadro P2000 5GB 32GB RAM 2x Dell U2412M, 24" TFT Windows 10 Enterprise x64 21H1 Microsoft Office 365 ProPlus Microsoft Visual Studio Enterprise 2022
|
erstellt am: 13. Mai. 2015 08:37 <-- editieren / zitieren --> Unities abgeben: ![1 Unity (wenig hilfreich, aber dennoch)](/foren/ubb/z1.gif) ![2 Unities](/foren/ubb/z2.gif) ![3 Unities](/foren/ubb/z3.gif) ![4 Unities](/foren/ubb/z4.gif) ![5 Unities](/foren/ubb/z5.gif) ![6 Unities](/foren/ubb/z6.gif) ![7 Unities](/foren/ubb/z7.gif) ![8 Unities](/foren/ubb/z8.gif) ![9 Unities](/foren/ubb/z9.gif) Nur für M.Philipp
Hallo zusammen Oder das selbe mit RegEx. Code: Public Sub RegEx_Test() Dim objRegEx As Object, objMatch As Object Dim strText As String Dim intIndex As Integer strText = "Ro ø25x3,5*395 fix" Set objRegEx = CreateObject("vbscript.regexp") With objRegEx .Global = True .IgnoreCase = True .MultiLine = False .Pattern = "[\d,.]+" Set objMatch = .Execute(strText) End With For intIndex = 0 To objMatch.Count - 1 Debug.Print objMatch(intIndex) Next Set objRegEx = Nothing Set objMatch = Nothing End Sub
Gruss Andreas ------------------ 21 ist nur die halbe Antwort. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |