Excel 2003 - VBA - Projet réalisable ou pas?

accro-à-l'ordi -  
 accro-à-l'ordi -
Bonjour,

J'ai commencé à apprendre la programmation en VBA. Je voulais savoir s'il était possible de réaliser le projet ci-dessous, qui est je l'accorde assez complexe. Cependant, s'il n'est pas réalisable avec VBA, il y a peut-être un autre langage de programmation qui permettrait de le réaliser. Avant d'entrer dans des recherches très compliquées qui au final ne me permettraient pas de réaliser ce projet, je préfère avoir votre avis. Mais entrons dans le vif de ce sujet…

Le but serait d'aller chercher (sélectionner/copier/coller) des informations sur un site Internet afin de mettre une base de données à jour régulièrement et ce, sans devoir réaliser cette opération manuellement.

Je ne vais pas donner le nom du site en question car c'est confidentiel, mais je vais donner un exemple concret.

Nom du site avant la connexion
https://www.lesite.com/

Accès au site
Par pseudo et mot de passe

Nom du site après la connexion
https://www.lesite.com/

Pages contenant les informations
https://www.lesite.com/?type=10
https://www.lesite.com/?type=20
Là, il y aurait un bouton VOIR à cliquer dessus pour obtenir les informations.

Ensuite, il faudrait sélectionner les informations de la ligne "Informations" à la ligne "Retour" (si ce n'est pas possible, tout sélectionner, mais j'aurai des informations non désirées). Après, copier les informations du site et les coller sur une feuille Excel bien précise. Par exemple pour le type=10 sur la feuille 10 et pour le type=20 sur la feuille 20.

Pour le fait de rapatrier les informations dans la base de données, actuellement, après avoir fais un copier/coller d'une des pages manuellement, avec des formules imbriquées complexes, j'arrive à réaliser cette opération.

Cependant, il faudra voir s'il est possible de sélectionner les informations d'un point à un autre ou uniquement sélectionner tout. Dès lors, je devrai peut-être modifier mes formules.

Je vous remercie pour vos avis et conseils.
A voir également:

19 réponses

m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Sans rentrer dans le détail, tu n'as a priori pas besoin de VBA pour cela, car c'est une fonction native d'Excel. Donc commence par essayer cette fonction :

Menu Données, données externes, nouvelle requête sur le Web.
Tu entres l'adresse du site, tu sélectionnes le ou les tableaux qui t'intéressent en cliquant sur les petites flèches jaunes, puis sur le bouton Importer. Le tableau s'affiche dans ta page Excel.

Ensuite, tu peux cliquer sur le bouton "Propriétés de la plage de données ", situé sur la barre d'outils Données externes, et tu sélectionnes les options qui t'intéressent, et en particulier les options d'actualisation.

m@rina
0
accro-à-l'ordi
 
Bonjour m@rina,

J'ai essayé ta solution sans rentrer dans les détails.

