Gestion de stock (Modification VBA)

marfipo

XLDnaute Occasionnel
Bonjour à tous,
sur le fichier ci-inclus j'ai un code avec lequel je fais la gestion de stock du matériel,
en passant par exemple de l'onglet février-2016 vers Mars-2016 il ne me reste que le matériel ou je n'ai pas rempli la date d'entrée mais ce que je souhaite faire c'est :

interdire de changer la date de sortie (Colonne D) dans les mois qui sont après le premier mois ou elle a été saisi la 1ère fois. c'est a dire si je mets une date dans la colonne D dans l'onglet Février-2015 je veux interdire le changement de cette date dans les onglets Mars-2015, Avril-2015 ect... et si je mets une date dans la colonne D de l'onglet Mars je ne devrai pas aussi avoir le droit de la changer dans les mois qui suivent Mars-2015 ect...

Marci d'avance
 

Pièces jointes

  • stock.zip
    230.7 KB · Affichages: 71
  • stock.zip
    230.7 KB · Affichages: 75

Lone-wolf

XLDnaute Barbatruc
Re : Gestion de stock (Modification VBA)

Bonsoir marfipo,

comment dit le proverbe? " TOUT VIENT À POINT, À QUI SAIS....LE CUIRE" ;)



Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
      If Not Intersect(Target, Range("D:E")) Is Nothing Then
      If IsDate(ActiveCell.Value) Then
    MsgBox "Vous ne pouvez pas modifier la date", , "ERREUR"
    Exit Sub
    ElseIf ActiveCell = "" Then
    ActiveCell.Value = Calendrier.Calendar1.Value
    End If
End If
End Sub



A+ :cool:
 

marfipo

XLDnaute Occasionnel
Re : Gestion de stock (Modification VBA)

Bonsoir lone-wolf
Merci pour ta réponse, mais vu que je suis novice en vba je n'ai pas su mettre le code dans le fichier....
Vous pouvez introduire le code dans le fichier que j'ai mis dans mon message si c'est possible???
parce que j'ai mis le code à la fin et ça na pas marché
 
Dernière édition:

marfipo

XLDnaute Occasionnel
Re : Gestion de stock (Modification VBA)

re,
ca na pas marché car en faisant clique droit pour afficher le calendrier je peux mettre la date que je veux donc ca change rien,
en plus le code que m'interdis de changer la date même au premier mois

parce que je veux interdire de changer la date en faisant clique droit et pas à la main
cad le message qui me dit vous pouvez pas modifier la date ca doit etre affiché quand je clique droit pour afficher le calendrier et mettre la date que je veux
 
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re : Gestion de stock (Modification VBA)

Bonjour marfipo,


avec excel 2010, tout est ok cette fois-ci. J'ai modifier le code comme tu peux le voir


Code:
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  Select Case Sh.Name
    Case "Total Général", "ODA", "Facture Matériel", "Données"   'lister les pages non concernées par le calendrier
    Case Else
      If Not Intersect(Target, Range("D:E")) Is Nothing Then
        If Target <> "" Then
                Calendrier.Hide
        Else
                Calendrier.Show
          Cancel = True
      End If
      End If
  End Select
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  Select Case Sh.Name
    Case "Total Général", "ODA", "Facture Matériel", "Données"   'lister les pages non concernées par le calendrier
    Case Else
      If Target.Count = 1 Then Exit Sub
      If Not Intersect(Target, Range("D:E")) Is Nothing Then
        If Target = "" Then Exit Sub
        If LUserform = False Then
          With Application
            .ScreenUpdating = False
          End With
          MsgBox "Utilisez le calendrier (Clic droit sur la celule " & Target.Address(0, 0) & ")"
        End If
        LUserform = False
      End If
  End Select
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
      If Not Intersect(Target, Range("D:E")) Is Nothing Then
      If Target <> "" Then
      Cancel = True
      Calendrier.Hide
    MsgBox "Vous ne pouvez pas modifier la date", , "ERREUR"
    End If
End If
End Sub
 

Lone-wolf

XLDnaute Barbatruc
Re : Gestion de stock (Modification VBA)

Bonjour Pascal :)

Merci de me rassurer. Mais il faudrait interdire de poster si la version Excel + PC ou MAC ne sont pas inscrits dans Utilise:; comme il en vas de même quand on ne met pas la version dans les messages. C'est à dire mettre les champs obligatoires dans le profil.



Amicalement Lone-wolf :cool:
 

marfipo

XLDnaute Occasionnel
Re : Gestion de stock (Modification VBA)

Bonjour Lone-Wolf,
j'utilise excel 2007 et 2010
j'ai refait tout et ca na pas marché...
le dernier code est proche de la réponse: il m'interdis de faire un clique droit pour insérer la date avec formule mais avec le bouton gauche en faisant 2 click 2 fois je mets la date même a la sortie du message "vous pouvez pas changer la date"
autre chose c'est que avec la clik droit il m'interdis de changer la date même dans la feuille initiale ou j'ai saisi les dates et cela est faux
 

Lone-wolf

XLDnaute Barbatruc
Re : Gestion de stock (Modification VBA)

Re marfipo,

j'utilise excel 2007 et 2010
j'ai refait tout et ca na pas marché...

Mais avec quoi? 2007 ou 2010?? On vient de te dire que le code est fonctionnel avec 2010 et 2013.
Tu travail avec quoi MAC + Office 2007???

Code:
Private Sub Workbook_SheetBeforeDoubleClick(....)
if sh.name = "feuille initiale" then 
activecell.value = calendrier.............
else
exit sub
end if
End Sub


Si c'est toi qui à fait le reste du code, tu es censé le savoir non??? :confused:


A+ :cool:
 
Dernière édition:

Discussions similaires

Réponses
46
Affichages
854
Réponses
2
Affichages
984

Statistiques des forums

Discussions
312 206
Messages
2 086 203
Membres
103 157
dernier inscrit
youma