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 :

[XL-2021] Message box qui ne s'affiche plus


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Resp. SUPPLY CHAIN
    Inscrit en
    Juillet 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Resp. SUPPLY CHAIN
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2020
    Messages : 6
    Par défaut [XL-2021] Message box qui ne s'affiche plus
    Bonjour à tous,

    J'ai besoin de votre aide concernant l'exécution d'une macro. Voici le code

    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
    Option Explicit
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     
    On Error GoTo fin
     
    Dim crit1 As String
    Dim crit2 As Date
    Dim cel As Range
    Dim msg As String
    'Dim var1 As String
    Dim i  As Integer
    Dim dl As Integer
    Dim message As String
     
    crit2 = Sheets("VERSION FRANCK").Range("$T$6").Value
     
        If Not Application.Intersect(Target, Range("$T$8:$T$207")) Is Nothing Then
     
           Application.Calculation = xlCalculationManual
            crit1 = ActiveCell.Offset(0, -19).Value
     
            Sheets("paljmp explig").Select
     
            ActiveSheet.ListObjects("paljmp_explig").Range.AutoFilter Field:=3, _
                Criteria1:=crit1
            ActiveSheet.ListObjects("paljmp_explig").Range.AutoFilter Field:=13, _
                Criteria1:=">=" & Format(crit2, "mm/dd/yyyy")
            ActiveSheet.ListObjects("paljmp_explig").Range.AutoFilter Field:=5, _
                Criteria1:=0
     
            Sheets("VERSION FRANCK").Select
     
    With Sheets("paljmp explig")
     
       dl = .Range("C" & Rows.Count).End(xlUp).Row
     
        For i = 1 To dl
     
              If .Range("C" & i) = crit1 And .Range("M" & i) >= crit2 And .Range("E" & i) = 0 Then
     
                message = message & vbCrLf & .Range("D" & i) & " " & "colis" & " " & "en départ le :" & " " & .Range("M" & i) & " " & .Range("K" & i) & "/" & .Range("L" & i) & Chr(10)
     
              End If
     
        Next i
     
        MsgBox "message", vbExclamation + vbOKOnly, "Voici la liste des expéditions :"
     
    End With
     
    fin:
     
        End If
     
    Application.Calculation = xlCalculationAutomatic
     
    Sheets("VERSION FRANCK").Select
     
     
    End Sub
    Ce code fonctionnait très bien jusqu'au jour ou je suis passé de XL-2019 à XL 2021. La première partie du code fonctionne bien, c'est-à-dire appliquer un filtre sur un tableau provenant de données externe. Par contre, la msgbox ne s'affiche plus du tout. Une idée ?

    Merci pour votre aide.

  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 169
    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 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour savoir l'origine de votre problème et surtout la ligne où a lieu l'erreur, enlevez votre ligne On Error GoTo fin
    Ce n'est donc pas le MsgBox qui ne s'affiche pas mais tout simplement une erreur qui a eu lieu entre la ligne 6 et la ligne 50
    C'est une très mauvaise idée de placer ce type d'instruction de la manière dont vous l'utilisez. C'est comme le papier peint, c'est un cache misère.
    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 du Club
    Homme Profil pro
    Resp. SUPPLY CHAIN
    Inscrit en
    Juillet 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Resp. SUPPLY CHAIN
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2020
    Messages : 6
    Par défaut
    Bonjour M. TULLIEZ,

    Merci pour votre retour. En effet, c'est bien un cache misère. J'ai bien un message d'erreur qui s'affiche à la ligne 35 : Erreur d'execution '6' : Dépassement de capacité. Du coup, j'ai modifier mes deux variables dl et i par Variant au lieu d'Integer et tout refonctionne. Et bien évidement supprimer On error goto...

    Merci beaucoup M. TULLIEZ.

  4. #4
    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 169
    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 169
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Du coup, j'ai modifier mes deux variables dl et i par Variant au lieu d'Integer et tout refonctionne. Et bien évidement supprimer On error goto...
    Le type Variant ne devrait être utilisé que dans des cas très particulier comme par exemple pour typer une variable qui pourrait contenir un tableau.
    Personnellement, je type les variables devant contenir les n° de colonnes comme Integer et celles devant contenir les n° de lignes comme Long
    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

  5. #5
    Membre du Club
    Homme Profil pro
    Resp. SUPPLY CHAIN
    Inscrit en
    Juillet 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Resp. SUPPLY CHAIN
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2020
    Messages : 6
    Par défaut
    D'accord, je vais appliquer votre préconisation. Merci pour cette information.

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 508
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 508
    Par défaut
    En resumé:
    Tu n'as pas corrigé les problèmes, tu les as contournés.

    Concernant les types de variable, ils existent pour une raison, et il est primordiale de les choisir en fonction des données que l'on manipule.

    Tu n'as pas l'air de connaitre les bases, trouves toi un cours potable.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Download dialog box qui ne s'affiche pas
    Par Gaaaga dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 03/06/2009, 11h18
  2. nouvelles actions qui ne s'affichent plus
    Par dida.ratsimba dans le forum W4 Express
    Réponses: 0
    Dernier message: 21/04/2009, 21h57
  3. [JpGraph] Graphique qui ne s'affiche plus après avoir modifié l'exemple
    Par kanabzh29 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 18/08/2008, 12h00
  4. Réponses: 5
    Dernier message: 13/11/2007, 12h17
  5. Réponses: 9
    Dernier message: 29/01/2007, 09h40

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