Optimisation du code VBA

sa été réédité 14h29

réédité 11052017 a 9h23

Bonjour Exceleurs(es),

J'ai un petit soucis de programmation et je cherche conseil ou astuces voir optimisation de mon code .

Mon souci se base essentiellement sur le fait de pouvoir choisir sur chacune de mes listes déroulantes.

En fonction du choix que j'ai fait. J'affiche un descriptif dans ma listView.

Par la suite, je souhaite réaliser un fichier word et pdf, de ce que j'affiche à partir de ma listView.

Les listes déroulantes : choix 1 choix 2 choix 3 peuvent être à tous moment changer donc il faut que sa suit derrière.

Donc j'ai réalisé une fonction remplir().

A chaque action d'une de mes trois listes déroulante j'affiche le descriptif.

Dès que j'ai le descriptif cela m'affiche les options en fonction de mes trois choix: ( et oui j'ai des options qui sont incompatible en fonction du choix que l'on fait)

Dans la liste des Options, impossible de cocher la même lettre dans sa catégorie.

Sur listView2 j'affiche les options et je récupère le nombre d'options cochés et sa somme.

un groupe d'option fait partie d'un sous chapitre (notés chapXssChapX)

Pour générer mon fichier word et pdf, je suis partie d'une feuille excel en créant une en tête de page et un pied page.

nombre de feuilles est de 6 feuilles qui ont pour nom (PRESENTATION,CORPS,BORDEREAU DES PRIX, CONDITION,REGLEMENT,PLAN).

Dans chacune de ces feuilles, je récupère des informations:

PRESENTATION : RIEN JUSTE LA DATE LE VENDEUR ET L'ECRIVAIN ET IMAGE DU BOUQUIN EN FONCTION DES TROIS CHOIX

CORPS : CE QU'IL Y A DANS LES DEUX LISTVIEWS C'EST A DIRE LE DESCRIPTIF ET LES OPTIONS COCHES

BORDEREAU DES PRIX : SOMME DES OPTIONS ET LE COÛT TOTAL

CONDITION: RIEN

REGLEMENT: RIEN

PLAN : IMAGE EN FONCTION DES TROIS CHOIX.

L'algorithme que je souhaite faire pour remplir la feuille "CORPS", et le même principe que de remplir ma listView.

Je peux placer directement le descriptif dans leur cellule tout en ajoutant les options que j'ai coché dans leurs catégories au fur à mesure et donc faire un retour arrière si il supprime l’option.

Ou je récupère le descriptif et pour chaque sous chapitre; une ligne en dessous options choisies je place le max options que je peux avoir dans sa catégorie. Et sa pour chaque sous chapitre; à chaque fois qu'il coche une option en fonction de son ordre dans sa catégorie je le place. Je pars de la fin c'est à dire Chap6 et je supprime les lignes vides entre le dernier option coché et le sous chapitre ou chapitre.

Sur le ficher que j'ai jointsla partie remplir le CORPS n'ait pas encore faite. Et le remplissage des options, je vous enverrai la nouvels version dans une heure. C'est fait avec la condition sur le choix 3 si c'est petit je ne met pas les options du chapt2 dusous chapitre 3

je m'attaque au remplissage de mes feuilles (CORPS ...)

Car je dois fixer mes chapitres et souschapitres en fonction de la cellule. Et écrire le code pour la listview2]

Aujourd'hui, j'ai fini la partie ou je dois remplir le CORPS sur le fichier joints sur le clic du bouton valider il remplir la feuilles CORPS.

il me reste à faire une fonction nettoyageDevis(nomfeuille,numligne,numcol) avant de valider il faut nettoyer la feuille car devis précédent.

Trouver une fonction qui me permettra de générer avec en paramètre la feuille ou je vais chercher mais infos et ou je commence genererDevis(nomfeuille,numligne,numcol).

Merci de votre lecteur et de votre passage.

N'hésitez pas à me questionner si c'est incompréhensible (désolé d'avance)

ps: Si vous postez un message, que votre message soit rempli d'une information pertinente

En attente de vous lire je retourne pianoter sur mon éditeur vba à plus tard.

11exemple.xlsm (66.90 Ko)
11exemple.xlsm (151.92 Ko)

Bonjour Excelleurs(es),

J'ai bien avancé sur mon projet mais voilà je n'ai pas pris le temps de modifier certaines choses ou de l'optimiser en créant des fonctions. J'ai du code qui est rémanente (merci d'être conciliant).

Alors le fichier Excel que je vous joins contient ce que je souhaitais faire.

Récapitulatif : en fonction du choix que je fais, j'affiche le descriptif technique et ses options

Sur la partie options je note le nombre des options et la somme total des options. A la validation, j'affiche le touts dans la feuille bordereau des prix.

Ce qu'il me reste à faire et de trouver une fonction qui prend en compte le nombre de caractère qui permettra d'élargir les cellules et de renvoyer le textes à la ligne.

vous verrai que j'ai modifié les onglets du classeurs si vous cliquez sur l'onglet devis et sur créer un devis sa lancera le formulaire et un onglet burean d'Etude(exprès fautes frappe) aussi mais rien n'ai fait de ce cotés(les données ils y sont pas.

Merci de m'avoir lu,

n'hésitez pas à me questionner sur le fonctionnement

à vous lire.

19exemple.xlsm (226.64 Ko)
Rechercher des sujets similaires à "optimisation code vba"