OPTION BASE 1 DIM i AS INTEGER DIM Phrase AS STRING DIM Tableau(10) AS STRING DIM Num AS INTEGER DIM OldNum AS INTEGER DIM PhraseLen AS INTEGER DIM Count AS INTEGER DIM Separateur AS STRING Separateur = " " Num = 0 OldNum = 1 Count = 1 Phrase$ = "Je suis nul en QBasic" CLS DO Num = INSTR(Num + 1, Phrase$, Separateur) PhraseLen = Num - OldNum IF Num > 0 THEN Tableau$(Count) = MID$(Phrase$, OldNum, PhraseLen) ELSE Tableau$(Count) = MID$(Phrase$, OldNum) END IF Count = Count + 1 OldNum = Num + 1 LOOP UNTIL Num = 0 FOR i = 1 TO UBOUND(Tableau$) PRINT Tableau$(i) NEXT
Cette variable est globale
Dim Shared MaVariable
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionReDim sOut(1) nC = 1
' ' Après quelque bidouille, sa marche au top ' Public Function Split(ByVal Chaine As String, _ Optional Cherche As String) As Variant Dim T1 As Variant Dim Ctr As Integer Dim X As Integer Dim Pos As Integer Dim Tableau() As Variant If Cherche "" Then Split Chaine: Exit Function ReDim Tableau(1) X Len(Cherche): T1 Chaine: Ctr = 0: Pos = 1 Do Pos = InStr(T1, Cherche) If Pos = 0 Then If Len(T1) = 0 Then Exit Do Ctr Ctr + 1: Tableau(Ctr) T1 Exit Do Else Ctr Ctr + 1: Tableau(Ctr) Left(T1, Pos - 1) End If T1 = Mid(T1, Pos + X) ReDim Preserve Tableau(Ctr + 1) Loop ReDim Preserve Tableau(Ctr) Fin: Split = Tableau End Function
Public Function Split(ByVal sIn As String, Optional sDelim As _ String, Optional nLimit As Long = -1, Optional bCompare As _ VbCompareMethod = vbBinaryCompare) As Variant Dim sRead As String, sOut() As String, nC As Integer If sDelim = "" Then Split = sIn End If sRead = ReadUntil(sIn, sDelim, bCompare) Do ReDim Preserve sOut(nC) sOut(nC) = sRead nC = nC + 1 If nLimit <> -1 And nC >= nLimit Then Exit Do sRead = ReadUntil(sIn, sDelim) Loop While Len(sIn) <> 0 ''My Change Over here ReDim Preserve sOut(nC) sOut(nC) = sIn Split = sOut End Function
' ' Supprime une Chaine de caractère et/ou/ remplace par une autre Chaine ' Function SuprimeCHR(Chaine As String, _ Cherche As String, _ Optional Remplace As String) Dim Pos As Long Dim I As Long If Cherche "" Then Cherche Chr(34) For I = 0 To Len(Chaine) Pos = InStr(1, Chaine, Find) If Pos <> 0 Then Chaine = Mid(Chaine, 1, Pos - 1) & Remplace & Mid(Chaine, Pos + Len(Cherche)) End If Next I SuprimeCHR = Chaine End Function
Dim Tableau as variant Redim Tableau(1) ' le code ... ReDim Preserve Tableau(Compteur+1) ' fin de code
Dim Tableau as variant Redim Tableau(50) ' le code ... If Compteur Mod 50 = 0 Then ReDim Preserve Tableau(Compteur + 50) ' ... ' ... Fin: ReDim Preserve Tableau(Compteur) Split = Tableau ' fin de code
private function split(byval c As string, s as string) as variant ou = 0 redim tata((len(c) \ len(s)) + 1) as string do while c <> "" pos = instr(c, s) if pos > 0 then tata(ou) = left(c, pos - 1) ou = ou + 1 c = mid(c, pos + len(s)) else tata(ou) = c exit do end if loop redim preserve tata(ou) split = tata end function
redim tata((len(c) \ len(s)) + 1) as string