Lire/ecrire dans une feuille Excel

bgll11 Messages postés 3 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 13 janvier 2012 - 6 janv. 2012 à 18:16
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 9 janv. 2012 à 19:11
Bonjour,

Je cherche un code me permettant de lire et/ou ecrire dans une feuille Excel. Petite precision: je suis VRAIMENT debutant. Ce qui veut dire qu'il faudrait que le code marche directement apres un copier/coller du code dans mon fichier .vbp. En effet, tous les codes que j'ai pu trouve jusqu'a present me generent des erreurs au lancement, du style :Invalid Outside Procedure" ou autre.

Merci de votre aide.

10 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 18:21
Bonjour,

Là, quand-même, c'est à la fois très vaste et très rudimentaire à la fois !
Il te faut nécessairement commencer par les rudiments.
Je te suggère de commencer par ouvrir ton aide en ligne sur les mots suivants :
WorkBook
Worksheet
Sheet
Range
et de ... lire ...
ce sera un bon début (et surtout : un début indispensable, si l'on veut rester sérieux )!
Bonne lecture.



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 18:51
Quand tu t'en seras bien imprégné (pas avant, hein..)
=>>
Passe à la lecture de ce petit "tutoriel" que nous devons à Mortalino (que je salue et à qui je présente mes meilleurs voeux 2010).
Tutoriel pour débutants VBA/Excel par Mortalino
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
6 janv. 2012 à 18:57
Salut

"Ce qui veut dire qu'il faudrait que le code marche directement apres un copier/coller du code dans mon fichier .vbp"
Non, il ne faut pas bidouiller les fichiers de projet.
Si tu dois copier du code, ce sera dans les pages de code des formes, modules ...

Si tu expliquais ce que tu cherches à faire, on pourrais peut-être t'orienter.
Premièrement : Confirme que tu travailles avec le logiciel VB6 et pas dans le VB de Excel, qui est du VBA.
Mais si tu as parlé de fichier VBP, c'est que ça doit bien être du VB6.
D'où proviennent les lignes que tu tentes de mettre dans ton fichier VBP, de quel langage ?

@ ucfoutu : !! Breaking news !! Breaking news !! Breaking news !!
On est en 2012

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 19:02
On est en 2012

j'veux plus vieillir ! (résolution prise le 1er janvier dernier).
Plus sérieusement : l'âge épaissit les doigts et je travaille depuis plus d'une heure dans une quasi obscurité (et je frappe avec deux doigts, "à (mauvaise) vue", sur des touches usées par des doigts souvent "rapeux" après travaux de maçonnerie)

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0

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

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 19:07
Mais j'en profite, Jack, pour te rappeler mon dernier MP. La présente discussion (plus deux autres de ce jour) sont des "signes" d'une certaine utilité.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 19:13
A bgll11
Je me rends compte, après relecture de ta demande, de ce que Jack a probablement raison et de ce qu'il s'agit vraisemblablement d'un "pilotage" de Excel à partir de VB6.
Il reste que tout "pilotage" nécessite la bonne connaissance de l'outil à piloter lui-même.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 janv. 2012 à 21:26
Pour résumer et pour y voir bien clair :
- le seul aspect VB6 (si pilotant) est la déclaration d'"objets" pour "pointer" vers Excel, un classeur, une feuille ...
- il ne s'agit ensuite, pour chacun de ces objets, que de code VBA appliqué à l'objet.
Si par exemple : objet feuille titi ===>>
toute intervention sur cet objet devra
- être précédé du mot titi (l'objet titi) suivi d'un . (signe point pour dire "propriété de cet objet") suivi alors de ce que l'on dirait directement en VBA ...
Exemple (pour la cellule C10 de la feuille déclarée en objet titi en pilotage) :

titi.Range("C10). ....(et l suite comme si en VBA/Excel).

On voit bien là que la connaissance de VBA/Excel est alors au moins égale à celle que l'on devrait avoir si l'on n'était pas en pilotage, mais bel et bien dans VBA/Excel et qu'aucun pilotage ne saurait être conduit sans cela.

En d'autres termes, le pilotage n'affranchit en aucun cas de la nécessité de connaître la syntaxe du langage qui "accompagne" ce qui est à piloter.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
bgll11 Messages postés 3 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 13 janvier 2012
9 janv. 2012 à 18:56
Merci a tous de vos conseils. Tout d'abord, il s'agit de VB6. Mais si j'avais le temps de lire et apprendre VB6, je ne posterai pas ce genre de requete (simpliste??) sur le forum. Je cherche simplement a ecrire/lire le contenu d'une ou plusieurs cellule(s) Excel. Je connais quelques rudiments, par exemple acceder/ecrire/lire dans un fichier texte en utilisant CMDialog1, Open For Input/Output/Append As, Input, Write, etc...). Mais comment acceder a un fichier Excel? Quelles commandes utiliser? Ai-je besoin de module(s) externe(s)? Encore merci.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 janv. 2012 à 19:04
C'est alors non pas au niveau des connaissances de Excel, que tu butes, mais à celui du pilotage à partir de VB6 ?
Si ce n'est que cela ===>> moteur de recherche de ce forum ===> mot clé : Piloter

Cela : de manière générale, te permettra d'instancier et de te retrouver en position de pilote, sans pour autant piloter à ta place, ce qui, comme dit plus haut, nécessitera en outre une bonne connaissance de VBA/Excel.

Tiens ===>> je viens de frapper "piloter" ===>> je te donne u n lien au hasard, parmi toute une "tartinée ===>>> Tapez le texte de l'url ici.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
9 janv. 2012 à 19:11
Tu auras compris, après cette lecture, que tu te retrouves avec quelques objets créés. Tout objet, propriété, fonction, etc ... de vba/excel devra, en "pilotage", être précédé du nom de l'objet concerné. Mis à part cet aspect, tout le reste sera du pur VBA/Excel, tel que tu l'utiliserais en situation "normale" (depuis EXCEL/VBA, donc).
En aucun cas, un tel pilotage ne t'affranchirait des connaissances VBA, bien au contraire. Il te permettra simplement de les utiliser depuis VB6 comme tu le ferais depuis VBA.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Rejoignez-nous