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

Macros et VBA Excel Discussion :

Problème Recordset ADO [Toutes versions]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé Avatar de casavba
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 464
    Par défaut Problème Recordset ADO
    Bonjour,

    Je récupère à l'aide d'une requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM [Feuil1$]
    le contenu de la feuil1 d'un classeur fermé MyWk.xls.

    Le contenu de cette requête est stocké dans un Recordset [MyRst].

    Le problème est que dans le fichier xls y a certaines colonnes qui contiennent et des chiffres et du texte ---> En affichant le contenu du Rescordset à l'aide de la propriété CopyFromRecordset. Je me rends compte que le recordset ne retourne pas les valeurs textes des colonnes qui contiennent (Text + Numéro) par contre il retourne les valeurs numéro.

    Comment selon vous peut-on résoudre ce problème?


    Exemple en cas de besoin :

    supposons une colonne qui contient les données suivantes :

    Colonne 1
    Toto
    Tata
    12
    13
    15


    lorsque j'affiche mon recordset, j'ai ce résultat :

    Colonne 1


    12
    13
    15


    Les valeurs text ne sont pas retournées, un vide est retourné à la place.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    As-tu les caractéristiques de ce tuto : http://silkyroad.developpez.com/VBA/ClasseursFermes/

    Notamment cette partie :
    2. Si vous voulez 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 premières 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 requête 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.
    Philippe

  3. #3
    Membre éclairé Avatar de casavba
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 464
    Par défaut
    Je te remercie Philippe pour ta réponse concise.
    J'ai activé l'option d'importation IMEX=1 et ça fonctionne.
    ça tombe bien, vu que je veux notamment récupérer toutes les données en texte.

    Bien Cordialement


    PS: Y a t-il un tuto pour ces options (comme IMEX).

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re

    Citation Envoyé par casavba Voir le message
    PS: Y a t-il un tuto pour ces options (comme IMEX).
    Personnellement je ne connais pas, je structure toujours mes fichiers Excel comme une table Access, cela me permet d'éviter ce genre de désagrément.

    Philippe

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

Discussions similaires

  1. [AC-2007] Problème ouverture Recordset ADO avec un curseur dynamique
    Par deny31 dans le forum VBA Access
    Réponses: 4
    Dernier message: 01/06/2012, 08h54
  2. Réponses: 6
    Dernier message: 31/07/2009, 14h45
  3. Réponses: 6
    Dernier message: 17/01/2006, 09h12
  4. [SQL]Problème avec ADO - Order by
    Par Dnx dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 03/11/2005, 10h55
  5. Problème avec Ado, MySQL
    Par sylvain.g dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/06/2005, 10h45

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