Dates qui s'inversent

  • Initiateur de la discussion Initiateur de la discussion Boby71C
  • 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 !

Boby71C

XLDnaute Impliqué
Bonjour à toutes et tous
Après ces vacances pluvieuses, revenons aux chôses sérieuses. J'espère malgré ce mauvais temps général, que vos vacances se sont passées selon vos désirs.

Mon souci:
Avez-vous déjà eu le problème de dates qui s'inversent sur certains ordinateurs (entre autre sous windows 2000).
A la base, j'ai une date au 02/08/2007 et lorsque j'importe par code VBA, en final, j'ai 08/02/2007.

Je n'arrive pas à trouver pourquoi 😱😱

Merci pour votre aide.

@+
 
Re : Dates qui s'inversent

Bonjour les amis
Il m'est très difficile de joindre un fichier car le fichier Excel importe les dates d'un fichier txt qui est généré par l'outil de planification Microsoft Project 2003.
Les dates de MSP sont bonnes
Les dates du fichier txt sont bonnes
Dés que je les importe dans Excel elles s'inversent.Jusqu' à maintenant, tout fonctionnait bien!!!!

Code:
Sub Import_Données()
'
Application.ScreenUpdating = False
    ChDir _
        "C:\Documents and Settings\Robert\Mes documents\Planification OTN"
    Workbooks.OpenText Filename:= _
        "C:\Documents and Settings\Robert\Mes documents\Planification OTN\TERMINE_OTN.txt" _
        , Origin:=932, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
        xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
        Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
        Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
        Array(9, 1), Array(10, 1)), TrailingMinusNumbers:=True
 
    Cells.Select
    Selection.Copy
    Windows("Indicateurs de tenue des Délais.xls").Activate
    Sheets("Données").Select
    Range("A1").Select
    ActiveSheet.Paste
 
    Windows("TERMINE_OTN.txt").Activate
    Application.CutCopyMode = False
    ActiveWorkbook.Close False
 
    Sheets("Données").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Calcul").Select
    Range("A1").Select
    ActiveSheet.Paste
    ActiveCell.Select
    Cells.Select
    Selection.Sort Key1:=Range("J2"), Order1:=xlAscending, Key2:=Range("I2") _
        , Order2:=xlAscending, Header:=xlYes, OrderCustom:=1, MatchCase:=False _
        , Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:= _
        xlSortNormal
 
    Cells.Find(What:="50", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
        True, SearchFormat:=False).Activate
    ActiveCell.Offset(-1, 0).Range("A1").Select
    Range(Selection, Cells(ActiveCell.Row, 1)).Select
    Range(Selection, Cells(1)).Select
    Selection.AutoFilter
    Selection.Delete Shift:=xlUp
 
    Range("G1").Select
    ActiveCell.Range("A1:A2017").Select
    Selection.EntireColumn.Insert
    ActiveCell.Select
    ActiveCell.FormulaR1C1 = "Valeur pour indicateur"
    ActiveCell.Offset(1, 0).Range("A1").Select
    ActiveCell.FormulaR1C1 = "=IF(RC[1]<=0,0,RC[1])"
    ActiveCell.Select
    Selection.AutoFill Destination:=ActiveCell.Range("A1:A2000"), Type:= _
        xlFillDefault
    ActiveCell.Range("A1:A60000").Select
    ActiveCell.Columns("A:A").EntireColumn.Select
    Selection.NumberFormat = "General"
    ActiveCell.Select
 
    Range("M2").Select
    ActiveCell.FormulaR1C1 = "=MONTH(RC[-7])"
    Selection.AutoFill Destination:=Range("M2:M320"), Type:=xlFillDefault
 
    Range("A:M").EntireColumn.Select
    Selection.Sort Key1:=Range("F2"), Order1:=xlAscending, Header:=xlYes, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
 
    Dim Mois
    Mois = [Q1]
        [A1:M1].AutoFilter
        Selection.AutoFilter Field:=13, Criteria1:=Mois
 
    Sheets("Calcul2").Activate
    Range("A1:M1502").Select
    Selection.Delete Shift:=xlUp
    Range("A1").Select
    Sheets("Calcul").Activate
    Range("B1:B2000").Select
    Selection.Copy
    Sheets("Calcul2").Select
    Range("A1").Select
    ActiveSheet.Paste
    Sheets("Calcul").Activate
    Range("G1:G2000").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Calcul2").Select
    Range("B1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Calcul").Select
    Application.CutCopyMode = False
    Range("A1").Select
    Sheets("Calcul2").Select
    'Range("A1").Select
 
' Recopier les mêmes données en colonne E pour extraire le nombre de projets livrés.
    Columns("A:B").Select
    Selection.Copy
    Range("E1").Select
    ActiveSheet.Paste
 
