Fixée une date suivant un etat de commande

Bonjour,

J'ai un fichier Excel pour les commande que je dois passer , ce fichier sous forme de tableau avec :

  • le type de pièce
  • le fournisseur
  • la référence
  • ...
  • une liste déroulante avec 3 états : -A commander
-En cours

-Réceptionner

  • la date de commande
  • la date de réception

Je souhaiterais avoir automatiquement, quand je choisi l'état en cours, la date du jour ou je sélectionne cette état dans la colonne "date de commande" et quand je choisi l'état réceptionner, la date du jour ou j'ai sélectionné cette état dans la colonne date de réception.

Mon problème est : soit la date s'actualise chaque jour, soit que lorsque que sélectionne un état la date de l'autre état ce supprime, j'ai donc recommencé à zéro.

Voila mon souci, si quelqu'un pourrais m'aider s'il vous plait, merci d’avance.

Bonjour,

Avec un fichier joint ... tu augmenterais énormément tes chances de voir quelqu'un te proposer une solution concrète ...

Bonsoir,

Bientôt la prochaine année et les bonnes résolutions.

https://forum.excel-pratique.com/annonces/explications-et-regles-a-respecter-t13.html

Pensez à joindre un fichier pour faciliter la compréhension du problème et augmenter les chances de vous faire aider (taille limite : 300ko, n'hésitez pas à compresser vos fichiers).

Bonjour,

Excusé moi je n'avais pas le fichier sous la main quand je l'es posté mais le voici ^^ .

Merci.

Bonjour,

Une proposition à méditer.

Bonnes fêtes de fin d'année.

Cdlt.

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Range("I:J")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        Cells(Target.Row, 8).Select
    End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim oldVal As String, newVal As String

    If Target.Count > 1 Then Exit Sub

    On Error Resume Next
    Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
    On Error GoTo 0

    If rngDV Is Nothing Then Exit Sub

    If Not Intersect(Target, rngDV) Is Nothing Then

        Application.EnableEvents = False
        newVal = Target.Value
        Application.Undo
        oldVal = Target.Value
        Target.Value = newVal

        If oldVal = newVal Then
            Application.EnableEvents = True
            Exit Sub
        End If

        If Target.Column = 8 Then
            If newVal = "" Or newVal = "A commander" Then
                If oldVal = "En cours" Or oldVal = "Réceptionné" Then
                    MsgBox "Vous ne pouvez pas modifier cette cellule", 64
                    Target.Value = oldVal
                End If
            Else
                Select Case newVal
                    Case Is = "En cours"
                        If oldVal = "Réceptionné" Then
                            MsgBox "Vous ne pouvez pas modifier cette cellule", 64
                        Else
                            Target.Offset(0, 1) = Date
                        End If
                    Case "Réceptionné"
                        If Target.Offset(0, 1) = "" Then
                            MsgBox "Il n'y a pas de date de commande.", 64
                            Target.Value = oldVal
                        Else
                            Target.Offset(0, 2) = Date
                        End If
                End Select
            End If
        End If

        Application.EnableEvents = True

    End If

End Sub

Bonjour,

Merci mais je suis toujours preneur pour n'importe qu'elle idée .

Cordialement

Tan

Bonjour,

Je souhaiterais avoir automatiquement, quand je choisi l'état en cours, la date du jour ou je sélectionne cette état dans la colonne "date de commande" et quand je choisi l'état réceptionner, la date du jour ou j'ai sélectionné cette état dans la colonne date de réception.

Mon problème est : soit la date s'actualise chaque jour, soit que lorsque que sélectionne un état la date de l'autre état ce supprime, j'ai donc recommencé à zéro.

Mon fichier répond semble-t-il à ta question.

Peux-tu préciser ce qui ne fonctionne pas?

Cdlt

Bonjour,

Autant pour moi je n'avais pas remarqué que les macros était désactivé ^^

C’est parfait mais je ne peux pas voir ce que tu a fait ...

J’aurais aimé savoir pour le réutilisé

Merci


Enfaite c'est surtout que je ne sais pas inséré un macros

Bonsoir,

ALT F11 pour ouvrir l'éditeur VBE.

Voir module de feuille Feuil1(MAG).

Cdlt.

Bonjour,

Ou en es-tu?

Cdlt.

Bonjour ,

C'est bon j'ai réussis a comprendre le systeme de macro , merci beaucoup de votre aide , sans vous je n'y serrais pas arrivé .

Encore merci et bonne continuation , ainsi que tout mes voeux ^^

Je vous dit au prochain soucie que j'aurais

Cordialement

Tan

Bonsoir,

Merci à toi.

Amicalement.

Rechercher des sujets similaires à "fixee date suivant etat commande"