Probleme MFC MAJ couleur (actualise cellule)

Bonjour à tous

voici mon problème :

j'aimerai actualisé une cellule en J3 car mes MFC ne marche pas au bout d'un moment je ne sais pas pourquoi pourtant ca reste des MFC

les MFC (date supérieur à la date ojd vert ) et (inférieur à la date ojd rouge )

j'ai essayer avec une macro ça me donner ceci

Range("J3").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "" 

du coup ça vide ma cellule je doit remplie quoi ou mettre quoi dans "" pour qu'il prenne la date dans J3 sachant quelle change souvent

merci de votre aide bonne journée

Bonjour,

Je ne suis peut-être pas bien réveillé mais je n'ai rien compris à votre demande !

Pouvez vous détailler ce que vous souhaiter faire/obtenir, en quoi ça marche pas, et de préférence illustrer le tout avec un classeur Excel ?

Une MFC fonctionne dans la durée sans avoir besoin de faire quoi que ce soit, à moins que vous ayez figé la date de référence dans la formule de MFC. Il n'y a pas besoin de VBA dans l'histoire.

Bonjour Pedro22 ,

voici mon fichier :

1v8.xlsm (37.21 Ko)

voici mon problème:

j'ai fais 2 MFC sauf quelle ne marche pas je ne vois pas pourquoi si je rentre par exemple la date 18/11/2019 elle devrait être rouge et la elle est verte..

si je double clic dans la cellule elle ce mais rouge

capture

j'aimerai quelle ce mette de la bonne couleur directement ou alors actualiser cette cellule J3 à la fin de mon code pour avoir la bonne couleur

j'espere être plus clair ..

j'espere être plus clair ..

Oui c'est beaucoup mieux !

Le problème vient des dates, la plupart ne sont pas valides, c'est à dire non reconnues par Excel. Faite le test rapidement en sélectionnant l'ensemble de la colonne --> format "Nombre". Toutes les dates valides deviennent des nombres du style 48800,00, les autres ne bougent pas.

Du coup :

  • lorsque la valeur de la cellule n'est pas un nombre/date --> elle est formatée en vert
  • lorsque la cellule est vide, la MFC considère la valeur 0 --> elle est formatée en rouge

Pour forcer rapidement la reconnaissance des dates :

  • Sélectionner la colonne complète
  • Données --> Convertir --> Terminer

Généralement, l'outil "Convertir" est utilisé pour séparer des informations d'une cellule selon un séparateur défini : ",", ";", etc. A la suite de cette opération, Excel cherche à reconnaître les informations séparées. Si l'on utilise un séparateur inexistant dans les données (on ne sépare rien), Excel fait quand même cette étape d'analyse et conversion de la donnée.

PS : il vous reste une date invalide en ligne 10 (13/13/2020)

merci pour vos explication Pedro22

j'ai tout compris:)

en revanche la conversion ne marche pas

voici ce que j'ai

ssse 2capture 3capture

Les impressions écran que vous avez fournies ne me permettent pas de me rendre compte du problème. Il se passe quoi après avoir cliqué sur "terminer" ? D'autant plus que les 3 premières lignes sont déjà reconnues comme des dates (il faut juste repasser au format Date pour qu'elle soit à nouveau affichées de façon "compréhensible").

J'ai refait la manip' de mon côté sur votre fichier, ça fonctionne sans soucis.

Vous pouvez aussi forcer la conversion avec une formule dans une colonne vierge :

=DATEVAL("DateEnTexte")

oui la manip fonctionne mais des que je rentre une nouvelle date je suis obliger de refaire la manipulation

es possible de faire la manipulation automatique à la fin du code VBA?

car j'ai fais une maco mais ça ne fonctionne plus des que je refais une nouvelle ligne avec date

oui la manip fonctionne mais des que je rentre une nouvelle date je suis obliger de refaire la manipulation

es possible de faire la manipulation automatique à la fin du code VBA?

car j'ai fais une maco mais ça ne fonctionne plus des que je refais une nouvelle ligne avec date

Commencez par donner tous les éléments nécessaires à la résolution de votre problème. Je ne devine pas quelle(s) macro(s) vous avez, ni d'où viennent ces dates invalides...

voici mon fichier j'ai suivie votre procédure tout fonctionne

1v8.xlsm (42.31 Ko)

mais des que je clic sur le bouton "entre sortie" et mais la date 16/11/2019

il se mais en rouge encore

du coup j'ai essayer de faire une macro avec la procédure mais il ne prend pas en compte la nouvelle ligne crée..

je suis obliger de le faire manuellement à chaque fois (données convertir) et la sa refonctionne

je n'arrive pas à faire cette manipulation pour quelle ce face automatiquement macro ou code VBA ou autre moyen

Je commence à comprendre, votre date provient d'une saisie dans un Userform. Mais comme son nom l'indique, le contenu d'une Textbox est du texte. Donc si vous l'affectez simplement dans une cellule, il y a de grandes chances pour que ça reste reconnu comme du texte et pas une date valide...

Pour info, l'équivalent de la fonction Excel DATEVAL() est CDate() dans VBA, si ça peut permettre de traiter le problème à la source.

Je vous invite à consulter les nombreux sujets qui traitent de la saisie d'une date dans une Textbox. Un exemple :

https://forum.excel-pratique.com/viewtopic.php?f=2&t=133230

PS : petite remarque sur le codage, les instructions "Select" et "Activate" sont totalement inutiles. Exemple :

Sheets("Feuil1").Select
Range("A1").Select
Selection.Copy
Sheets("Feuil2").Select
Range("B1").Select
Selection.Paste
's'écrit tout simplement :
Sheets("Feuil1").Range("A1").Copy Sheets("Feuil2").Range("B1")

Super merci Pedro22

vous venez de m'éclairer sur le problème

je vais regarde votre lien et fouiner sur le forum

encore merci !!

Super merci Pedro22

vous venez de m'éclairer sur le problème

je vais regarde votre lien et fouiner sur le forum

encore merci !!

Merci du retour, pense à valider le sujet !

Rechercher des sujets similaires à "probleme mfc maj couleur actualise"