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 :

xlWebQuery et Format des données


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut xlWebQuery et Format des données
    Bonjour,
    Dans une feuille je souhaite insérer des données provenant d'une page asp sur un internet.

    Soit manuellement par le menu Données/A partir du Web.
    Soit parce cette MAcro

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub testweb2()
        Set shFirstQtr = Worksheets("Web2")
        Set qtQtrResults = shFirstQtr.QueryTables _
                           .Add(Connection:="URL;http://www2.transports.equipement.gouv.fr/registres/marchandises/1.htm", _
                                Destination:=shFirstQtr.Cells(1, 1))
        With qtQtrResults
            .PreserveFormatting = True
            .WebFormatting = xlNone
            .WebPreFormattedTextToColumns = True
            .BackgroundQuery = False
            .Refresh BackgroundQuery:=False
        End With
    End Sub
    Cela fonctionne dans les 2 cas sauf pour certaines données qui commencent par un zéro significatif mais qui arrivent converties en Nombre
    comme les codes postaux pour les département 01,02,03,04,05,06,07,08,09...

    donc au lieu d'avoir : 02800 (affichage web) j'ai 2800 dans ma cellule

    J'ai bien paramétré ma colonne en "Texte" au préalable , avec l'option "Conserver le format des cellules" dans les propriétés de la plage de données externe

    mais je ne trouve pas comment forcer le format arrivant en texte ?
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    voir dans les propriétés de l'objet QueryTable s'il y en a une référente au problème …

    Sinon cela se règle facilement par macro en appliquant sur la plage des cellules concernées le format texte

    puis .Formula = .Formula

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  3. #3
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut
    Bonjour Marc,

    Je n'ai pas trouvé dans les propriétés de l'objet QueryTable !

    Pour des codes postaux c'est simple de rajouter un zéro devant s'il y a moins de 5 caractères, pour les SIRET aussi d'ailleurs, là où c'est plus délicat c'est quand tu ne sais pas si il faut un zéro devant ou pas !

    Dans le cas qui m'occupe il s'agit de numéros de contrats.
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut




    Donc il ne te reste plus qu'à appliquer l'astuce de mon précédent message par macro sur la plage des cellules concernées …




  5. #5
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut
    Je te répond par l'exemple suivant
    dans ma base mes contrats peuvent être : "028235933" , "375034201" , "27832496"
    et j'obtiendrai dans excel : 28235933 , 375034201 , 27832496

    mais il ne faut un zéro devant que pour le premier !
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

  6. #6
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut





    Dans le lien initial, aucun numéro de contrat ! Mon astuce résout bien l'affichage du Siret …



Discussions similaires

  1. [CSV] Format des données exportées dans Excel
    Par magsmile dans le forum Langage
    Réponses: 6
    Dernier message: 07/09/2007, 17h46
  2. Réponses: 2
    Dernier message: 30/10/2006, 22h14
  3. Requete : filtre selon format des données
    Par bogros dans le forum Access
    Réponses: 2
    Dernier message: 23/05/2006, 11h28
  4. Export excel format des données
    Par benazerty dans le forum Access
    Réponses: 2
    Dernier message: 20/04/2006, 13h40
  5. [format des données avec une procédure stockée]
    Par viny dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 10/03/2005, 13h24

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