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 :

[ADO VBA] Lire Ecrire dans classeur Excel fermé - Demande de précisions.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 49
    Par défaut [ADO VBA] Lire Ecrire dans classeur Excel fermé - Demande de précisions.
    Bonjour,

    Je suis actuellement interessé par cet article : http://silkyroad.developpez.com/VBA/ClasseursFermes/ pour lequel je remercie son auteur.

    Mes premiers tests de lecture sont satisfaisants. Mais, je crains le passage qui dit que le pilote ODBC lit les 8 1ères lignes etc.

    Une solution proposée par IMEX=1 devra convenir. Que cela signifie t il exactement ?

    De fait, je ne spécifie pas l'utilisation d'ODBC de manière explicite. J'utilise ADODB. Est ce qu'implicitement ODBC est utilisé par le système ?

    Comme je ne serai pas assuré que les 8 1ères lignes seront représentatives en production, le risque de troncature forcée ou de mise à NULL n'est pas à écarter. Ce qui serait assez grave.
    Je m'aperçois en effet que certaines données dans des cellules Excel de mon appli sont de larges commentaires que je veux recevoir dans des champs Mémo Access. Mais si je n'arrive même pas là...

    La lecture de classeur fermé est très rapide. Ce qui serait dommage (et à écarter donc) si les données ne sont pas transférées telles quelles vers ma base Access.

    Je suis sur plateforme Excel 2003 et Win XP. Est-ce que le paramètre Excel 8.0 peut (doit) être changé ?

    Auriez-vous des éléments qui pourraient aider à me fixer sur une méthodologie ? Mon objectif est de lire et écrire dans des classeurs vous l'aurez compris.

    Merci d'avance,
    Botakelymg.

  2. #2
    Expert confirmé

    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
    Par défaut
    bonjour

    Tout d'abord, merci pour ton message.


    Mes premiers tests de lecture sont satisfaisants. Mais, je crains le passage qui dit que le pilote ODBC lit les 8 1ères lignes etc.
    Une solution proposée par IMEX=1 devra convenir. Que cela signifie t il exactement ?
    Cela signifie que toutes tes données seront exportées comme du texte.



    Comme je ne serai pas assuré que les 8 1ères lignes seront représentatives en production, le risque de troncature forcée ou de mise à NULL n'est pas à écarter. Ce qui serait assez grave.
    Est ce que tu peux imaginer un champ Access qui contiendrait plusieurs types de données ? Ce n'est pas possible. C'est pareil si veux lire de manière cohérente tes données dans un classeur Excel fermé. A toi de définir le type de données que doit contenir ta colonne Excel et t'arranger pour que ce type soit unique.



    Je m'aperçois en effet que certaines données dans des cellules Excel de mon appli sont de larges commentaires que je veux recevoir dans des champs Mémo Access. Mais si je n'arrive même pas là...
    http://support.microsoft.com/kb/189897/
    mais je ne suis pas sur que ça résolve totalement ta question.



    Je suis sur plateforme Excel 2003 et Win XP. Est-ce que le paramètre Excel 8.0 peut (doit) être changé ?
    Non, ça change uniquement pour les nouveaux formats de fichiers Excel2007.




    bon week end
    michel

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 49
    Par défaut
    Cela signifie que toutes tes données seront exportées comme du texte.
    Ca veut dire un maxi de 255 chars ?

    A toi de définir le type de données que doit contenir ta colonne Excel et t'arranger pour que ce type soit unique
    Pas trop le choix ! J'ai des cellules remplies de longs commentaires (diagnostic) que je veux recevoir en Mémo. Si je comprends bien, il suffirait que j'en ai moins dans les 16 1ères lignes et tout sera tronqué par la suite dans le fichier, est-ce cela ?

    Non, ça change uniquement pour les nouveaux formats de fichiers Excel2007.
    Aïe !

    Je dois mettre ces données en table Access et je dois faire des contrôles Zone à Zone sur chaque ligne avant intégration définitive. Les méthodes genre TransferText ne me convient pas a priori.

    Bon Weekend également

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 25/03/2013, 16h58
  2. Ecrire dans classeur excel fermé depuis OutLook
    Par francky74 dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 27/09/2011, 15h06
  3. [XL-2007] Lire dans les classeurs Excel fermés (ADODB)
    Par Korleone dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 05/04/2011, 09h52
  4. [XL-2003] Lire et écrire dans les classeurs Excel fermés
    Par skan_one dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/07/2009, 15h34
  5. [ADO DAO] Ecrire dans classeur Excel fermé.
    Par botakelymg dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/11/2007, 12h52

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