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 :

Formule qui ne s'executent pas


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2017
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2017
    Messages : 69
    Par défaut Formule qui ne s'executent pas
    Bonjour,

    Les fonctions notées (X) ne s’executent pas. Elles sont pourtant basiques... Est ce que quelqu'un a une idée ?

    Ce classeur est créé à partir d'un premier classeur. Le nom de la feuille lors de l'affichage de la Msgbox est bien le bon;...

    En executant via la touche F8 le programme surligne bien en jaune ces quelques lignes.


    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
    Sub toprovidebefore_Cliquer()
     
    Dim NoM As Date
    Dim i As Integer
    Dim LastLig As Integer
    Dim Active As String
    On Error GoTo Errorhandler
     
    NoM = CDate(InputBox("Documents to provide before (DD/MM/YY) : ", "Before DD/MM/YY"))
     
    Active = ActiveSheet.Name
    Sheets(Active).Select
    MsgBox (Active)
     
     
    Range("C2").Value = "To provide before"                 (X)
    Range("C2").Font.Bold = True                                 (X)
    Range("C2").Font.ColorIndex = 2                            (X)
    Range("F2").Value = NoM                                       (X) 
     
    Application.ScreenUpdating = False
    LastLig = Range("A" & Rows.Count).End(xlUp).Row
    MsgBox (ActiveSheet.Name)
    MsgBox (LastLig)
     
    For i = 4 To LastLig                                                 (X)
    If Range("F" & i) < Range("F2") Then
    Range("J" & i) = "x"
    Else
    Range("J" & i) = "xxx"
    End If
    Next
     
     
    With Worksheets(Active)
       .AutoFilterMode = False
     
          .Range("A3:J" & LastLig).AutoFilter Field:=7, Criteria1:=""
          .Range("A3:J" & LastLig).AutoFilter Field:=10, Criteria1:="x"
    Application.ScreenUpdating = True
    End With
    Exit Sub
    Errorhandler:
    End Sub

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Lors de la phase de tests et surtout si tu ne prévois pas de message d'erreur à l'étiquette Errorhandler supprime le On Error qui te permettra de visualiser où se situe le problème.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Juin 2017
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2017
    Messages : 54
    Par défaut
    Essaye ca

    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
    Sub toprovidebefore_Cliquer()
        Dim NoM As Date
        Dim i As Integer
        Dim LastLig As Integer
        Dim ExcelSheet As Object
     
        On Error GoTo Errorhandler
     
        Set ExcelSheet = ActiveSheet
     
        NoM = CDate(InputBox("Documents to provide before (DD/MM/YY) : ", "Before DD/MM/YY"))
     
        ExcelSheet.Range("C2").Value = "To provide before"
        ExcelSheet.Range("C2").Font.Bold = True
        ExcelSheet.Range("C2").Font.ColorIndex = 1
        ExcelSheet.Range("F2").Value = NoM
     
        Application.ScreenUpdating = False
        LastLig = ExcelSheet.Range("A" & ExcelSheet.Rows.Count).End(xlUp).Row
        MsgBox (ExcelSheet.Name)
        MsgBox (LastLig)
     
        For i = 4 To LastLig
            If ExcelSheet.Range("F" & i) < ExcelSheet.Range("F2") Then
                ExcelSheet.Range("J" & i) = "x"
            Else
                ExcelSheet.Range("J" & i) = "xxx"
            End If
        Next
     
        With ExcelSheet
            .AutoFilterMode = False
            .Range("A3:J" & LastLig).AutoFilter Field:=7, Criteria1:=""
            .Range("A3:J" & LastLig).AutoFilter Field:=10, Criteria1:="x"
            Application.ScreenUpdating = True
        End With
        Exit Sub
    Errorhandler:
    End Sub

  4. #4
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2017
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2017
    Messages : 69
    Par défaut
    Merci à vous deux,

    Il n'y avait en-soi pas de bug mais une page excel qui ne s'activait pas.

    Chth26
    Qu'est ce qui a été mal fait dans mon code ?

    EN vous remerciant beaucoup tous les deux !

  5. #5
    Membre confirmé
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Juin 2017
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2017
    Messages : 54
    Par défaut
    Citation Envoyé par vincedu74 Voir le message
    Merci à vous deux,

    Il n'y avait en-soi pas de bug mais une page excel qui ne s'activait pas.

    Chth26
    Qu'est ce qui a été mal fait dans mon code ?

    EN vous remerciant beaucoup tous les deux !
    Pour ma part, j'essaye toujours de spécifier au maximum sur quel workbook et quelle worksheet je travaille.
    Dans l'idéal, je ne travaille jamais avec ActiveSheet.
    Ton code était bon mais devait pas s'executer sur le bon workbook.

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Commence par supprimer cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    On Error GoTo Errorhandler
    On ne fait pas du déguggage à l'aveugle.

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour vincedu74,
    Il n'y avait en-soi pas de bug mais une page excel qui ne s'activait pas.
    Libre à toi de penser qu'il n'y avait pas de bug.
    Je t'ai indiqué dans ma réponse de supprimer le On Error que Menhir t'a suggéré également.

    Utiliser un On Error sans intercepter réellement l'erreur, c'est comme prendre de l'aspirine quand on a de la fièvre. On masque le problème.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. [PHPExcel] formule qui ne s'execute pas a l'ouverture du fichier
    Par yiibee dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 03/03/2017, 06h45
  2. fonction qui ne s'execute pas mais qui ne retourne pas d'erreur
    Par duplo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/06/2006, 22h43
  3. des fichiers PERL qui ne s'executent pas
    Par steinfield dans le forum Langage
    Réponses: 2
    Dernier message: 04/05/2006, 15h52
  4. [POO] Methode de classe qui ne s'exécute pas
    Par gregal dans le forum Langage
    Réponses: 2
    Dernier message: 11/04/2006, 12h01
  5. [FLASH 8] Un trace qui ne s'execute pas ?
    Par memess dans le forum Flash
    Réponses: 13
    Dernier message: 30/11/2005, 16h46

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