Le problème, qu'il se connecte au site Internet avec Internet Explorer et j'aimerais qu'il s'y connecte avec Opera (qui a l'avantage de copier/coller des données Internet avec un format texte sans devoir le signaler à Excel). De plus, Internet Explorer me donne toujours des erreurs de débogage. Y a-t-il une solution pour qu'il utilise Opera?

Ensuite, il y a des informations sur plus d'une centaine de page à aller chercher (une par type), j'aimerais arriver à ce qu'il fasse cela automatiquement (chaque jour). Je ne sais pas si c'est possible avec ta solution, peut-être en effectuant plusieurs requêtes (une pour chaque feuille Excel).

Au fait, je pense aussi à plusieurs soucis qui peuvent être gênants:

Premier souci
Pour aller sur le site Internet, il faut un pseudo et un mot de passe. Est-ce que cela ne posera pas de problème quand il devra mettre les données à jours? (exemple: devoir pour chaque requête lui redonner le pseudo et le mot de passe).

Deuxième souci
Entre la ligne "Information" et la ligne "Retour", le nombre de lignes peut varier d'un jour à l'autre et ce pour chaque type. Donc, je pense que sans macro, il y aura un souci puisque j'aurai sélectionner un jour 10 lignes et que le lendemain il pourrai y en avoir 20.

J'étudierai tout cela plus tard, là je dois partir.

Je te remercie pour tes conseils.
0
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour

Je ne connais pas Opera.

j'aimerais arriver à ce qu'il fasse cela automatiquement (chaque jour)
L'actualisation peut être automatique. Suffit de regarder les options.

Entre la ligne "Information" et la ligne "Retour", le nombre de lignes peut varier d'un jour à l'autre et ce pour chaque type
Prévu aussi dans les options...

m@rina
0
accro-à-l'ordi
 
Bonjour m@rina,

Opera est un autre explorateur qui a certains avantages qu'Internet Explorer et Mozilla Firexfox n'ont pas:

Premièrement, quand tu copie des données d'Internet elles sont toujours au format texte.
Deuxièmement, sur certains sites Internet, des icônes (dessins) remplacent du texte, quand tu copies des données où il y a ce genre d'icônes soit Opera prend le format texte de l'icône, soit il ne prend rien; ce qui est très avantageux dans certains cas.

Y a-t-il moyen de dire à Excel 2003 d'utiliser un explorateur plutôt qu'un autre?

Opera a d'autres avantages, je pense, mais là je dois vraiment y aller. Je testerai tout cela prochainement.

Je te remercie pour ta rapidité de réponse.

PS: la connexion pseudo/mot de passe ne posera pas de problème?
0
accro-à-l'ordi
 
Bonjour,

J'ai cherché dans les options d'Excel 2003 pour modifier le navigateur qu'Excel 2003 utilisera pour aller chercher des données sur Internet mais je n'ai pas trouvé.

Y a-t-il une solution?

MERCI

PS: si quelqu'un a plus d'informations ou d'autres conseils sur les messages précédents, je suis tout ouïe.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Je ne sais pas si Opera réglera ton problème (je l'ai essayé il y a longtemps mais je n'avais pas aimé), mais dans le cas de requête Internet, il n'est pas question de copier-coller...
Je viens de tester avec quelques tableaux et je ne récupère que le données, pas de puce, pas d'image, pas de couleurs...

m@rina
0
accro-à-l'ordi
 
Bonjour m@rina,

J'ai essayé ton système pour importer des données d'Internet, mais j'ai quelques soucis:

Premièrement, il faut entrer son pseudo et son mot de passe pour se connecter sur le site; donc, quand j'effectue l'actualisation automatique, il prend les données de la page d'accueil du site (entrée) et non de la page voulue.

Deuxièmement, les données à prendre ne sont pas dans des tableaux; donc, je ne sais pas dire au système de prendre de telle ligne à telle ligne (avec la flèche jaune).

Je continue mes essais pour essayer de trouver une solution.

Bonne journée et merci pour tous tes conseils, tu es vraiment une pro…
0
accro-à-l'ordi
 
Bonsoir m@rina,

Après des essais approfondis, cette méthode ne fonctionne pas à cause de la connexion pseudo/mot de passe (même en ayant régler dans Internet Explorer pour qu'il retienne le mot de passe). À moins qu'il y ait un endroit dans Excel 2003 pour lui dire de retenir un pseudo et un mot de passe, je ne vois pas de solution avec cette méthode.

Quelqu'un a-t-il une idée pour cette méthode? Ou une solution avec une autre méthode même plus compliquée?

MERCI
0
accro-à-l'ordi
 
Bonjour,

Je relance le débat car je n'ai toujours pas de solution.

Je vous remercie pour votre compréhension.
0
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Perso, je n'ai plus d'idée... Si personne ne peut t'aider ici, va faire un tour sur le NG Microsoft Excel, où sont tapis les excellents excelliens... Dis leur bonjour de ma part ! ;)

m@rina
0
accro-à-l'ordi
 
Bonjour m@rina,

Je te remercie pour tes conseils.

J'ai recherché "NG Microsoft Excel" sur Google mais il y a trop de résultats.

As-tu le lien complet?

D'avance je t'en remercie.
0
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
C'est un newsgroup, en NNTP...
Le mieux pour lire un NG, c'est d'utiliser un lecteur de news, comme Windows Mail ou MesNews. Sinon, c'est infernal.
Par ailleurs, pose ta question, car ce n'est pas une demande courante et je ne pense pas que tu trouves en cherchant.

Tu peux utiliser ce lien qui doit t'ouvrir directement Windows Mail (ou Outlook Express).
news://msnews.microsoft.com/microsoft.public.fr.excel

Par contre, tu dois créer un compte pour poser une question, mais ça prend 3 secondes...
Suffit de mettre un pseudo et une (fausse) adresse mail.

m@rina
0
accro-à-l'ordi
 
Bonjour m@rina,

Voilà j'ai posté un message sur le groupe de News.

J'espère que j'ai créé correctement le compte, car contrairement à ce que tu as dit je ne trouve pas si simple que cela (rire).

En effet, j'avais créé un compte Courrier et à chaque fois que j'ajoutais un message dans les News, j'avais cette erreur:

Outlook Express

Le message n'a pas été envoyé.

Aucun expéditeur n'a été spécifié. Vérifiez la configuration de votre compte de News.


Ensuite, j'ai essayé de créer un compte News, mais cela m'ouvrait un nouveau groupe de discussion qui avait des problèmes avec la connexion Serveur.

Enfin, je suis allé dans les propriétés de msnews.microsoft.com
Là, j'ai rempli le champ Nom, Adresse de messagerie et Adresse de réponse.
Et j'ai pu envoyer mon message.

PS: il n'est pas évident de savoir ce que l'on doit mettre dans serveur sortant quand on crée un compte; là j'ai utilisé ce que j'avais vu au cours avec Outlook 2003 (mx.cust.win.be).
0
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Ta question est bien passée..
Reste plus qu'à attendre de voir si quelqu'un sera inspiré ! ;)

m@rina
0
accro-à-l'ordi
 
Bonsoir m@rina,

Merci d'avoir vérifier.

Par contre, j'espère que j'ai réglé correctement les options dans Outlook Express et que je recevrai bien la réponse sur mon adresse hotmail.

Je te tiendrai au courant (on ne sait jamais que la solution t'intéresserait).
0
m@rina Messages postés 23923 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
En principe, les réponses ne vont pas sur sa messagerie, c'est un forum sauf que c'est du NNTP.

Pour l'instant, ta question n'a pas l'air d'inspirer... mais bon, c'est dimanche, c'est aussi les vacances... Mais je vois que certaines grosses pointures étaient là en début d'après midi, donc il y a encore de l'espoir ! ;)

m@rna
0
accro-à-l'ordi
 
Bonjour m@rina,

Merci pour ton suivi et tous tes conseils. J'espère trouver une solution, cela me ferait gagner pas mal de temps chaque jour.

Par contre, ce que reproche un peu aux personnes douées comme toi, c'est d'utiliser des abréviations ou des termes qui pour vous sont du domaine courant, mais pas pour tout un chacun (rire). Par exemple, ici NNTP qu'est-ce que cela veut dire exactement?

Je te souhaite de bonnes vacances...

PS1: j'espère que je ne t'ennuie pas de trop avec toutes mes questions (rire).

PS2: je sais qu'il n'est pas évident de se rendre compte que certains termes, abréviations ou explications paraissant simple pour soi sont compliquées pour d'autres.
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 725
 
bonjour

NNTP c'est ici : https://fr.wikipedia.org/wiki/Network_News_Transfer_Protocol

Si tu ne connais pas les termes, tu peux arriver à les comprendre en cherchant dans cette encyclopédie.
0
accro-à-l'ordi
 
Bonjour gbinforme,

Je te remercie pour l'information, mais cette encyclopédie n'est pas fiable à 100 % puisque n'importe qui peut y mettre des données. Cependant, il suffit de recouper les informations avec d'autres sites Internet.

Je pense que pour certains termes sans le nom complet, on ne trouvera pas nécessairement la correspondance rien qu'avec l'abréviation.

Bonnes vacances...

PS: si quelqu'un a une solution pour ma demande, je suis toujours preneur (rire).
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 725
 
bonjour

cette encyclopédie n'est pas fiable à 100 %

Dès que tu connais une source fiable à 100% tu me fais signe : j'attendrais très longtemps car j'ai une encyclopédie papier certifiée par un grand éditeur et de nombreux intervenants mais qui présente nécessairement des failles, pratiquement dès son impression...

puisque n'importe qui peut y mettre des données.

Crois-tu que le boulanger du quartier qui parle du pain est moins qualifié qu'Einstein pour cela ?
0
accro-à-l'ordi
 
Bonjour gbinforme,

Je suis d’accord avec toi, ce n’est pas parce qu’une encyclopédie est réalisée par des professionnels qu’il n’y a pas d’erreurs. Cependant, nous supposons que les sources utilisées et les informations se trouvant dans une encyclopédie professionnelle ont été vérifiées.

Quant à comparer un boulanger de quartier et Einstein, tu fais fort (rire). Il est vrai que chacun d’eux aura des domaines où il sera plus qualifié.

Néanmoins, il arrive parfois de rencontrer des erreurs dans des livres édités. Parfois, celles-ci sont grosses comme une maison. Dernièrement, j’ai feuilleté le livre "Visual Basic 6 Les bases de données et SQL Server 7" et il y avait cette erreur: "Ce livre s'adresse aux ceux qui n'hésiteront pas à passer des heures..."

Je sais que l'erreur est humaine, je ne remets pas en cause ce fait là, mais là, normalement, les livres sont relus plusieurs fois et par plusieurs personnes avant d’être édités. Donc, ils pourraient s'en rendre compte, surtout pour des erreurs comme celle citée précédemment.

Quoi qu’avec la rentabilité qui "tue" tout, de nos jours, un lecteur (de correction) a peut-être 10 fois moins de temps pour relire un livre qu'il y a 20 ans et il y a sûrement aussi moins de personnes qui relisent un livre avant son édition.

Bon ceci dit désolé pour mon roman et bonne journée…
0