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 :

Do while et IF


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Septembre 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Do while et IF
    Bonjour,

    J'ai grandement besoin de votre aide.

    Je veux faire une boucle dans un tableau:

    Si la cellule de la colonne B est remplit mais que la cellule de la colonne C est vide, alors affiche moi un message, sinon continue vers la prochaine étape. Mais je ne veux pas que le message s'affiche a chaque cellule vide mais jusqu'à ce qu'il en rencontre une.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    For I = 1 To 500
     
        If Cells(I, 2) <> "" And Cells(I, 5) & Cells(I, 7) & Cells(I, 14) & Cells(I, 17) = "" Then
     
            MsgBox ("Veuillez remplir colonnes suivantes: Région,Raison,Type manquement,Intervalle2")
     
     
        Else
     
            Call courriel
     
        End if 
    next i
    J'en suis là dans mon processus.... cela n'affiche pas mon msgbox en plus d'envoyer 500 courriels

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par System1212 Voir le message
    Bonjour,

    Je pense que vous risquez de rendre fous les utilisateurs avec vos messages. Il vaudrait mieux vérifier tous les cas à modifier et interrompre le programme s'il y en a. Le code ci-dessous, colore en jaune et filtre les cellules vides de la colonne C en plus de vos autres conditions.
    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
     
    Sub Test()
     
    Dim I As Integer, DerniereColonne As Integer, NbCVides As Integer
     
        With ActiveSheet
     
             DerniereColonne = .UsedRange.SpecialCells(xlCellTypeLastCell).Column
             .Columns(3).Interior.Color = xlNone
             NbCVides = 0
     
             For I = 1 To 500
                 If .Cells(I, 2) <> "" And .Cells(I, 5) & .Cells(I, 7) & .Cells(I, 14) & .Cells(I, 17) = "" Then
                    If .Cells(I, 3) = "" Then
                       .Cells(I, 3).Interior.Color = RGB(255, 255, 0)
                       NbCVides = NbCVides + 1
                    End If
                 End If
             Next I
     
             If NbCVides > 0 Then
                .Range(.Cells(1, 1), .Cells(500, DerniereColonne)).AutoFilter Field:=3, Criteria1:=RGB(255, 255, 0), Operator:=xlFilterCellColor
                MsgBox "Veuillez remplir colonnes suivantes: Région,Raison,Type manquement,Intervalle2", vbCritical
                Exit Sub
             Else
     
                courriel
     
             End If
     
        End With
     
    End Sub

Discussions similaires

  1. [CR8.5] Pbm d'affichage dans un While
    Par .:Tieri:. dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 14/07/2004, 10h17
  2. [MFC] Dialog dans une boucle while
    Par oxor3 dans le forum MFC
    Réponses: 5
    Dernier message: 23/04/2004, 22h51
  3. Réponses: 2
    Dernier message: 05/02/2004, 13h58
  4. [débutant]Documentation? boucle "while"? Session?
    Par o151181 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 19/01/2004, 15h20
  5. Réponses: 3
    Dernier message: 25/11/2002, 14h15

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