Insertion de chapitre - Dur dur

Bonjour,

Pour l'impression de la feuille KGV, on parle bien de la plage A1:I40

Il faudrait, si c'est possible, que l'on puisse voir lors de l’aperçu avant impression la page de garde avec le devis, ou la minutes avec le KGV.

Il faut ensuite que l'utilisateur puisse choisir l'imprimante qu'il souhaite, avec les réglages qu'il souhaite (recto-verso, agrafé, couleur...)

Merci à toi et bonne journée.

Bonjour,

Pour faire un aperçu avant impression et, éventuellement, conserver une copie électronique...

Tenant compte que la feuille KGV s'imprime en paysage ...

J'ai pensé produire un PDF assemblé.

Pour cela, j'ai besoin de connaître les lecteurs PDF sur les machines ... est-ce tous Acrobat Reader ?

Et quelle version est-ce?

En attendant ... je joins un fichier avec les autres demandes.

ric

Bonjour,

Je viens de tester le fichier.

Jusque-là tout correspond aux demandes.

Petite précision, concernant l’impression, lorsqu’il s'agit de l'impression de la page de garde avec le devis, tout est en mode portrait.

Pour l'impression de la minute et du KGV, tout est en mode paysage.

Concernant les lecteurs PDF, tous ne sont pas sur Acrobat Reader, et ceux qui le sont ne sont pas tous sur la même version

Je pense qu'il vaut mieux resté sur l'aperçu classique d'excel avec le choix de l'imprimante. Pour la copie électronique, l'utilisateur pourra choisir l'imprimante PDF (PDFCréator ou autre).

Arnaud.

Bonjour,

J'ai l'impression que l'impression ne m'impressionne pas.

Les largeurs de colonne de la feuille "Page de Garde" sont complètement différentes de celles de la feuille "Bordereau". On ne peut donc pas placer une feuille en dessous de l'autre pour l'aperçu avant impression ... idem entre "Bordereau" et "KGV".

L'impression en mode PDF avec l'utilitaire "PdfCreator" pourrait être une éventualité; il permet d'assembler des documents. Si on choisit cette option, il devrait être installé sur les machines qui imprimeront ce document ... y aura-t-il des restrictions à ces installations.

L'autre éventualité est de gérer chacune des feuilles indépendamment.

L'impression sous Excel m'a toujours fait un peu suer.

Il se peut aussi que je ne connaisse pas toutes les entourloupettes à faire dans un cas semblable.

Pour l'instant je cogite.

ric

Bonjour,

Il est vrai que de ce que j'avais vu dans les forums, l'aperçu et l'impression sont des éléments pas simple à gérer.

Lorsque j'avais fait le test avec mes macros, j'obtenais un résultat pas trop mal (mais parfois avec plantage sans savoir pourquoi ! Obliger de fermer le fichier).

Pour la minute + kgv, de mémoire ça ne posait pas de problème.

Par contre pour la page de garde + le devis, j'avais le problème que j'ai un logo situé entre les lignes 45 et 51 de la page de garde qui n'apparaissais jamais !

Ce qui est fou, c'est que si on sélectionne avec la touche "ctrl" les deux feuilles souhaitées ("page de garde" et "bordereau"), puis qu'on lance un aperçu avant impression, ça fonctionne !!

Concernant l'obligation de posséder l'outil PdfCreator, je ne suis pas pour, si ça fonctionne il faut que ce soit sans autre logiciel.

Sinon ce n'est pas grave pour cette fonction, ce n'est pas non plus essentiel.

Ci-dessous ce que j'avais comme code. Par contre je ne sais pas si ça fonctionne avec la version du fichier actuel.

Code pour minutes + kgv

Sub Minutes_KGV()

With Sheets("Bordereau").PageSetup
            .Orientation = xlPortrait
            .Orientation = xlLandscape

Sheets("Bordereau").PageSetup.PrintArea = ("A:M")

End With

With Sheets("KGV").PageSetup
            .Orientation = xlPortrait
            .Orientation = xlLandscape

    Sheets("Bordereau").PageSetup.PrintArea = ("A:M")

End With

Sheets(Array("Bordereau", "KGV")).Select

ActiveWindow.SelectedSheets.PrintPreview

End Sub

Code pour page de garde + le devis

Sub Page_de_garde_devis()

With Sheets("Page de Garde").PageSetup
        .Orientation = xlLandscape
        .Orientation = xlPortrait

Sheets("Page de garde").PageSetup.PrintArea = "$A$1:$I$53"

End With

With Sheets("Bordereau").PageSetup
    .Orientation = xlLandscape
    .Orientation = xlPortrait

Sheets("Bordereau").PageSetup.PrintArea = "B:G"

End With

Sheets(Array("Page de garde", "Bordereau")).Select

ActiveWindow.SelectedSheets.PrintPreview

End Sub

Bonjour,

Je note bien les commentaires.

Je cogite sur le sujet.

Rien de mieux que faire autre chose pour que la lumière brille à nouveau.

ric

Bonjour,

Je t'avais mis sur la glace ... la glace a fondu ... je suis donc de retour...

Il restait l'impression.

Je me suis basé sur les codes que tu as fournis dernièrement.

Les tests semblent révéler que ça fonctionnerait.

Je te laisse t'amuser à vérifier ...

A+

ric

Bonjour ric,

Merci pour le fichier, je teste ça dans la journée et je vais le faire tourner auprès de 2 ou 3 collègues pour voir ce qui en ressort.

Je te ferais un retour ce soir ou demain.

Un grand merci à toi, car aujourd’hui nous avons un fichier, enfin non, un programme, qui est devenu bien sympathique.

Maintenant j'espère juste que l'on ne va pas me demander d'ajouter trop de nouvelle fonctionnalité ! Car je les connais mes collègues, plus tu leur en donnes, plus ils en veulent !!

Encore une fois, merci à toi, car sans toi se programme n'existerait tout simplement pas !

Bonjour Ric,

Excuse-moi, j'ai eu plusieurs contre-temps, et je n'ai pas réussi à faire face....

Mais me voilà de retour !

J'ai donc testé une nouvelle fois le fichier dans ça globalité, et il n'y a pas à dire, il déchire !!

Je n'ai pas décelé de problème (ou je suis passé à côté ), et mes 2 collègues qui ont essayé le fichier non plus.

Par contre ils ont 2 nouvelles demandes !

Demande n°1:

Pouvoir copier seulement les valeurs du devis (soit les colonnes B à G), avec conservation des mises en forme.

Il faudrait une fonction copie vers une feuille déjà existante qui serait nommée "Facturation", et une fonction copie qui serait identique à la première, mais qui copie sur une nouvelle feuille, avec autant de copie, et donc de nouvelle feuille que l'utilisateur aurait besoin.

J'ai pour le moment se bout de code:

Sub Copie_avec_forme()

'Je copie les colonnes B jusqu'a G de la feuille Bordereau vers la feuille Facturation
   Sheets("Bordereau").Columns("B:G").Copy
   Sheets("Facturation").Range("A1").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
                                            SkipBlanks:=False, Transpose:=False
   Sheets("Facturation").Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
                                            SkipBlanks:=False, Transpose:=False
   Worksheets("Facturation").Columns("A:F").Value = Worksheets("Bordereau").Columns("B:G").Value

End Sub

Je leur ai proposé, mais ils ont fait la remarque suivante:

- Toutes les cases de formule vide doivent le rester, et non pas indiquer 0,00€.

Demande n°2:

Avoir pour les options un fonctionnement similaire au fonctionnement des chapitres.

Aujourd’hui, les options sont tout à la fin du document, en dessous des conditions et signature, ce qui n'est pas spécialement le bon emplacement.

L'idée serait:

  • Un fonctionnement identique à l'insertion des chapitres, sauf qu'il n'y a pas de récapitulatif.
  • Une option est une copie du chapitre source, renommée en "option xxx".
  • L'insertion de ligne et de détail est identique au chapitre.
  • Afin de simplifier la création de cette nouvelle fonction, je pense qu'il est préférable de partir sur de nouvelle macro avec de nouveau bouton, pour ne pas toucher à ce qui fonctionne actuellement. Surtout que les contrôles ne sont plus les mêmes (je pense à l'insertion des lignes et des détails, avec le contrôle de position à l'intérieur d'un chapitre).
On aurait donc 4 nouveaux boutons: "Ajouter lignes option" ; "Ajouter détail option" ; "Ajouter option" ; "Supprimer option"

- Enfin, la position des options ne serait plus en fin de document, mais juste 2 ligne en dessous de la ligne "Fin de récap"

Voilà pour les retours utilisateurs.

Honnêtement je m'attendais à avoir la demande pour la copie, car ça avait déjà été envisagé en interne, dans les débuts de la mise en place du fichier. Mais pour le coup des options.... je ne l'ai pas vue venir celle-ci !

À toi de me dire si c'est quelque chose que tu souhaites intégrer ou pas, car je suis bien conscient que c'est encore beaucoup de taf...

J'ai prévenu mes collègues que le fichier était déjà très bien, et que le reste des nouvelles fonctionnalités ne serait peut-être pas intégrées.

Encore une fois, un grand merci à toi pour tout le travail déjà accompli ! T'es un boss

Bonjour,

Aujourd'hui, je dois sortir.

Dès mon retour, je regarde cela de près.

ric

Bonjour,

... mais qui copie sur une nouvelle feuille, avec autant de copie, et donc de nouvelle feuille que l'utilisateur aurait besoin ...

Et comment nomme-t-on ces nouvelles feuilles ...

... Facturation (2), Facturation (3), Facturation (x) ??

Je suis rendu à cette étape.

Aura-t-on besoin de code pour les supprimer ?

' #####################

Pour la 2e demande .... que penser de l'idée que "Option" soit incorporé au chapitre ?

On insère un chapitre, option est déjà au bas du chapitre.

On supprime un chapitre, option est supprimé aussi.

Option pourrait avoir peu de lignes et des boutons pour ajouter au besoin.

Dans Option, ajouter ligne ou ajouter détails .... seraient aussi de 10 lignes ?

ric

Bonjour,

Les nouvelles feuilles seraient nommées à la manière d'excel, c’est-à-dire feuille 1, feuille 2....

Pas besoin de bouton pour les supprimer. En fait elles seront créées plutôt rarement, c'est juste qu'il faut que l'on a la possibilité de le faire. Par contre la copie vers facturation sera créée systématiquement.

Concernant les options, il faut que cela reste à part des chapitres. C'est quelque chose qui reste indépendant, et qui n'est pas systématique dans notre mode de fonctionnement.

Pour l'ajoute ligne ou de détails, oui se seraient aussi de 10 lignes.

Merci à toi.

Bonjour Ric,

Houlala je crois que j'ai pas su m'expliquer correctement.

Tu pars sur une fausse route, je suis désolé.

Les options n’ont aucun lien avec les chapitres, hormis le fonctionnement qui reste sur le même principe.

On pourrait même imaginer que l'utilisateur ne souhaite mettre que des options et aucun chapitre (même si ça me parait improbable).

Je joins un fichier avec la position souhaitée des options.

Pour récap:

  • Avoir le même fonctionnement que celui des chapitres pour l'insertion, la suppression, l'ajout de lignes et de détail. Sauf qu'il n'y a pas de récapitulatif. Pour le fonctionnement, on aurait 5 nouveaux boutons: "Ajouter lignes option" ; "Ajouter détail option" ; "Ajouter option" ; "Supprimer option" et "Supprimer lignes".
  • L'option est une copie du chapitre source, renommée en "option xxx".
  • Enfin, la position des options ne serait plus en fin de document, mais juste 2 ligne en dessous de la ligne "Fin de récap" comme sur le fichier joint.

Je suis désolé je n'ai pas pu consulter le forum plus tôt et ça m’embête car du coup tu a bossé pour rien...

Dis-moi si le fichier joint est assez claire, sinon j'essaierais de trouver une autre façon d'expliquer ce que je souhaite

Bon courage et encore désolé...

Bonjour,

... Je suis désolé je n'ai pas pu consulter le forum plus tôt et ça m’embête car du coup tu a bossé pour rien ...

Comme je l'ai déjà mentionné, je suis en apprentissage ... je ne bosse pas pour rien ... j'apprentis ...

... Tu pars sur une fausse route ...

... Tous les chemins mènent à Rome.

Oui, c'est suffisamment clair.

ric

Bonjour Ric,

Mais comment fais-tu ! Toujours optimiste, de bonne humeur ...

Ça doit-être top de t’avoir en collègue ou patron !

Moi ici, ils vont juste finir par nous avoir à l'usure !

Encore une fois, merci pour ton investissement sur ce fichier, ta patience et ta bonne humeur !!!

Allô!

... ils vont juste finir par nous avoir à l'usure !

Voici deux liens à faire passer à tes boss ...

https://www.linkedin.com/pulse/un-employ%C3%A9-heureux-est-performant-h%C3%A9l%C3%A8ne-meynier-1

