XL 2016 Macro MFC dates

  • Initiateur de la discussion Initiateur de la discussion toper
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

toper

XLDnaute Nouveau
Bonjour @ tous,
j'ai parcouru le net et le fofo sans trouver de réponse à ma question, mais je m'excuses si la question a déja eté posée et/ou résolue...
J'essaie de créer une petite macro toute simple qui va chercher un fichier csv, puis dans la colonne contenant les dates, je veux qu'il me mette en évidence (via la MFC) les dates antérieures à 30 jours.
Le problème est que la MFC fonctionne bien quand je la créé, mais lorsqu'elle s'exécute avec la macro, celle ci me fait la fameuse inversion jour/mois sur certaines dates. Par exemple 10/01/20018 devient 01/10/2018.
Je suis bien en Français dans les options régionales de Windows.
Voudriez-vous le code VBA ?
[EDIT] je vous met me code:
Code:
Sub Macro3()
'
' Macro3 Macro
'

'
    Workbooks.OpenText Filename:="\\xxxxxx\yyyyy\zzz.csv", Origin:= _
        xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, _
        1), Array(11, 1), Array(61, 1), Array(63, 1), Array(73, 1), Array(83, 1), Array(92, 1)), _
        TrailingMinusNumbers:=True
    Range("E4:E51").Select
    Selection.NumberFormat = "m/d/yyyy"
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
        Formula1:="=AUJOURDHUI()-30", Formula2:="=AUJOURDHUI()-300"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Bold = True
        .Italic = True
        .Color = -16776961
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False
End Sub
Même si je précise le format date jj/mm/aaaa, il me le transforme en m/d/yyyy....
Merci d'avance 🙂

[EDIT2]: j'ai mis le format de date personnalisé jj/mm/aa qui correspond bien maintenant à dd/mm/yy en VBA, mais la MFC ne s’applique plus 🙁
 
Dernière édition:
dak dak. Je vous ai joint le fichier que j'importe, la macro, et le fichier que j'obtiens en sortie.
Code:
Sub Macro1()
'
' Macro1 Macro
'

'
    Workbooks.OpenText Filename:="\\ppsibeserv\Informatique\bkp.csv", Origin:= _
        xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, _
        1), Array(11, 1), Array(61, 1), Array(63, 1), Array(73, 1), Array(83, 1), Array(92, 1)), _
        TrailingMinusNumbers:=True
    Range("E4:E51").Select
    Selection.NumberFormat = "m/d/yyyy"
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
        Formula1:="=AUJOURDHUI()-30"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Font
        .Bold = True
        .Italic = True
        .Color = -16776961
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False
    ChDir "C:\Users\buenadg\Desktop"
    ActiveWorkbook.SaveAs Filename:="C:\Users\buenadg\Desktop\bkpresult.xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.SmallScroll Down:=9
    Windows("PERSONAL.XLSB").Activate
    Application.WindowState = xlNormal
    Windows("bkpresult.xlsx").Activate
End Sub
 

Pièces jointes

le fichier de sortie non vide 🙂
Les dates SEMBLENT bonnes et le fichier de sortie est bon lorsque j'enregistre la macro.
Ensuite je ferme le fichier, j'enregistre ma macro dans mes macros perso, et quand je la lance, elle me décale les dates (regarde en E5) Et la MFC se joue n'importe comment
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
385
  • Question Question
Microsoft 365 comparaison texte
Réponses
5
Affichages
682
Réponses
8
Affichages
418
Réponses
22
Affichages
3 K
Réponses
2
Affichages
1 K
  • Question Question
Microsoft 365 colorer une plage
Réponses
2
Affichages
843
Réponses
9
Affichages
1 K
Retour