[VBA] Besoin d'aide pour la création d'une macro [Résolu]

villette54

XLDnaute Junior
Bonjour,

Je suis débutant en VBA, et j'ai dans le cadre de mon travail, besoin d'utiliser VBA de façon un peu plus avancée que ce que je suis capable de faire.

Il s'agit d'un fichier pour lequel je dois extraire des infos d'une "base de données" si je puis dire, et en ajouter. J'ai pour ce faire créer 4 boutons, qui doivent chacun remplir une fonction. Seulement je suis incapable de transposer ce que je souhaite dans VBA. (Toutes les explications de mes besoins se trouve sur mon document)

Je cherche donc quelqu'un qui pourrait m'aider à créer ces macros, ou au moins me mettre sur la piste parce-que actuellement, malgré tous les tutos que je consulte je suis dans le flou total.

Merci d'avance pour votre aide.
 

Pièces jointes

  • Test Suivi Cotopo.xlsm
    113.7 KB · Affichages: 147
Dernière édition:

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Huum, ok je comprends mieux.

Merci pour les infos.

H.S. J'ai vu que le sujet totalisait un grand nombre d'affichage pourtant seul 3 personnes ont répondu, si d'autres personnes ont des idées d'améliorations ou des suggestions à faire, n'hésitez pas. Toute aide est la bienvenue. Merci d'avance.
 

Tirou

XLDnaute Occasionnel
Re : [VBA] Besoin d'aide pour la création d'une macro

Bonjour le fil,

Merci Pierro pour cette remarque. J'avoue qu'à aucun moment, je n'ai eu ce genre de considération ...

Version que j'espère débuggée

Edit : PJ supprimée pour espace forum, voir message page 3
 
Dernière édition:

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Bonjour,

Même si la version de Tirou est aboutie.
J'aimerais savoir s'il est possible de finir également la version de Chalet53 ?

Afin de pouvoir proposer 2 versions aux personnes qui en être les utilisateurs, et qu'ils puissent choisir la version qu'ils préfèrent.

J'ai copié/collé le code que Chalet avait proposé dans un nouveau fichier, avec un Userform un peu différent.
Je suis malheureusement incapable de l'adapter à la nouvelle situation. (Du coup j'ai même du mettre des morceaux entier du code en commentaire afin de pouvoir ouvrir les différents Userforms)

Ci-joint le nouveau fichier avec un userform dessiné "grossièrement" juste pour donner une idée.

Merci d'avance pour votre aide
 

Pièces jointes

  • Test Suivi Cotopo v.2.xlsm
    124.9 KB · Affichages: 119
  • Test Suivi Cotopo v.2.xlsm
    124.9 KB · Affichages: 116
  • Test Suivi Cotopo v.2.xlsm
    124.9 KB · Affichages: 119

Tirou

XLDnaute Occasionnel
Re : [VBA] Besoin d'aide pour la création d'une macro

Bon, je me penche sur ton adaptation de fichier, mais de prime abords : pourquoi les macros ne marchaient plus quand tu les changes de fichier?

Pour utiliser les expressions régulières, il faut charger la librairie associée. En effet, c'est outils surpuissant et tellement pratique n'est pas natif des applications Microsoft (ben oui, il ne faudrait pas qu'ils utilisent de l'open source, ça ferait tache ^^ )

Donc pour tes prochains classeurs, pour activer cette librairie, il faut, dans la fenètre de VBA, aller dans Outils > Références et cocher "Microsoft VBScript Regular Expressions 5.5"

Voilà, ça devrait marcher ^^
Bon, je vais voir pour l'adaptation.
 

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Les macros ne fonctionnaient plus parce-que j'ai changé l'architecture du fichier.
(De 4 boutons à un seul, plus de valeur dans les cellules mais directement dans le userform.

Je savais pertinemment que le code ne fonctionnerait pas mais je me suis dis qu'en gardant le code tel qu'il était il ne faudrait que quelques petites modifications pour l'adapter... Grossière erreur de débutant, malgré de multiples essais je n'ai pas réussi...

C'est pour ça que j'ai remis le code comme il était à l'origine même si du coup il n'est pas du tout adapté au fichier pour "effacer" mes vaines tentatives. Je me suis dis que ce serait plus facile pour quelqu'un qui s'y connait.

Merci pour l'info en ce qui concerne les expressions régulières, j'y vais de ce pas. (Mais du coup, il faut l'activer sur tous les PC ? Ce fichier sera sur un réseau d'entreprise il serait donc préférable d'éviter d'avoir à faire une manipulation sur chaque PC)
 

Tirou

XLDnaute Occasionnel
Re : [VBA] Besoin d'aide pour la création d'une macro

J'ai revu l'userform2 pour le moment, il reste à revoir l'userform 1 (début d'aprem) Si tu veux regarder pour me dire ce que tu en penses.

Pour l'activation de la référence, c'est lié au fichier, pas à l'ordinateur.

Edit : PJ supprimée pour espace forum, voir message page 3
 
Dernière édition:

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Ok, parfait alors pour l'activation de la référence.

Pour le Userform 2, il est très très bien comme ça (ça change de l'horreur que j'avais fais !) Merci beaucoup.

Une petite question cependant, à quoi sert la date en J13 ?
 

Tirou

XLDnaute Occasionnel
Re : [VBA] Besoin d'aide pour la création d'une macro