Voici donc la version 48 ... rien de moins ...

J'avoue avoir la tête pleine avec mes cours, mes autres projets et le tien.

Je vais donc te laisser tester plus à fond.

Les blocs "Option" se gèrent comme les "Chapitre"

Le bouton "Copier vers feuille Facturation" fait une autre copie de la feuille Facturation si elle existe déjà.

On peut ainsi se retrouver avec Facturation(1), Facturation(x)....

Facturation étant la plus récente.

Si c'est un problème, je pourrai corriger.

Les boutons verts sont pour les Chapitres, les boutons jaunes sont pour les blocs Option.

En souhaitant qu'il ne persiste pas trop de coquilles.

ric

Bonjour Ric,

Un grand merci à toi pour toutes ces nouvelles modifications !

Je récupère le fichier et je vais prendre le temps de bien le tester.

Bon courage à toi pour tes cours et tes autres projets.

À bientôt

Bonjour Ric,

J'espère que tu vas bien et que tes cours et autres projet avance comme tu le souhaites.

En ce qui me concerne, j'ai enfin pu prendre du temps pour tester le fichier V48, pratiquement un mois après que tu l'as posté sur le forum

Aujourd'hui je te joins la V49, ou j'ai apporté quelques changements esthétiques, modifié quelques formules (dans le code et en dehors du code) et ajouté 2 ou 3 petites fonctions.

J'ai cependant un problème avec la suppression des chapitres.

En effet, lorsque je supprime un chapitre, la ligne de récap associée ne se supprime pas.

La macro était fonctionnelle dans la dernière version postée (V35).

J'ai donc voulu comparer les codes des 2 versions, mais je ne retrouve pas le code correspondant à la suppression de chapitre....

De même, j'aurais souhaité réorganiser les boutons d'actions des macros, mais je ne sais pas comment....

Concernant les autres fonctionnalités, je n'ai pas remarqué de problème, le fonctionnement des options est très bien, idem pour le fonctionnement de la copie pour facturation, le principe me va très bien.

Un grand merci à toi.

Arnaud

Bonjour,

Pour la suppression des chapitres dans Recap ... j'ai dû faire trop de ménage avant de soumettre le fichier. Car, V48, que j'ai soumis, souffrait déjà de l'ablation de la ligne.

C'est cette ligne qui manquait dans le Userform "Suppression de chapitres" > bouton "Supprimer"...

          ' Idem pour la ligne du chapitre sous Récapitulatif
      Range("A" & LR & ":M" & LR).Delete Shift:=xlUp   ' << celle-ci manquait 

         ' Colonne A et ligne de la plage nommée du chapitre jusqu'à M et ligne de la plage nommée Total + 1 (le chapitre se termine une ligne plus bas)
      Range("A" & LD & ":M" & LF).Delete Shift:=xlUp      ' Suppression en remontant ce qui est en bas

... j'aurais souhaité réorganiser les boutons d'actions des macros, ...

Si tu veux dire leur déplacement et leur redimensionnement >

- déplacement > désactiver la protection de la feuille Bordereau > onglet Développeur > clique sur "Mode Création" > dès lors, en cliquant droit sur un bouton > 8 poignées de redimensionnement apparaissent ainsi qu'un menu contextuel donnant accès aux propriétés ( propre au type de boutons "Controle ActiveX" ) > déplace de curseur sur le bord du bouton > le curseur devient croix fléchée > clic gauche et déplace le bouton > tu peux le placer ailleurs temporairement.

- propriétés : dans le menu contextuel cité précédemment > Propriétés donne accès à toute une fenêtre de propriétés pour de fins réglages de dimensions (width - height) ou de placement (top - left) entre autres.

Quand les manips sont terminées > cliquer à nouveau sur "Mode Création" pour le désactiver. > Enregistrer. > la protection de la feuille peut être remise manuellement > ou automatiquement dès la prochaine action d'un bouton.

ric

Tu m'impressionnes toujours autant pour ta réactivité et la qualité de ce que tu produis ! Chapeau bas

Je viens de tester et la suppression fonctionne nickel !

Concernant les boutons, oui il s'agit bien de leur déplacement et leur redimensionnement.

Merci pour les explications, je vais pouvoir satisfaire les demandes des utilisateurs sur ce point.

Encore merci à toi et bon courage pour la suite

Rechercher des sujets similaires à "insertion chapitre dur"