Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: kommaseparierten string schnell in array einlesen

kommaseparierten string schnell in array einlesen
15.06.2004 10:08:53
PeterP
Hallo!
Hat jemand von Euch schnell ein Konstrukt parat, wie ich einen String (aus Variable, z.b. "1,a,2,b,3,c,4,d ...) schnell in ein zweidimensionales Array einlesen kann
[im Beipiel also alle Zahlen in arr(1,x) und die Buchstaben in arr(2,x)]?
Danke
Peter
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: kommaseparierten string schnell in array einlesen
NE
Hi Peter,
meinst Du so:
Option Explicit

Sub x()
Dim s$, arr1, arr2
s = "1,a,2,b,3,c,4,d"
arr1 = Split(s, ",")
ReDim arr2(UBound(arr1), 1)
For i = 0 To UBound(arr1)
If IsNumeric(arr1(i)) Then
arr2(i, 0) = arr1(i)
Else
arr2(i, 1) = arr1(i)
End If
Next
Range(Cells(1, 1), Cells(UBound(arr2) + 1, 2)) = arr2
End Sub

Gruss Nancy
Anzeige
AW: kommaseparierten string schnell in array einlesen
15.06.2004 12:59:41
PeterP
Hallo Nancy,
ich habs jetzt so gelöst:

Function chgForbidden(strIN As String) As String
'# Code by PeterP
'# führt Seach&Replace auf einen String aus und ersetzt die in strSR angegebenen Paare
'# Syntax für strSR:
'# inString1=outString1; inString2=outString2; ... (Space nach dem Semikolon beachten!)
Dim i%, j%, arrSR0() As String, arrSR() As String, strSR As String, strOUT As String
strOUT = strIN
strSR = "ä=ae; ö=oe; ü=ue; Ä=AE; Ö=OE; Ü=UE; ß=ss; \=_; /=_; :=_; *=_; ?=_; ""=_; <=_; >=_; |=_"
arrSR0 = Split(strSR, "; ")
For i = LBound(arrSR0) + 1 To UBound(arrSR0) + 1
ReDim Preserve arrSR(2, i)
arrSR(1, i) = Left(arrSR0(i - 1), InStrRev(arrSR0(i - 1), "=") - 1)
arrSR(2, i) = Mid(arrSR0(i - 1), InStrRev(arrSR0(i - 1), "=") + 1)
Next i
For j = 1 To UBound(arrSR, 2)
On Error Resume Next
strOUT = Replace(strOUT, arrSR(1, j), arrSR(2, j))
Next j
chgForbidden = strOUT
Erase arrSR0
Erase arrSR
End Function

vielen dank für die anregungen!
für tips zu verkürzungsmöglichkeiten bin ich sehr dankbar!
gruß
peter
Anzeige
AW: kommaseparierten string schnell in array einlesen
NE
Hi Peter,
hm, nur so 'ne Idee:

Function anders(s As String)
Dim i%, id%, oldS, newS
oldS = Array("ä", "ö", "ü", "ß")
newS = Array("ae", "oe", "ue", "ss")
For i = Len(s) To 1 Step -1
For id = 0 To UBound(oldS)
If InStrRev(Mid(s, i, 1), oldS(id)) Then s = Replace(s, oldS(id), newS(id))
Next
Next
End Function

Gruss Nancy
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige