IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Soucis de paramètrage d'excel ?


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut Soucis de paramètrage d'excel ?
    Bonjour,

    Je viens chercher votre aide aujourd'hui car je pense avoir un soucis de paramétrage dans Excel.

    J'ai créé un code qui ne fonctionne pas sur mon PC (fixe du travail) mais qui fonctionne très bien sur mon PC portable + 3 autres PC de ma boîte. Pour le moment il n'y as que sur mon poste où le problème se déclenche.

    Pour plus d'info concernant le problème voici le liens où je l'explique :

    https://www.developpez.net/forums/d1...-fonction-dir/


    Merci d'avance pour vos réponses.

  2. #2
    Membre émérite
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Points : 2 813
    Points
    2 813
    Par défaut
    Bonjour,
    Que veut dire "ne fonctionne pas" ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Tu as regarder le liens ?

    J'ai une erreur 5 sur une ligne qui est normalement correct car elle est dans une boucle qui marche 1 fois mais pas 2 :
    Tous est expliquer sur le liens

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 433
    Points
    12 433
    Par défaut
    Bonjour
    Tu as regarder le liens ?

    J'ai une erreur 5 sur une ligne qui est normalement correct car elle est dans une boucle qui marche 1 fois mais pas 2 :
    Tous est expliquer sur le liens
    Pourquoi alors procéder ainsi (une nouvelle discussion qui conduit à en ouvrir une autre pour savoir ce dont il s'agit) ?
    (c'est ce que j'appelle inviter à "jouer au ping-pong") ...

  5. #5
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    Qu'elle version d'excel?

    Fais ce simple test (on ne sait jamais) :
    Sur ton PC ou la macro ne fonctionne pas :
    Dans une cellule d'une feuille de ton classeur, tape :
    =SERIE.
    Dis nous si Excel te propose la Formule =SERIE.JOUR.OUVRE, ou pas...

  6. #6
    Membre émérite
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Points : 2 813
    Points
    2 813
    Par défaut
    Ce n'est pas vraiment une bonne pratique d'ouvrir un nouveau sujet alors qu'on a le même problème ...

    Erreur d'exécution '5':
    Argument ou appel de procédure incorrect

    Cette erreur arrive sur la ligne 23 lors de la manip. sur le deuxième fichier :

    .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
    Tu as une fonction écrite en français, ça m'étonne, car normalement, on écrit tout en anglais en VBA. Essaie de ré-écrire cette ligne avec les fonctions équivalentes en anglais.
    Est-ce que ton poste fixe est paramétré sur une autre langue que les autres PC?

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Alors, oui je suis d'accord avec vous mais la personne qui m'a répondu sur mon premier post ne répond plus et personne d'autre ne m'a répondu et je suis vraiment très proche de la fin de mon code donc ca m'embête beaucoup... désolé de cette manip alors j'éviterai dans le future.

    Oui Excel reconnais bien la formule et ca n'a pas de liens avec la langue ou autre car comme je l'ai dit plus haut la ligne qui "bug" est dans une boucle et pour la première itération il n'y a aucun problème c'est sur la deuxième itération à chaque fois que j'ai cette erreur

  8. #8
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Au risque de me répéter, sur le pc ou la macro ne fonctionne pas :

    Citation Envoyé par pijaku Voir le message
    Qu'elle version d'excel?

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Excel 2010
    Version : 14.0.7177.5000 (32 bits)

    c'est la même version que sur les PC où ca fonctionne

  10. #10
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Dans cette boucle, met un point d'arrêt, puis inspecte le classeur qui vient de s'ouvrir...
    Essaie par exemple d'ajouter manuellement la MFC...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        For i = 1 To NbFichiers
            Set Wb = Workbooks.Open(ListeFichier(i))
            Stop
            conditionnelle
            Wb.Close True
        Next i
    Il va certainement t'envoyer des messages d'erreur "ne pas pas exécuter en mode Arrêt", mais tu t'en fiches, clic sur OK...

  11. #11
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Non il ne m'a pas dit "ne pas exécuter en mode Arrêt" mais c'est pas le sujet

    c'est bien les bons fichiers qui s'ouvrent et qui se mettent dans la variable il n'y a pas de problème à ce niveau là, et quand je fait la MFC à la mains avec la même formule ca fonctionne normalement.

  12. #12
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Et tu dis donc que le code fonctionne bien sur le premier fichier, mais plante au second. C'est bien cela?
    Remets nous ton code tel qu'il est ce jour...

    Les fichiers que tu ouvres : xls? xlsx? xlsm?

  13. #13
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    oui c'est ca !

    Alors j'ai 3 codes différents dans 3 modules, j'ai la même erreur avec les 3 codes

    le miens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    Dim Nom As String
     
    Sub ouvrir_fichiers()
    Application.ScreenUpdating = False
     
    chemin = Range("B4").Value & "\"
    Nom = Dir(chemin)
     
    While Nom <> ""
     
        fichier = chemin & Nom
        Workbooks.Open fichier
     
    conditionnelle
     
        Workbooks(Nom).Save
        Workbooks(Nom).Close
     
        Nom = Dir()
     
    Wend
    End Sub
     
    Sub conditionnelle()
     
    Range("I5").Select
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
            .Color = 16757387
            .TintAndShade = 0
            .PatternTintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
     
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorAccent1
            .TintAndShade = 0.599993896298105
            .PatternTintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        Range("I5").Select
        Selection.Copy
        Range("I5:AF6").Select
        Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
        Application.CutCopyMode = False
    End Sub

    les deux que l'on m'a proposé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    Dim Nom As String
    Dim Wb As Workbook
    Dim NomFeuille As String
     
    Sub ouvrir_fichiers()
    Application.ScreenUpdating = False
        chemin = Range("B4").Value & "\"
        NomFeuille = "NetRequirements"
        Nom = Dir(chemin)
     
        While Nom <> ""
            Set Wb = Workbooks.Open(chemin & Nom)
                conditionnelle
                Wb.Close True
            Nom = Dir()
        Wend
    Application.ScreenUpdating = True
    End Sub
     
    Sub conditionnelle()
    With Wb.Worksheets(NomFeuille)
        With .Range("I5")
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .Color = 16757387
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
     
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .ThemeColor = xlThemeColorAccent1
                    .TintAndShade = 0.599993896298105
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
            .Copy
        End With
     
        .Range("I5:AF6").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
    Application.CutCopyMode = False
    End Sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    Dim Nom As String
    Dim Wb As Workbook
    Dim NomFeuille As String
    Dim ListeFichier(1 To 1000), NbFichiers As Long
    Sub ouvrir_fichiers()
    Dim i As Long
    Application.ScreenUpdating = False
        chemin = Range("B4").Value & "\"
        NomFeuille = "NetRequirements"
        Nom = Dir(chemin)
     
        While Nom <> ""
            NbFichiers = NbFichiers + 1
            ListeFichier(NbFichiers) = chemin & Nom
            Nom = Dir()
        Wend
     
        For i = 1 To NbFichiers
            Set Wb = Workbooks.Open(ListeFichier(i))
            conditionnelle
            Wb.Close True
        Next i
    Application.ScreenUpdating = True
    End Sub
     
     
    Sub conditionnelle()
    With Wb.Worksheets(NomFeuille)
        With .Range("I5")
            .FormatConditions.Add Type:=xlExpression, Formula1:="=$D5=""Délai apparent"""
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .Color = 16757387
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
     
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .ThemeColor = xlThemeColorAccent1
                    .TintAndShade = 0.599993896298105
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
            .Copy
        End With
     
        .Range("I5:AF6").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
    Application.CutCopyMode = False
    End Sub


    On peut voir sur le code 3 que j'ai essayer en changeant la MFC, j'ai simplifier la formule

    Avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Formula1:="=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
    ca "bug"

    et avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Formula1:="=$D5=""Délai apparent"""
    ca fonctionne sur tous les fichiers, donc on pourrai penser que le problème vient de la formule mais dans ce cas je ne comprend pas pk elle ne fonctionne pas sur tous les fichiers ...


    Encore pire, je viens de m'apercevoir que ca fonctionne sur le fichier 1
    ca bug sur le 2 grâce au "pas à pas" je fait fermé le fichier 2 sans faire de mise en forme et j'ouvre le fichier 3 et ca marche !!!
    et ca re bug encore sur le 4
    en gros ca bug sur 1 fichier sur 2

    je comprend rien :/

    et pardon :

    les fichiers sont en .xlsx

  14. #14
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Je te recommande d'utiliser le code n°3 uniquement, avec la bonne formule.

    Essaie de remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        For i = 1 To NbFichiers
            Set Wb = Workbooks.Open(ListeFichier(i))
            conditionnelle
            Wb.Close True
        Next i
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        For i = 1 To NbFichiers
            Set Wb = Workbooks.Open(ListeFichier(i))
            DoEvents
            conditionnelle
            Wb.Close True
            Set Wb = Nothing
        Next i
    Qui plus est, si tu ne dois avoir qu'une seule MFC sur la cellule I5 de tes classeurs, peut être, éventuellement, supprimer une MFC possible.
    Donc, remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub conditionnelle()
    With Wb.Worksheets(NomFeuille)
        With .Range("I5")
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub conditionnelle()
    With Wb.Worksheets(NomFeuille)
        With .Range("I5")
            .FormatConditions.Delete
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai apparent"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
    ça ne mange pas de pain...

  15. #15
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Je désespère :

    j'avais déjà essayé pour le .Delete sans succès (je viens de re essayer quand même)

    j'ai aussi essayé ta proposition qui ne change toujours rien ...

    Si on part sur le code 3 je te montre alors ce que j'utilise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    Dim Nom As String
    Dim Wb As Workbook
    Dim NomFeuille As String
    Dim ListeFichier(1 To 1000), NbFichiers As Long
    Sub ouvrir_fichiers()
    Dim i As Long
    Application.ScreenUpdating = False
        chemin = Range("B4").Value & "\"
        NomFeuille = "NetRequirements"
        Nom = Dir(chemin)
     
        While Nom <> ""
            NbFichiers = NbFichiers + 1
            ListeFichier(NbFichiers) = chemin & Nom
            Nom = Dir()
        Wend
     
        For i = 1 To NbFichiers
            Set Wb = Workbooks.Open(ListeFichier(i))
            DoEvents
            conditionnelle
            Wb.Close True
            Set Wb = Nothing
        Next i
    Application.ScreenUpdating = True
    End Sub
     
     
    Sub conditionnelle()
    With Wb.Worksheets(NomFeuille)
        With .Range("I5")
            .FormatConditions.Delete
            .FormatConditions.Add Type:=xlExpression, Formula1:="=$D5=""Délai apparent"""
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .Color = 16757387
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
     
            .FormatConditions.Add Type:=xlExpression, Formula1:="=ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
            .FormatConditions(.FormatConditions.Count).SetFirstPriority
     
            With .FormatConditions(1)
                With .Interior
                    .Pattern = xlSolid
                    .PatternColorIndex = xlAutomatic
                    .ThemeColor = xlThemeColorAccent1
                    .TintAndShade = 0.599993896298105
                    .PatternTintAndShade = 0
                End With
                .StopIfTrue = False
            End With
            .Copy
        End With
     
        .Range("I5:AF6").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
    Application.CutCopyMode = False
    End Sub

    j'ai donc 2 MFC par cellule 1 que j'ai "simplifié" et l'autre qui est celle que je veux vraiment

    la première est toujours accepté mais la deuxième passe que sur 1 fichier sur 2 et toujours cette même erreur 5.

    incompréhensible pour ma part


    PS: c'est quoi ce "DoEvents" ?

  16. #16
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    DoEvents rends la main au système d'exploitation pour qu'il puisse traiter sa file d'attente de messages.
    Dans certains cas, cela peux aider.
    Pas là visiblement.

    As tu tenté de saisir manuellement la formule =ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5)) dans un des classeurs ou ça coince ?

  17. #17
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    tu veut dire de mettre cette formule à la main dans une MFC ? oui et ca fonctionne normalement...

    je te remercie de passer du temps pour m'aider mais au lieu d'essayer de modifier le code serait-il pas plus efficace d'essayer de trouver la différence qu'il y a entre mon PC et les autres (car la macro marche sur les autres PC)

  18. #18
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    essayer de trouver la différence qu'il y a entre mon PC et les autres
    ça, toi seul peux le faire.

    Sinon, j'ai pensé éventuellement un dernier test, et après j'aurais tout épuisé mes connaissances...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        With .Range("I5")
            .FormatConditions.Delete
    'on entre une MFC "formule simple"
            .FormatConditions.Add Type:=xlExpression, Formula1:="=$D5=""Délai total"""
            .FormatConditions(.FormatConditions.Count).SetFirstPriority 
    'on modifie la MFC grâce à la méthode Modify
            With .FormatConditions(.FormatConditions.Count)
                If .Formula1 = "=$D5=""Délai total""" Then .Modify Type:=2, Formula1:="=ET($D5=""Délai total"";I$2<SERIE.JOUR.OUVRE($I$2;$E5))"
            End With
        End With

  19. #19
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 22
    Points : 4
    Points
    4
    Par défaut
    Merci d'avoir tout essayé mais non toujours le même problème ...

    et je veux bien chercher les différences entre les PC mais je ne sais pas du tout où chercher et ce qui pourrai avoir des impactes sur les macro etc ...

  20. #20
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 816
    Points : 2 954
    Points
    2 954
    Billets dans le blog
    10
    Par défaut
    Peux tu tester juste avec cette Formula1 : I$2<SERIE.JOUR.OUVRE($I$2;$E5)
    Juste pour voir...

Discussions similaires

  1. [XL-2007] Souci lancement Word depuis Excel
    Par familledacp dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 23/05/2014, 13h14
  2. [XL-2003] Souci récupération d'information (excel - access)
    Par Autotoaster dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/06/2011, 11h44
  3. Des soucis avec mon application Excel sur les contacts
    Par diddle dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/11/2007, 20h50
  4. SOucis d'export vers excel 2003
    Par nico18987 dans le forum SharePoint
    Réponses: 0
    Dernier message: 05/09/2007, 10h45
  5. [vb6] Soucis avec une instance excel
    Par Little-Freud dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 24/04/2006, 17h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo