Code long ? ComboBox et Impression

Bonjour à tous,

Sur le fichier que j'alimente, j'ai pu trouver un code à l'aide du forum, qui me permette à l'aide d'une liste déroulante (par validation des données) de :

1. Sélectionner le doc voulu

2. Faire un aperçu avant impression

Malheureusement, je dois dupliquer ce code en plusieurs fois ( + d'une dizaines de fois), le fichier sera lourd du coup ?

Savez-vous donc s'il est possible d'allèger au maximum ? Y a-t-il d'autres astuces pour que le fichier soit le moins lourd possible svp ?

En vous remerciant par avance

11fichier-test.xlsm (65.59 Ko)

Bonjour FeitaN

Je n'ai pas compris pourquoi vous deviez dupliquer ce code en plusieurs fois !?

@+

Bonjour Bruno,

Merci pour votre retour

En gros, imaginez qu'il y a plus d'une dizaine de "feuil1", parce que chaque document est différent et chaque feuille est donc indépendante par la même occasion. C'est pourquoi le principe du code sera quasi identique (hormis les cellules et nom feuille)

Je peux modifier le fichier test si je n'ai pas été assez précis pour avoir un exemple concret

Encore merci 😁

P.S: Sur mon 1er message, je ne me suis pas relu... J'ai remplacé la liste de zone déroulante par un contrôle de formulaire ActiveX

Re,

Avec un exemple prévis ce serait mieux effectivement

Sinon pour moi, il suffit de mettre le code dans un module et non dans la feuille elle même
et de déterminer l'ensemble des zones dans une variable tableau

A voir avec le nouveau fichier

@+

Re Bruno,

J'ai bien compris pour la partie module mais mettre les critères dans un tableau, un peu moins.

Vous voulez dire sous VBA même ?

Voici le fichier. J'ai simplement modifier copier coller la feuil1 en 6 autres. Et à simple titre d'exemple, j'ai modifié la feuil2, en changeant le nom de certains docs ainsi que leurs plages (inutile de le faire sur toutes toutes les feuilles, un exemple suffit je pense)

Merci encore pour votre aide

9fichier-test.xlsm (281.49 Ko)

Bonjour,

Y a-t-il quelque chose qui manque dans mon fichier ou explications ?

Veuillez m'excuser par avance si je n'ai pas été assez précis

Merci encore pour votre retour

Bonjour FeitaN

Pour moi il ne manque rien, sauf que votre problème est plus compliqué que prévu

Je ne sais pas quelle est la meilleure méthode du coup : nommer les différentes plages de chaque feuille, du style : Page1Doc1, Page1Doc2, etc..
Ou mettre ces plages dans une variable tableau

Pour aider à éclaircir la problématique : Combien aurez vous de feuilles au total ? Est-ce variable ? Le nombre de zones d'impressions sera t'il variable ?

@+

Bonjour,

Ce genre de document complètement déconnecté de la réalité n'est pas d'une grande utilité car il ne permet de faire que des suppositions.

Il faut fournir quelque chose de plus convaincant. Nom des feuilles, Nom des documents, plage nommée.

Il serait tentant de faire un UserForm impression.

Ce qu'il est attendu en outre c'est une feuille param comme ma feuille 8 (pas de plage disjointe) dans la colonne paramOr il convient de mettre pour chaque plage imprimé l'orientation 2 ou 1 il doit y avoir autant de chiffre que de doc imprimés. Pas besoin de séparateur dans cette colonne...

Nota le combo n'autorise pas de sélection multiple ce sera forcément ListBox...

3testimpm.xlsm (287.98 Ko)

EDIT : Bonjour Bruno

A+

Bonjour Bruno et Galopin,

Merci beaucoup pour vos retours,

Je comprends bien les attentes qu'il faut avant de se lancer mais ça sera encore une fois des noms que je donnerai aléatoirement afin de préserver la confidentialité.

Je vais re-peaufiner mon fichier test depuis le début :) afin que vous ayez l'ensemble du mécanisme du fichier. Les UserForm sont déjà utilisé pour alimenter directement tous les documents, donc pour moi les réutiliser serait répétitif. Bien évidemment, je suis ouvert à toute proposition si cette dernière est pertinente et reste simple dans l'utilisation

Je réponds aux questions de Bruno:

- Sur la base impression uniquement, il y aura 18 feuilles avec un nombre de documents variables (je ne me suis pas encore attaqué à cette partie, parce que je voulais d'abord finir le code sur un exemple puis dupliquer sur le reste mais ce n'est finalement pas une bonne idée)

- Non, 18 est fixe (que se passe-t-il si c'est variable ?)

- Oui chaque feuille possédera soit le même nombre, soit un nombre différent

Je reviens vers vous le plus vite possible, merci encore à vous 2 :)

Re,

Il serait intéressant que vous nus disiez ce que vont contenir toutes ces feuilles

@+

Re Bruno,

Oui, pas de soucis ! Je vous joindrai un autre fichier test + complet au plus tôt/dès que possible

merci encore pour votre retour :)

Bonsoir à toutes et tous,

Je viens de recréer une copie de mon fichier qui m'a pris énormément de temps, suite aux aides de Bruno et Galopin que je remercie

J'ai appuyé ce fichier sur un exemple concret comme vous me l'avez suggéré

Les paramètres ont été renseignés

Le fonctionnement du fichier:

1. Sélectionner un composant de l'ordi

2. Saisir les différentes infos le concernant, à l'aide d'un Userform

3. Tous les documents du composant sont tous directement alimentés

4. Impression de tous les docs, si erreur sur saisie et constat qu'après, impression d'un unique document

Essayant de rester simple, mon objectif est simplement d'avoir une notion de la possible faisabilité ou pas de cette problématique

Encore une fois, je suis novice, je n'ai ni votre niveau, ni votre expérience. Je suis donc naturellement ouvert à toute proposition qui pourrait alléger au maximum le fichier. Peut-être que je me répète trop avec les userform? Toujours le même code pour les feuilles ? Ou rassembler des actions en 1 par exemple ? Mon fichier dépassera les 5 Mo, c'est sûr.. Sans les docs, je suis à 1 Mo déjà..

Une petite question pour galopin01, pourquoi avoir ajouter la partie "TD"? Et nous sommes d'accord que pour l'impression au niveau de l'orientation, le premier doc représente le 1er chiffre (exemple: Fiche d'identification --> 2 ?)

2testimpm-1.zip (598.62 Ko)

Merci encore pour votre aide et n'hésitez pas à me dire si j'ai omis quelque chose

Vous souhaitant une bonne soirée

Bonjour,

Pourquoi la zone TD ?

C'est une option possible... Comme dit Bruno :

"votre problème est plus compliqué que prévu... Je ne sais pas quelle est la meilleure méthode..."

- Faire une feuille des paramètres avec toutes les plages répertoriées me semblaient une possibilité de résoudre cette problématique."

- Oui la série de chiffre représente l'orientation de chaque document. C'est pour éviter des colonnes inutilement. Mais il doit y avoir un digit par Zone d'impression...

Pour l'instant si Bruno s'en occupe je passe la main. Pour moi ça dépasse le cadre du forum :

Il me semble qu'avant de passer aux problèmes d'impression il faudrait se poser la question de la conception de ce classeur.

Il est clair que vous avez utilisé la méthode "bourrin" : Je met tout dans la poubelle et on tachera de faire le tri.

Si je devais me lancer sur un projet de ce type, Déjà il n'y aurait que 2 Userforms et pas 18

Ensuite il n'y aurait pas d'image dans le classeur (mais les images seraient importées "à la demande" (en fonction de la feuille active...)

Après faut-il vraiment 18 feuilles ou ne peut-on pas n'en avoir qu'une et y importer des pages Word ?... Je ne sais pas : Ça mériterait une analyse sérieuse !

La plupart des demandeurs foncent tête baissée, ils accumulent des feuilles, des décorations et pissent du code sans se poser de

question... Faire une feuille de paramètre éviterait de multiplier des tas de trucs inutiles et résoudrait tous ces problèmes de taille.

Quand une agence de voyage propose 260 directions différentes, vous imaginez qu'elle fait un document qui comprend tout ? photos, détails des excursions, tarifs...

Votre problème n'est pas très différent.

Bonne continuation.

A+

Bonjour,

Merci pour ce retour très constructif.

Comme je vous l'ai dit, je n'ai ni votre expérience, ni votre niveau ! Ce projet est une grande première pour moi et donc faire des erreurs est d'autant plus naturel.

J'ai bien compris que TD était une option mais quelle est son utilité ?

Chaque page est indépendante, votre idée stockage des feuilles sous un autre excel (ou word) et pas sur le même fichier, a l'air d'être une bonne idée (à essayer pour le coup . Donc au niveau des 2 USF, il aurait fallu créer un menu déroulant à l'intérieur même afin qu'il choisisse le document à remplir si j'ai bien compris ?

Pour continuer, même si les docs ont la même appellation, ils n'ont pas le même contenu, donc je ne peux pas du tout toucher à cette partie. Concrètement, il faudrait 18 feuilles !

Honnêtement, au niveau de la conception, je trouvais que c'était pas mal. Après, je n'avais pas remis les mêmes détails avec des cadres, une belle mise en forme, etc. Mais si vous avez une idée de conception, je veux bien l'entendre, je suis ici pour progresser. Le processus que j'ai défini est clair (cf. Fonctionnement du fichier), si cette partie est à revoir pour optimiser le fichier alors je suis à l'écoute

Merci pour votre retour

Belle journée

Bonjour,

Son utilité est dans son nom c'est une feuille de paramètres qui indique à la feuille ce qu'elle doit afficher en fonction des choix dans un premier UserForm (usfAccueil) Donc idéalement cette feuille de paramètres doit indiquer non seulement les plages à imprimer mais aussi l'emplacement des images à afficher et le lieu de stockage des images, les documents Word qui contiennent les paragraphes à stocker. etc... Ce n'est qu'un hypothèse : Les pages pourraient aussi bien en fait être des documents externes individuels (tout prêts) voire même des .pdf.

Ensuite non ce n'est pas le Userform qui choisit sa feuille c'est la feuille qui indique au UserForm ce qu'il doit afficher en fonction de la ligne des paramètres.

Je n'irai pas plus loin dans les détails. Un tel travail peut demander plusieurs jours de travail pour 2 personnes en contact étroit (téléphone ou vidéo)

Au mieux pour te fixer les idées je peux te proposer une simulation d'agence de voyages qui propose plusieurs"journées découverte" dans tous les départements français dont potentiellement 300 visites, 300 photos, 300 textes descriptifs, barêmes, prix selon direction choisie... (cliquables sur une carte de France)

L'ensemble du zip contenant seulement 70 directions (excursions) fait environ 2,6 Mo. On était parti d'un classeur qui ne comportait que 6 directions mais qui faisait 18 Mo !

Pour obtenir ce document (qui a demandé un mois de travail à 2) me communiquer votre adresse mail en MP

A+

Re,

J'avais bien compris le principe de la feuille paramètres, je n'avais juste pas compris la partie "TD", mais merci.

J'ai bien conscience que c'est assez fastidieux comme travail.

Je suis intéressé pour regarder la structure de votre travail si c'est possible. Je vous ai envoyé un message privé

En vous remerciant d'avance

Belle journée

Rechercher des sujets similaires à "code long combobox impression"