XL 2016 remplir des étiquettes selon multi critères

Sirberthoult

XLDnaute Occasionnel
Bonjour le forum,

je créer une application pour rédiger des étiquettes pour une biberonerie. confection de plusieurs dizaine de biberons par jour voir beaucoup plus en hiver...

j'ai bouclé ( je pense ...) la partie interface utilisateur pour rassembler les informations concernant la prescription...elle n'est surement pas parfaite...mais me convient.

Mon soucis, réside dans le remplissage de l'onglet "étiquettes" en fonction des informations sélectionnées grâce la SUB remplissage( ) de l'userform 2

en effet je dois optimiser chaque étiquettes en fonction de ce que chaque biberons contiendras.
j'ai réalisé un exemple avec le nom "AMANDO Gino", il faut cliquer sur le rond bleu de l'onglet "données" puis le bouton "réaliser des étiquettes" puis sélectionner dans le service de "HDJ" l'enfant amando gino et visualiser l'objectif de remplissage dans l'onglet "étiquette" : je n'ai pas besoin de couleur c'est juste pour l'exemple pour comprendre comment se repartisse les infos.

je cherche un début de solution pour adresser chaque infos à la bonne case dans chaque étiquettes. le bon lait en fonction de l'horaire (parfois 2 lait différents à des horaires différent), des compléments ( dans chaque biberons ou à part sur d'autres étiquettes ) et des épaississants ( dans chaque biberons ou à part sur d'autres étiquettes )...

bref comment remplir les étiquettes avec des informations qui peuvent varier selon les horaires qui varient aussi selon les patients...j'aimerais un exemple de codes que je pourrais compléter moi même.

merci d'avance pour vos propositions
 

Pièces jointes

  • les eti en neo 2 Remplissage 2.xls
    507 KB · Affichages: 13

Sirberthoult

XLDnaute Occasionnel
Salut

je viens de voir ta PJ avec l'astérisque c'est nickel.

maintenant, j'ai un autre soucis... comme je te l'ai dis j'ai des planches d’étiquettes composées d'un grande étiquettes en haut puis 5 lignes par 4 colonnes de petites étiquettes dessous. j'arrive à commencer à écrire à la ligne "17" pour similer la grande étiquette.
or, quand dois s'imprimer plus de 20 étiquettes ( exemple plusieurs laits et /ou des enrichissements "à part" ) comment modifier le code pour qu'il passe à un autre onglet pour remplir la suite des infos sur une deuxième planche d'étiquettes ?

ensuite j'ai essayer de modifier la taille du contenu de la cellule mais ce n'est pas concluant...ça me fait erreur...
ListeEtiquettes(i).Enrichissement.fontsize =12
je voulais adapter en fonction du nombre de ligne d'enrichissement... pour la lisibilité ...

merci encore
 

vgendron

XLDnaute Barbatruc
Hello

pour modifier la taille des cellules, c'est les propriétés de la cellule qu'il faut modifier..
la.. ca n'a aucun sens: ListeEtiquettes(i).Enrichissement.fontsize =12
ListeEtiquettes est un object VBA défini par un type perso
la propriété "fontsize" n'existe pas pour cet objet.; et meme si, elle ne serait qu'une information à utiliser par la suite

bref..
pour modifier la taille ou la couleur ou toute autre donnée de l'aspect, c'est dans cette partie que tu peux intervenir

VB:
With Sheets("Test Etiquettes")
        .Activate
        .Cells.ClearContents
        For i = 1 To UBound(ListeEtiquettes)
            ligne = 1 + (Int((i - 1) / 4)) * 5
            colonne = 1 + ((i - 1) Mod 4) * 8
            .Cells(ligne, colonne) = ListeEtiquettes(i).Nom
            .Cells(ligne + 1, colonne) = ListeEtiquettes(i).Prénom
            .Cells(ligne + 1, colonne + 7) = ListeEtiquettes(i).Chambre
            .Cells(ligne + 2, colonne) = ListeEtiquettes(i).Formule
            .Cells(ligne + 3, colonne) = ListeEtiquettes(i).Enrichissement
            .Cells(ligne + 3, colonne + 4) = ListeEtiquettes(i).HeureBib
            .Cells(ligne + 3, colonne + 7) = ListeEtiquettes(i).Qté
            .Cells(ligne + 4, colonne + 5) = ListeEtiquettes(i).Jourbib
            .Cells(ligne + 4, colonne + 4) = ListeEtiquettes(i).Asterisque
        Next i
    End With

avec par exemple
.Cells(ligne + 3, colonne).fontsize=12

pour la grande étiquette / planche...
il faudrait que tu repostes le fichier avec une planche "modèle"
et si j'ai bien compris, c'est une planche par feuille (on peut mettre plusieurs planches sur un même onglet mais avec des sauts de pages
 

Sirberthoult

XLDnaute Occasionnel
salut,

en te lisant, c'est évident... excuse moi

ceci dit j'ai essayé de l'écrire à cette endroit comme dans ton exemple mais ca ne fonctionne pas...il doit y avoir une astuce ou alors il n'accepte pas de changer la police sur plusieurs cellules en même temps.

sinon j'ai retravaillé les "planches d'étiquettes" et j'ai mis 2 planches à la suite sur le même onglet et j'ai commencé à remplir la grande étiquettes avec l'ensemble des données ...j'ai des choses concluantes et d'autre non...mon code est fastidieux pour ce qui fonctionne mais fonctionne...
et surtout je n'arrive pas a faire les calculs avec les pourcentages...je souhaiterais faire apparaitre la dose en grammes de chaque enrichissements par biberons et le total "journalier" en grammes . mais il y a un soucis avec le format des valeurs qui empeche les calculs...

je ne sais pas non plus comment "sauter" sur la deuxiéme planche au besoin.

en continuant mes tests je me rend compte que j'ai un soucis, dans la partie " gestion des laits" celles ou on peut créer, modifier ou supprimer des nouvelles marques de lait... cela veut bien créer ou modifier les laits, mais la suppression est recalcitrante et je doit renouveller plusieur fois la suppresion pour qu'elle soit effective... si tu pouvais y jeter un oeil.

merci.
 

Pièces jointes

  • les eti en neo 2 Remplissage 11.xlsm
    206.5 KB · Affichages: 3

vgendron

XLDnaute Barbatruc
Hello

en PJ, une version 12 pour remplir les plaquettes d'étiquettes
1) j'ai modifié en ajoutant des formules pour recopier la grande étiquette si il y a une étiquette standard sur la plaquette
1 plaquette= 43 lignes (dont 18 pour la grande étiquette)

==> le code ne remplit la grande étiquette qu'une seule fois==> ce que tu avais fait la remplissait à chaque biberon

si je ne dis pas de betises le maximum d'étiquettes standard que tu peux avoir à imprimer est de 49
(voire plus si complément. mais la. j'ai vu un bug. comme cette partie n'est pas complète. à voir)
bref.. à priori un max de 3 plaquettes seront utilisées==> au pire. il faudra ajouter les formules pour une 4eme


pour les calculs de pourcentage.. peux tu les faire à la main? en supprimant les "ml" des cellules qui servent au calcul

pour la gestion des laits.. j'ai pas du tout regardé le second formulaire pour l'instant
 

Pièces jointes

  • les eti en neo 2 Remplissage 12.xlsm
    209 KB · Affichages: 3

Sirberthoult

XLDnaute Occasionnel
Salut

c'est super cool d'avoir perfectionné ce bout de code ...
effectivement j'ai vu ta note concernant le fait qu'on ne verifier pas l'existence d'un lait à la création pour eviter les doublons... surement que cela serait mieux.
sinon penses tu qu'il serait possible de faire apparaitres les listes de laits, triées par ordre alphabétique et non pas de création ? je pense que ca pourrais etre mieux lors de la recherche...

de mon coté je planche à fond sur la grosse étiquettes pour faire apparaitre les calculs de doses ... et je suis entrain de finaliser le probléme des "compléments" ... bref je te montre ca bientot. c'est plus long pour moi...
 

vgendron

XLDnaute Barbatruc
Hello

j'ai ajouté la gestion du complément
1) on ne peut saisir qu'un nombre
2) s'il est remplit, on ajoute UN biberon (=UNE étiquette) de lait 1 (meme formule)
pour le créneau horaire, j'ai mis "Frigo" puisque il pourra etre donné à tout moment de la journée
et j'ai ajouté le mot "Comp"
3) j'ai donc aussi ajouté une colonne dans la BD3 pour sauvegarder l'info
 

Pièces jointes

  • les eti en neo 2 Remplissage 13.xlsm
    212.2 KB · Affichages: 1

vgendron

XLDnaute Barbatruc
ici, j'ai modifié la "grande étiquette" pour que les quantités soient inscrites dans des cellules indépendantes avec un format perso qui affiche ml==> on peut effectuer des calculs avec ces cellules
j'ai aussi ajouté l'insciption de la quantité "complément" sous le total 1 et j'ai corrigé le calcul du total

j'ai aussi changé les .cells (2,3) par des .range ("C2") ==> plus pratique pour s'y retrouver
 

Pièces jointes

  • les eti en neo 2 Remplissage 13.xlsm
    216.7 KB · Affichages: 2

Sirberthoult

XLDnaute Occasionnel
Salut

désolé pour mon retard, c'est juste que j'ai été très long à trouver la bonne "morphologie de ma grange étiquette... puis les calculs de doses...

j'ai revu avec mes "biberoniéres " celles qui prépareront les bib et j'ai modifié le frame du complément pour y mettre les infos dont elle auront besoin. pour résumer j'ai du créer un complément 2 pour le lait 2.et en info rouge la ration de chaque laits en fonction des checkboxs. en sachant que ces informations concernant "les compléments" n'ont aucun intérêts dans les étiquettes ! elles servent, juste pour les calculs de doses de la grande étiquette comme tu pourras le constater dans la pièce jointe.

j'ai pas pu encore regarder les pièces jointes que tu m'a envoyé, surement des améliorations intéressante à ajouter.

pour le tri des combos, en faite j'ai du buguer pendant mes tests, j'avais cru que ça ne trié pas...désolé.

pour l’impression des étiquettes, je penses que la copie de la grande étiquettes sur les autres grandes étiquettes dois être vba et conditionné si la planche doit sortir...car en lançant l'impression il va sortir 3 planches avec des formules vide donc des planches vide...j'espere me faire comprendre...
 

Pièces jointes

  • les eti en neo 2 Remplissage 14.xlsm
    246.3 KB · Affichages: 5

Sirberthoult

XLDnaute Occasionnel
j'ai oublié, ...il reste à allez chercher le taux de reconstitution des laits qui sont choisi...j'ai mis un encart vert pour faire apparaître le taux sur les grandes étiquettes...il faudra compléter les calculs de quantité de poudre selon ce taux.

j'ai réfléchi à la gestion des "patients"... je penses qu'il faudrait ajouter lors de l’impression, la date du jour en BD3, et si par exemple elles n'ont pas préparé de biberon pour cet enfant depuis 5 jours ( au pire je modifierai à l'usage cette variable ) alors ont supprime la ligne de données. comme ça elles ne devraient jamais avoir de liste trop longue à manipuler. qu'en penses tu ?
 

vgendron

XLDnaute Barbatruc
Hello

alors. pour les calculs dans tes formules.: comme tu colles les nombres avec du texte dans la meme cellule pour pouvoir ajouter l'unité, cela t'oblige à faire des formules à rallonge pour extraire le nombre et faire le calcul..

j'ai modifié quelques éléments
1) j'ai nommé différentes plages de la feuille d'étiquettes
==> Etiquette_Grande
==> planche_standard1 2 et 3

2) J'ai séparé le texte du nombre dans les cellules:
exemple: en J4 tu avais: "Quantité: 25ml" (impossible de faire du calcul)
ca devient
en J5: Quantité (juste le texte)
en M5: 25 (l'unité "ml" est affichée avec un format de cellule personalisée

3) J'ai nommé tout un tas de cellules==> celles qui contiendront les différentes valeurs
Ainsi M5 s'appelle Qté1

==> ca simplifie le code
==> ca simplifie aussi les formules
et plus besoin d'avoir les nombres repris à droite et à gauche dans la feuille

==> rester à vérifier toutes les formules de calcul

je n'ai pas encore repris tout le code pour intégrer le complément 2 (et ta macro Labelqté que j'ai renommée "Complément")==> j'ai l'impression qu'elle est lancé un peu trop souvent..

Cela dit, dans la frame complément, j'ai mis deux "sous frame" : une par complément.. ca simplifie leur affichage ou non
 

Pièces jointes

  • les eti en neo 2 Remplissage 15.xlsm
    227.1 KB · Affichages: 1

vgendron

XLDnaute Barbatruc
Une question sur les étiquettes:
la planche que tu imprimes. c'est UNE seule étiquette que tu découpes ensuite? ou la grande et les petites sont prédécoupées??
la question étant de savoir si on peut modifier la largeur des colonnes.. parce que comme elles ne sont pas toutes de la même largeur, ca pose des problèmes pour l'affichage des nombres avec 2 chiffres après la virgule
parfois, on lit 3ml, alors qu'en fait, la valeur c'est 2.5ml... ca me semble important pour la préparatrice de lire les bonnes valeurs..?
 

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 693
Membres
103 641
dernier inscrit
anouarkecita2