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

VB 6 et antérieur Discussion :

[VB6] Problème de lecture d'un fichier excel


Sujet :

VB 6 et antérieur

  1. #1
    Débutant
    Inscrit en
    Juin 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 108
    Points : 52
    Points
    52
    Par défaut [VB6] Problème de lecture d'un fichier excel
    Bonjour,

    Voici mon problème :

    j'ai une application VB6 qui lit une feuille excel et enregistre ses données dans une tables access.

    J'ai un problème sur un champs en particulier qui contient du texte ou du numérique.

    Quand je fais :

    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
        strSQL2 = "SELECT [TMP_INDUSTRY].* From [TMP_INDUSTRY];"
     
        Set sRS = New ADODB.Recordset
        sRS.Open strSQL2, SCnn, adOpenKeyset, adLockOptimistic
        'on remplit la base access avec tous les champs du fichier excel
        While Not mRS.EOF = True
     
            sRS.AddNew
     
            sRS!Code = Nz(mRS!Code)
            sRS!update_code = Nz(mRS!update_code)
            sRS!English = Nz(mRS!English)
            sRS!French = Nz(mRS!French)
     
            sRS.Update
     
            i = i + 1
            num = i + 1
            mRS.MoveNext
            sRS.MoveNext
        Wend
    les champs update_code, english et french sont lu sans problème. Par contre, le champ code n'est lu que pour le texte (et non le numérique)... résultat, j'ai un enregistrement sur deux dans ma table access... D'où cela peut il venir ? merci![/quote]

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour

    Par défaut , le pilote ODBC analyse uniquement les 8 premieres lignes du classeur fermé pour déterminer le type de données dans chaque colonne.

    Si tu veux importer les informations d'une colonne qui contient à la fois des données numériques et texte , c'est le type majoritaire dans les 8 premiere lignes qui définira le type de données à récupérer : les autres données de la colonnes seront considérées comme NULL (vide)
    Si la colonne contient 4 valeurs numériques et 4 valeurs texte , la requete renvoie 4 nombres et 4 valeurs NULL.
    La seule solution consiste à activer l'option d'importation "IMEX=1" ( exemple : "extended properties=""Excel 8.0;IMEX=1""" ) . Les données numériques seront importées comme du texte


    bonne journée
    michel

  3. #3
    Débutant
    Inscrit en
    Juin 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 108
    Points : 52
    Points
    52
    Par défaut
    ohlala!! Merci énormément pour cette réponse! Je ne l'aurai jamais trouvé!
    Je teste cela de suite!

    Merci beaucoup!

  4. #4
    Débutant
    Inscrit en
    Juin 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 108
    Points : 52
    Points
    52
    Par défaut
    Eh bien, ça marche super bien! Merci encore !!

  5. #5
    Débutant
    Inscrit en
    Juin 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 108
    Points : 52
    Points
    52
    Par défaut
    maintenant j'ai un problème :

    à cause du IMEX=1, il me dit que mon fichier est en lecture seule... Or c'est faux!

    Que faire ??

  6. #6
    Débutant
    Inscrit en
    Juin 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 108
    Points : 52
    Points
    52
    Par défaut
    non c'est bon, j'ai trouvé une solution (créer deux chaines de connexion, l'une import avec IMEX=1, l'autre sans.)

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

Discussions similaires

  1. [C#] Lecture d'un fichier Excel: problème
    Par Leelith dans le forum C#
    Réponses: 4
    Dernier message: 19/12/2009, 14h08
  2. Problème de lecture d'un fichier excel
    Par Amelde dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 31/03/2009, 04h23
  3. Probleme de lecture d'un fichier excel avec VB6
    Par Ora92_IDS dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 10/04/2008, 14h17
  4. Réponses: 4
    Dernier message: 31/12/2007, 11h39
  5. [POI] Problème écriture/lecture dans un fichier Excel
    Par steuve dans le forum Documents
    Réponses: 6
    Dernier message: 02/07/2007, 15h47

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