Cette date ne sert strictement à rien, je l'ai juste utilisée pour un test temporaire.

Voilà un fichier qui devrait t'aller.

Edit : PJ supprimée pour espace forum, voir message page 3
 
Dernière édition:

CHALET53

XLDnaute Barbatruc
Re : [VBA] Besoin d'aide pour la création d'une macro

bonjour,

Je repasse par là
J'avais abandonné le sujet
a+
 

Pièces jointes

  • Villette 54.xlsm
    131.9 KB · Affichages: 48
  • Villette 54.xlsm
    131.9 KB · Affichages: 53
  • Villette 54.xlsm
    131.9 KB · Affichages: 52
Dernière édition:

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Tirou : Effectivement cette version me convient parfaitement.
Merci de m'avoir aidé une fois de plus.

Une dernière petite question avant de clôturé le sujet, depuis combien de temps pratiques-tu ? Je vais être amené à utiliser VBA à de nombreuses reprises pour mon travail et j'aimerais bien réussir à me débrouiller par moi-même (et non pas déranger des gens à chaque fois que j'ai besoin de quelque chose). Tu as l'air de plutôt bien, même très bien maîtriser le sujet (vu le temps qu'il ta fallu pour m'aider) je ne prétend pas atteindre ton niveau, et je sais qu'il me faudra beaucoup de temps avant d'avoir un niveau "correct" mais c'est juste pour me faire une idée.

Chalet, merci pour ton aide.
Mais je ne pense pas utiliser ton fichier dans l'état, en effet celui que Tirou a refait à partir de ton code est plus fonctionnel (un seul bouton et deux userform). En revanche ton fichier m'aidera à essayer de comprendre le fonctionnement de VBA et à voir une façon différente de faire les choses.

Encore merci à vous deux, bonne journée.
 

villette54

XLDnaute Junior
Re : [VBA] Besoin d'aide pour la création d'une macro

Huum.
Après quelques utilisations une chose me dérange, est-il possible d'afficher dans la liste les dates sur une seule ligne ?
- 02/09/2013 par exemple
Car actuellement la date s'affiche de cette façon :
- 02/09/2
013
Cela ne facilite pas la lecture. J'ai essayé d’agrandir la taille de la "case" mais le format restait le même (avec le retour à la ligne) mais cette fois sur 2 colonnes.

Merci !
 

Tirou

XLDnaute Occasionnel
Re : [VBA] Besoin d'aide pour la création d'une macro

Salut Villette54,

En PJ une version modifiée qui devrait afficher sur une seule ligne. J'ai changé, en passant par une listbox plutôt qu'une listview (je connais moins, déjà que je connais peu la listbox .. xD )
Par contre, je n'ai pas réussi à changer la taille des colonnes de la listbox, du coup, j'ai du l'élargir pour éviter l'apparition d'une barre de défilement horizontale (inutile). Quelqu'un connais la commande?

Pour la question depuis quand je code en vba ? Pas longtemps en fait. ça doit faire environ 1 ans que je traine par ci par là sur ce forum. J'ai créé mon compte en septembre lorsque j'ai vu un sujet sur lequel je pensais pouvoir aider, et depuis, c'est un peu par ci par là (pas tant que ça quand je vois le nombre de réponses xD ) :) L'optique est d'essayer d'aider : quand ma solution est élue, je suis content, et dans tous les cas, j'apprends des solutions proposées, et je suis content aussi :)

Après, j'aime bien m'y essayer : dans le privé comme dans le pro, j'ai eu quelques sujets. Chacun allant en se complexifiant, ce qui m'a permis de passer par les étapes pas à pas.


Ce forum est une véritable mine d'or, et il est très actif. Si tu t'y met, je te conseille de trainer de temps en temps au hasard des discussions, et quand tu vois un truc qui te plait, prends le fichier et sauvegardes le dans un coin, ça pourra te servir (ce que j'ai fait pour tes userforms).
Encore une ressource que j'utilise : Formation Excel VBA JB Ce site est TRÈS complet. Tellement qu'il est difficile de s'y retrouver ... Je te conseille de t'y rendre quand tu butes sur quelque chose ou que tu veux t'initier à un aspect particulier (genre les tableaux fictifs, les dictionnaires ....), il propose pas mal de solutions clefs en main. (Évites d'y aller juste pour trainer, sinon tu vas t'y perdre et t'en dégouter)
Et pour les opérations simples, il y a le gentils enregistreur de macro, qu'il faut toujours revoir pour virer tout le superflu (tous les selects entre autre)

Après, quelles connaissances as-tu de la programmation en général ? J'avais personnellement une petite base sur les boucles (for, while), les conditions (if, select case). Si tu as quelqu'un pour t'expliquer clairement ce qu'est un langage objet, c'est encore mieux (personnellement, c'est à force d'utiliser le vba que j'ai compris).




Edit : Ah, au fait, quelques astuces que j'ai apprises très récemment et qui peuvent aider :
- Pour parcourir ton code ligne après ligne, il y a la touche F8 ;)
- la commande "Debug.print mavariable" permet d’écrire un texte dans la boite de dialogue dédiée de la fenêtre VBA


Edit : PJ supprimée pour espace forum, voir message page 3
 
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
314 628
Messages
2 111 337
Membres
111 105
dernier inscrit
Joffrette