' Recopier les mêmes données en colonne I pour extraire le nombre de projets en retard.
    Range("I1").Select
    ActiveSheet.Paste
 
    Columns("A:B").Select
    ActiveCell.Columns("A:B").EntireColumn.Select
    Selection.Sort Key1:=ActiveCell.Offset(0, 1).Range("A1"), Order1:= _
        xlDescending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
    Range("B1").Select
    Cells.Find(What:="0", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
        True, SearchFormat:=False).Activate
    ActiveCell.Offset(0, -1).Range("A1:B115").Select
    Selection.Delete Shift:=xlUp
    Sheets("Graphiques").Select
    Range("B21").Select
    Selection.ClearContents
    ActiveCell.FormulaR1C1 = "=R[-11]C[0]"
    ActiveCell.Offset(0, -1).Range("A1").Select
    ActiveCell.FormulaR1C1 = "Mois"
    Range("C21").Select
    ActiveCell.FormulaR1C1 = "x"
    Range("D21").Select
    ActiveCell.FormulaR1C1 = "x"
    Range("E21").Select
    ActiveCell.FormulaR1C1 = "x"
    Range("F21").Select
 
    Sheets("Calcul2").Select
    Range("A2:B100").Select
    Selection.Copy
    Sheets("Graphiques").Select
    Range("A22").Select
    Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
        xlNone, SkipBlanks:=False, Transpose:=False
    Range("C22").Select
    Sheets("Calcul2").Select
    ActiveCell.Offset(-1, 0).Range("A1").Select
    Application.CutCopyMode = False
 
    Sheets("Calcul2").Select
    Range("E2:E350").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Graphiques").Select
    Range("C22").Select
    ActiveSheet.Paste
 
    Sheets("Calcul2").Select
    Range("I2:J350").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Graphiques").Select
    Range("D22").Select
    ActiveSheet.Paste
 
    Range("B11").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[11]C[-1]:R[189]C[-1],""CRF"")"
    Range("B12").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[10]C[-1]:R[188]C[-1],""TAB"")"
    Range("B13").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[9]C[-1]:R[187]C[-1],""LS"")"
    Range("B14").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[8]C[-1]:R[186]C[-1],""M24+"")"
    Range("B15").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[7]C[-1]:R[185]C[-1],""DEB+SAV"")"
    Range("B16").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[6]C[-1]:R[184]C[-1],""SERIES"")"
 
    Range("B11:B16").Select
    Selection.AutoFill Destination:=Range("B11:C16"), Type:=xlFillDefault
    Range("C11").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[11]C:R[189]C,""CRF"")"
    Range("C12").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[10]C:R[188]C,""TAB"")"
    Range("C13").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[9]C:R[187]C,""LS"")"
    Range("C14").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[8]C:R[186]C,""M24+"")"
    Range("C15").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[7]C:R[185]C,""DEB+SAV"")"
    Range("C16").Select
    ActiveCell.FormulaR1C1 = "=COUNTIF(R[6]C:R[184]C,""SERIES"")"
 
    Range("D11").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[11]C[0]:R[189]C[0]=""CRF"")*(R[11]C[1]:R[189]C[1]))"
    Range("D12").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[10]C[0]:R[188]C[0]=""TAB"")*(R[10]C[1]:R[188]C[1]))"
    Range("D13").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[9]C[0]:R[187]C[0]=""LS"")*(R[9]C[1]:R[187]C[1]))"
    Range("D14").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[8]C[0]:R[186]C[0]=""M24+"")*(R[8]C[1]:R[186]C[1]))"
    Range("D15").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[7]C[0]:R[185]C[0]=""DEB+SAV"")*(R[7]C[1]:R[185]C[1]))"
    Range("D16").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMPRODUCT((R[6]C[0]:R[184]C[0]=""SERIES"")*(R[6]C[1]:R[184]C[1]))"
 
    Range("A11").Select
    ActiveCell.FormulaR1C1 = "CRF"
    Range("A12").Select
    ActiveCell.FormulaR1C1 = "TAB"
    Range("A13").Select
    ActiveCell.FormulaR1C1 = "LS"
    Range("A14").Select
    ActiveCell.FormulaR1C1 = "M24+"
    Range("A15").Select
    ActiveCell.FormulaR1C1 = "DEB+SAV"
    Range("A16").Select
    ActiveCell.FormulaR1C1 = "SERIES"
 
    Application.ScreenUpdating = True
 
End Sub

Je vous transmet le code, mais je doute que ça aide. Il est certainnement trop long, mais je faits avec mes faibles connaissances.

Merci à tous

@+
 
Re : Dates qui s'inversent

Re
Les dates sont en colonnes C, D, E et F.
J'ai trouvé cette solution pour palier au problème, et ça a l'air de fonctionner. Je viens de renvoyer le fichier à mon ami pour qu'il le test lundi. A suivre.

Code:
' Mise au format JMA des dates
    Columns("C:C").Select
    Selection.TextToColumns Destination:=Range("C1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 3), TrailingMinusNumbers:=True
    Selection.TextToColumns Destination:=Range("C1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 4), TrailingMinusNumbers:=True
    Columns("D:D").Select
    Selection.TextToColumns Destination:=Range("D1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 3), TrailingMinusNumbers:=True
    Selection.TextToColumns Destination:=Range("D1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 4), TrailingMinusNumbers:=True
    Columns("E:E").Select
    Selection.TextToColumns Destination:=Range("E1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 3), TrailingMinusNumbers:=True
    Selection.TextToColumns Destination:=Range("E1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 4), TrailingMinusNumbers:=True
    Columns("F:F").Select
    Selection.TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 3), TrailingMinusNumbers:=True
    Selection.TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 4), TrailingMinusNumbers:=True

Merci pour votre aide.
Je vous tiendrai au courant.

Bon Week End
 
Re : Dates qui s'inversent

Bonsoir à tous
Désolé, mais je n'ai pas eu de contacts avec mon ami, je pense qu'il est très occupé.
Je vous promets, je vous tiendrai informé dès que j'aurai des nouvelles.

Merci pour votre patience.
@+
 
- 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
Retour