IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Problème avec Split VBA ACCESS


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 57
    Points : 36
    Points
    36
    Par défaut Problème avec Split VBA ACCESS
    Bonjour tout le monde,

    Ce post vient à la suite du premier, en fait la chaîne que je récupère à partir du fichier est trsè dense. Et j'ai besoin de couper cette chaîne avec Split pour récupérer certains éléments précis.
    Le problème c'est que quand je fais Split, eh bah ça fait rien du tout, je n'ai mm pas de message d'erreur du style, dépassement de capacité....

    Une idée?
    voici le code! merci!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    Sub test() 
    Dim fp As Integer 
    Dim fichier, fic, monTab(), machaine(), chemin As String 
    fic = "" 
    chemin = "C:\...\relation.txt" 
    On Error Resume Next 
    fp = FreeFile 
     
    Open chemin For Input As #fp 
    While Not EOF(fp) 
    Line Input #fp, fichier 
    fic = fic & fichier 
    Wend 
    Close #fp 
     
    monTab = Split(fic, "<") 'Split(fic, "detailler(") 
    MsgBox monTab(1) 
    machaine = Split(Mid(monTab(1), 1), "'") 
    MsgBox machaine(0) 
    End Sub
    quand je fais MsgBox de monTab(1), il n'ya rien qui s'affcihe la message box n'apparaît même pas!

    Merci d'avance à tous!

  2. #2
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Points : 65
    Points
    65
    Par défaut
    Petite question : est-ce que tu as vérifié si dans fic tu as bien ton texte?

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 57
    Points : 36
    Points
    36
    Par défaut
    Merci pour ta réponse Toutyx.

    Oui j'ai vérifier que j'avai bien le texte, javai fai un MsgBox fic (mais je l'ai enlevé pour le forum, ça n'avait pas d'intérêt) et la message box affichait au moins le début de la chaîne, car comme je t'ai dit elle est très longue.

    et quand je fais msgbox monTab(1), la msgbox n'apparaît mm pas, et le code continu comme si de rien n'était, et rien ne se passe, pas de msg d'erreur.
    bizarre...

    tu s une idée? peut-être que la chaîne de caractère contenue dans split est trop dense?
    Je tiens à préciser que la taille du fichier relation.txt est de 306ko.
    Merci.

  4. #4
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Points : 65
    Points
    65
    Par défaut
    Dans ce cas j'essaierai de procéder comme ça :

    1 boucler tant qu'il y a des lignes dans le fichier
    2 récupérer une ligne du fichier
    3 Split sur cette ligne
    4 concaténer le résultat dans le tableau

    Maintenant je ne sais pas si on peut récupérer ligne par ligne...

    En espérant que ça peut t'aider.
    Antony

  5. #5
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 642
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 642
    Points : 34 354
    Points
    34 354
    Par défaut
    Salut,
    essaye d'adapter le code issu de la pour lire le contenu du fichier :
    http://access.developpez.com/sources...s#FichierTexte

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 57
    Points : 36
    Points
    36
    Par défaut
    Re!
    Désolée de ne répondre que maintenant je suis en stage et j'ai un autre problème à résoudre en même temps!

    en tout cas merci toutyx pour l'info.

    Bon malheureusement ça ne fonctionne toujours pas, Split ne renvoie rien je te montre le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub test()
    Dim fp As Integer
    Dim fichier, fic, monTab(), machaine(), chemin As String
    fic = ""
        chemin = "C:\...\relation.txt"
       On Error Resume Next
       fp = FreeFile
     
       Open chemin For Input As #fp
       While Not EOF(fp)
          Line Input #fp, fichier
     'fichier contient donc la dernière ligne du fichier fp
            Wend
       Close #fp
     
        monTab = Split(fichier, "a")
        MsgBox monTab(1)
        machaine = Split(Mid(monTab(2), 1), "'")
        MsgBox machaine(0)
    End Sub
    La msgbox au niveau du split ne me renvoi rien, alors que dans fichier, il y a 3 fois la lettre a...
    je ne sais pas trop quoi faire...

    une idée?
    merci beaucoup!

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 57
    Points : 36
    Points
    36
    Par défaut
    C'était tout con!!
    en fait ma ligne ou je déclare mes chaine de caractères n'était pas bonne!

    je mettai toute mes variable en ligne au lieu de faire ça!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim fp As Integer
    Dim fichier As String
    Dim fic As String
    Dim monTab() As String
    Dim machaine() As String
    Dim chemin As String
    et donc toute les variable sauf la dernière était de type variant. donc là maintenant c'est explicite, et split fonctionne bien!

    merci à tous pour vos réponses!

  8. #8
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 65
    Points : 65
    Points
    65
    Par défaut
    Ah tant mieux !!
    Ah là là comme quoi des fois on cherche des complications là ou il y en n'a pas ...

    Tssss vba quand tu nous tiens...
    On te lâcherait bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec create table access en asp
    Par raymon dans le forum ASP
    Réponses: 2
    Dernier message: 03/11/2009, 18h27
  2. Problème avec ActiveX dans Access
    Par Claude Poulin dans le forum Modélisation
    Réponses: 2
    Dernier message: 20/10/2008, 14h39
  3. Réponses: 4
    Dernier message: 16/10/2008, 09h48
  4. [Delphi 6] Problème avec une base Access
    Par chakir76 dans le forum Bases de données
    Réponses: 1
    Dernier message: 13/03/2008, 17h08
  5. problème avec Split
    Par Empty_body dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 13/12/2006, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo