Ajouter element Array

Résolu
Guillamue06 Messages postés 157 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 juillet 2022 - 21 févr. 2012 à 09:11
 Utilisateur anonyme - 21 févr. 2012 à 18:50
Bonjour, j'essai d'ajouter des valeurs que j'ai prédéfini à un tableau :

       Dim interdit("+", "-", "=", ":", "@", " ", "#", "?", ";", "!", ",", "'", "`", """", ")", "(", "}", "{", "*", ".", "~", "/", "", "%") As String

        ' Supression des caracteres interdits
        For a As Integer = 0 To interdit.Length - 1
            donnees = donnees.Replace(interdit(a), "")
        Next a



J'ai une erreur : "Le nombre d'index est inférieur au nombre de dimensions du tableau indexé."

J'ai vue dans les exemples que l'on déclarer son table du genre :
dim montableau(24) as string

puis on ajouté les éléments manuellement :
montableau(0) = "+"
montableau(1) = "-"
montableau(2) = "="
...

Ors moi je ne veut pas inscrire 24 lignes manuellement comment faire ?

Merci

10 réponses

Utilisateur anonyme
21 févr. 2012 à 16:30
Bonjour,
essaye:
 Dim Interdit As String = "[+\-=:@ #\?;!,'`\)\(}{\*\.~/\%]" & Chr(34)
        'on peux rajouter ce qu'on veux (chr(34) correspond à un ")
        For Each Caractère In Donnees
            If InStr(Interdit, Caractère) > 0 Then Donnees = Donnees.Replace(Caractère, "")
        Next
      


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Utilisateur anonyme
21 févr. 2012 à 18:50
Salut renfield,

Je lui ai mis ce code, c'est parque j'ai cru comprendre qu'il était en VB.Net

Guill:
Un peu plus compréhensible:
Dim Interdit As String = "[+\-=:@ #\?;!,'`\)\(}{\*\.~/\%]" & Chr(34)
        'on peux rajouter ce qu'on veux (chr(34) correspond à un ")
        For Each JeanPierre As Char In Donnees
            If Interdit.Contains(JeanPierre) True Then Donnees Donnees.Replace(JeanPierre, "")
        Next



Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 févr. 2012 à 09:43
pas testé, mais je dirai :


With CreateObject("Vbscript.Regexp")
    .Global = True
    .Pattern = "[+\-=:@ #\?;!,'`""\)\(}{\*\.~/\%]"
    donnees = .Replace(donnees, vbNullString)
End With



Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 209
21 févr. 2012 à 10:03
Bonjour,
et intéresse-toi également (car je vois que tu l'ignore) à ce qu'est la borne Ubound d'un array.
Quant à cette ligne :
For a As Integer = 0 To interdit.Length - 1

Elle montre à elle seule que tu ne développes pas sous VB6 (la présente section du forum).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Guillamue06 Messages postés 157 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 juillet 2022 4
21 févr. 2012 à 16:01
Erf, a chaque fois je me trompe !

Sinon la solution de Renfield à l'air de marcher mais il y a t'il une autre solution que du VBS ?

merci
Guillamue06 Messages postés 157 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 juillet 2022 4
21 févr. 2012 à 16:05
Je ne sais pas si c'est mieux mais je pansé à ceci :

        Dim carac As String "[ + \ - : @ # \ ? ; ! , ' ` "" \ ) \ ( } { \ * \ . ~ / \ % ]"
        Dim interdit() As String = carac.Split(" ")

        For a As Integer = 0 To interdit.Count - 1
            donnees = donnees.Replace(interdit(a), "")
        Next a

        donnees = donnees.Replace(" ", "")
Guillamue06 Messages postés 157 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 juillet 2022 4
21 févr. 2012 à 17:53
Je ne connaisse pas la méthode "Caractère" pas mal ! Merci
Utilisateur anonyme
21 févr. 2012 à 17:56
Re:
T'aurais pu marquer JeanPierre ce serait la même chose

C'est une variable! tu l'appelles comme tu veux...


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 févr. 2012 à 18:24
il y a t'il une autre solution que du VBS ?


les regexp existe dans le framework...
je t'ai conseillé du code VB6 car tu as posté dans cette catégorie...

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Guillamue06 Messages postés 157 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 juillet 2022 4
21 févr. 2012 à 18:37
acive ah mer** lol ! J'avais pas capté je vais l'appeler JeanPierre Alors =)

Renfield oui pardon, je me trompe à chaque fois que je poste u_u
Rejoignez-nous