Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Gestion de stock pharmacie (entrée, sortie, graphiques)

MissSara

XLDnaute Nouveau
Bonjour à tous,

Afin d'assurer le suivi de stock d'une pharmacie associatif , j'ai repris un fichier excel proposé sur le forum (ci-joint) pour lequel j'aurais besoin d'effectuer des adaptations/ajouts et ainsi je sollicite votre aide ne maitrisant pas assez Excel :

Dans l'onglet pharmacie centrale

- Créer une alerte péremption à 30 j pour identifier les spécialités dont la date de péremtion est proche

- Créer une alerte péremption à 30 j+ alerte stock pour identifier les médicaments dont le stock mini est atteint et dont la date de péremption est proche

- Dans le menu Gestion de stock, comment faire pour entrer une commande de médicaments dans le stock (mettre à jour les quantités de chaque référence sans devoir à chaque fois modifier la quantité en stock , le stock mini et le stock maxi) ?

Un autre point majeur dont nous aurions besoin est de visualiser graphiquement (histogramme ?) la quantité des sorties de chaque médicament par mois et par destination idéalement. Par exemple pour la spécialite doliprane 300 mg sachet, je voudrais pouvoir identifier rapidement la quantité de ce médicament sortie chaque mois et selon la destination (dans la pharmacie nous fonctionnons en missions : mission A, mission B, mission C). Ce point nous aidera pour établir la commande mensuelle de médicaments.

Vous remerciant pour votre aide,

Bien à vous,
 

Pièces jointes

  • Suvi de stock pharmacie.xls
    245.5 KB · Affichages: 468

ChTi160

XLDnaute Barbatruc
Bonsoir le Fil , Jean-Marcel
@jean-Marcel
je me suis permis , sans savoir si cela était fait exprès , de modifier la procédure du Userform (Calendrier : PicDateXLD ) ainsi
VB:
Sub Affiche()
Dim X As String, PQ As Double
mois = Month(newdate)
an = Year(newdate)
' ****** date Pâques d'aprés prasadv@md2.vsnl.net.in
PQ = Evaluate("TRUNC(DATE(" & an & ",7,-CODE(MID(""NYdQ\JT_LWbOZeR]KU`"",MOD(" & an & ",19)+1,1)))/7)*7+8")
TB_AN.Value = Format(newdate, "yyyy")
TB_Mois.Value = Format(newdate, "mmmm")
DoEvents
' ****** décalage début de mois
l = lundi(Month(newdate), Year(newdate))
    For N = 1 To 38
        With Controls("CommandButton" & N)
                .Caption = Format(l + N - 1, "d")
                .BackColor = IIf(Weekday(l + N - 1, vbMonday) > 5, &HC0C0FF, &HC0FFFF)
            ' ****** hors période
            If Format(l + N - 1, "mmmm") <> TB_Mois Then
                .Enabled = False
                .Font.Bold = False
                .BackColor = vbWhite
              Else
                 .Enabled = True
                 .Font.Bold = True
                 ' ****** aujourd'hui
                 If l + N - 1 = Date Then '------------------------------Ici
                           .BackColor = vbGreen
                           .ControlTipText = Format(Date, "dddd d mmmm yyyy") & " Aujourd'hui"
                           .SetFocus
                 End If
                 ' ****** féries légaux
                 X = Format(l + N - 1, "ddmm")
                 Select Case X
                        Case "0101"
                               .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Jour de l'an"
                        Case "0105"
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Fête du travail"
                        Case "0805"
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Victoire 1945"
                              .BackColor = &HFFFFC0
                        Case "1407"
                              .BackColor = vbMagenta
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Fête Nationale"
                        Case "1508"
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Assomption"
                        Case "0111"
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Toussaint"
                        Case "1111"
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Armistice 1918"
                        Case "2512"
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Noël"
                        Case Format(PQ + 1, "ddmm")
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Lundi de Pâques"
                        Case Format(PQ + 39, "ddmm")
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Ascension"
                              .BackColor = &HFFFFC0
                        Case Format(PQ + 50, "ddmm")
                              .BackColor = &HFFFFC0
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy") & " Lundi de Pentecôte (reportable)"
                        Case Else
                              .ControlTipText = Format(l + N - 1, "dddd d mmmm yyyy")
                End Select
            End If
        End With
    Next N
End Sub
Car j'ai constaté que comme aujourd'hui nous sommes le 08/10/2024 le CommandButton qui porte le 8 est mis en Vert chaque année au mois d'octobre !
j'ai donc supprimé le Case Format(Date, "ddmm")
à voir donc
Jean marie
 

JM27

XLDnaute Barbatruc
bonsoir
@ChTi160
Salut Jean-Marie
Ce calendrier à été réalisé par Pierre-Jean et Modeste Gee-Dee
effectivement la date du jour est en vert quelque soit l'année.
Si tu vires dans le select case le Format(Date, "ddmm") tu ne l'as plus.
La meilleure solution serait d'afficher en vert seulement la date du jour dans l'année actuelle.
je vais réfléchir pour modifier.
J'aime bien ce calendrier.
 

JM27

XLDnaute Barbatruc
bonsoir
@ChTi160
et comme cela qu'en dis tu ?
VB:
Sub Affiche()
Dim X As String, PQ As Double
mois = Month(newdate)
an = Year(newdate)
' ****** date Pâques d'aprés prasadv@md2.vsnl.net.in
PQ = Evaluate("TRUNC(DATE(" & an & ",7,-CODE(MID(""NYdQ\JT_LWbOZeR]KU`"",MOD(" & an & ",19)+1,1)))/7)*7+8")
TB_AN.Value = Format(newdate, "yyyy")
TB_Mois.Value = Format(newdate, "mmmm")
DoEvents
' ****** décalage début de mois
l = lundi(Month(newdate), Year(newdate))
    For n = 1 To 38
        With Controls("CommandButton" & n)
            .Caption = Format(l + n - 1, "d")
            .BackColor = IIf(Weekday(l + n - 1, vbMonday) > 5, &HC0C0FF, &HC0FFFF)
            ' ****** hors période
            If Format(l + n - 1, "mmmm") <> TB_Mois Then
                .Enabled = False
                .Font.Bold = False
                .BackColor = vbWhite
            Else
                 .Enabled = True
                 .Font.Bold = True
                 ' ****** aujourd'hui
                 If l + n - 1 = Date Then
                 .SetFocus
                 .BackColor = vbGreen
                 .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Aujourd'hui"
                 End If
                 ' ****** féries légaux
                 X = Format(l + n - 1, "ddmm")
                 Select Case X
                 Case "0101"
                        .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Jour de l'an"
                 Case "0105"
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Fête du travail"
                 Case "0805"
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Victoire 1945"
                       .BackColor = &HFFFFC0
                 Case "1407"
                       .BackColor = vbMagenta
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Fête Nationale"
                 Case "1508"
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Assomption"
                 Case "0111"
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Toussaint"
                 Case "1111"
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Armistice 1918"
                 Case "2512"
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Noël"
                 Case Format(PQ + 1, "ddmm")
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Lundi de Pâques"
                 Case Format(PQ + 39, "ddmm")
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Ascension"
                       .BackColor = &HFFFFC0
                 Case Format(PQ + 50, "ddmm")
                       .BackColor = &HFFFFC0
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy") & " Lundi de Pentecôte (reportable)"
                 Case Else
                       .ControlTipText = Format(l + n - 1, "dddd d mmmm yyyy")
                End Select
            End If
        End With
    Next n
End Sub
 

Discussions similaires

Réponses
18
Affichages
973
Réponses
2
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…