Aide pour réaliser une macro

Résolu/Fermé
Bob - Modifié le 15 août 2022 à 19:43
Le Pingou Messages postés 12155 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 29 septembre 2024 - 16 août 2022 à 22:53

Bonjour à tous, j'ai un tableau Excel et j'aimerais réaliser via une macro l'opération suivante: si une cellule contient une date, me renvoyer une valeur dans une autre cellule. Pourriez vous m'aider s'il vous plait? Je vous remercie par avance

A voir également:

17 réponses

M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 10:10

Bonjour,

Un p’tit classeur avec 10/15 données anonymisées serait mieux pour régler le soucis 

Allez dans http://cjoint.com
Cliquez sur "PARCOURIR" pour sélectionner le classeur
Clic le bouton "CREER LE LIEN"
Clic droit quand le lien est créé "COPIER LE LIEN"
Sur le post Clic droit "Coller".

0
_Ritchi_ Messages postés 21267 Date d'inscription samedi 17 mars 2007 Statut Contributeur Dernière intervention 29 septembre 2024 6 074
Modifié le 15 août 2022 à 10:27

Bonjour,

voici un sujet similaire à ta demande d’aide: 

https://forums.commentcamarche.net/forum/affich-11692494-excel-test-logique-avec-date-comme-valeur

Ritchi

0

Bonjour Ritchi, Merci encore de votre réponse. Je suis allé visiter votre lien et malheureusement il n'est pas adapté au tableau que je souhaite réaliser. J'ai joint un lien un peu plus explicatif de mon besoin. Bonne journée Cordialement

0

Bonjour M-12, je vous remercie de votre réponse rapide. voici le lien en question: https://www.cjoint.com/c/LHpjoKsigta

Je reste à disposition si je ne suis pas assez clair dans mon tableau

Encore merci de votre aide.

0
M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 11:37

Re,

Teste cette formule en F2

=SI(D2="";"PRESENT";SI(ESTNUM(D2);"A RADIER";"EN ATTENTE DE RADIATION"))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question

Oui je confirme qu'elle fonctionne MERCI. J'aurais préféré l'avoir sous forme de macro pour éviter qu'elle ne soit effacée si je dois inscrire une donnée dans une des cellules. Merci encore

0
M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 16:11
0

Encore MERCI M-12 du temps consacré pour son PB. J'ai bien reçu le lien, mais dès que j'essaye de l'ouvrir il affiche une erreur et je parviens à voir le fichier mais sans aucune macro d'affichée. LHpoly4IbqC_LHpjoKsigta-Tableau-TEST.xls

J'ai un message disant que la macro est supprimée automatiquement

0
M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 17:18

Re,

Le voici en xlsm

Vérifie quand même que ton Excel ne soir pas protégé contre les macros, sinon, tu ne pourras pas les ouvrir

https://www.cjoint.com/c/LHpprgwGlMC

0

J'ai tout essayé et malheureusement je ne parviens pas à télécharger le fichier accompagné de ta macro. Je tenterai demain à partir de mon ordinateur bureau. J'ai le message suivant: Désolé... nous avons rencontré un problème dans le contenu de "LHpprgwGIMC_TABLEAU-TEST" Mais nous pouvons essayer de récupérer le max de contenu. si la source est fiable cliquez sur OUI et en le faisant, la macro n'apparait pas.

En tout cas, un grand grand merci à toi d'avoir pris du temps pour m'apporter ton aide et une bonne fin de journée.

0
M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 18:19

Re,

Place cette macro à la place de l'autre dans la Feuil1 du développeur

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Dl%
  Dl = Range("A" & Rows.Count).End(xlUp).Row
  If Not Application.Intersect(Target, Range("D2:D" & Dl)) Is Nothing Then
    If Target.Value = "" Then
      Target.Offset(, 2).Value = "PRESENT"
    ElseIf IsDate(Target.Value) Then
      Target.Offset(, 2).Value = "A RADIER"
    Else
      Target.Offset(, 2).Value = "EN ATTENTE DE RADIATION"
    End If
  End If
End Sub
0
Le Pingou Messages postés 12155 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 29 septembre 2024 1 448
15 août 2022 à 19:25

Bonjour,

Juste au passage, je pense que Bob à l'extension XLS donc il doit le mettre en XLM...!


0

Bonjour le Pignon et merci de ta réponse, j'avais pris le soin de modifier l'extension justement en me mettant sur XLMS

0

En mettant en application, je rencontre l'erreur suivante "Erreur d'exécution 424 objet requis" pour cette ligne :  If Not Application.Intersect(Target, Range("D2:D" & Dl)) Is Nothing Then.

Merci encore

0
M-12 Messages postés 1331 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 8 avril 2023 284
15 août 2022 à 20:32

Re,

Est ce que ton fichier final est identique à l'exemple sur les premieres lignes ?

0

Oui il l'est

0
Le Pingou Messages postés 12155 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 29 septembre 2024 1 448
15 août 2022 à 21:32

Bonjour,

La macro de M-12 dans votre fichier exemple fonctionne correctement:

Le Lien : https://www.cjoint.com/c/LHptF15tS5n


0

J'essayerai demain à partir de mon ordinateur de bureau. Sans doute que le problème émane de mon macbook. Encore MERCI de votre patience et Merci à M-12 également. Bonne soirée Cordialement,

0
Le Pingou Messages postés 12155 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 29 septembre 2024 1 448
Modifié le 16 août 2022 à 11:57

Bonjour,

C'est bien possible que le problème soit lié au code VBA sur MacBook.

Note: contrôler que la variable 

  Dl = Range..... est bien la même orthographe dans If Not Application.Intersect(Target, Range("D2:D" & Dl))...!

0

Bonjour, j'ai testé la formule et elle fonctionne parfaitement effectivement. un énorme merci à vous 2 de votre réactivité et de votre aide précieuse.

0
Le Pingou Messages postés 12155 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 29 septembre 2024 1 448
16 août 2022 à 22:53

Merci Bob, pensez de marquer comme résolu si c'est le cas.


0