Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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
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

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige