XL 2016 Macro MFC dates

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:

toper

XLDnaute Nouveau
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

  • bkp.zip
    1.6 KB · Affichages: 26
  • bkpresult.zip
    22 bytes · Affichages: 27

toper

XLDnaute Nouveau
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

  • bkpresult.zip
    9.9 KB · Affichages: 28

Statistiques des forums

Discussions
312 111
Messages
2 085 403
Membres
102 883
dernier inscrit
jameseyz