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 :

Erreur dans le code VBA - fonction si


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Erreur dans le code VBA - fonction si
    Bonjour,

    J'ai réussi à archiver mes facture sur une feuilles réservée à cela sur Excel.

    Désormais, j'aimerais qu'Excel me dise "archivage déjà effectué" lorsque la facture est déjà archivée (pour je vérifie que sur la feuille "liste_facture", le numéro de facture "nf" n'est pas déjà présent) et qu'il l'archive avec un message "Archivage terminée" si ce n'est pas le cas.

    Or avec le code que j'ai écris, Excel effectue les deux opérations à chaque fois, il archive (même si c'est déjà fait) et il me montre les 2 MsgBox.

    Je ne sais pas du tout d'où vient mon erreur, est-ce que quelqu'un pourrait m'aider ?

    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
    Sub archive()
    
    Application.ScreenUpdating = False
       
        'Je vérifie que la facture ne soit pas déjà archivée
        
      Dim Plage   As Range
      Dim Cellule As Range
      
      On Error Resume Next
      Set Plage = Sheets("liste_facture").Range(Cells(1, 1), Cells(1, 60000))
      For Each Cellule In Plage
        If Cellule.Value = "nf" Then
            Result = MsgBox("Archivage déjà effectué", vbOKOnly + vbExclamation, "Attention")
                        
            If Cellule.Value <> "nf" Then
                     
        ' PROCEDURE D'ARCHIVAGE (non détaillée car elle fonctionnait précedemment, le problème ne vient pas de là)
    
                Result = MsgBox("Archivage effectué", vbOKOnly + vbInformation, "Terminé")
                         
            End If
            
        End If
        
        Next
        
    Application.ScreenUpdating = True
    End Sub

    Merci d'avance pour votre aide )))

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Février 2010
    Messages
    517
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 517
    Points : 617
    Points
    617
    Par défaut
    salut

    réalise-tu que cette partie de ton code n'a aucun sens logique ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    If Cellule.Value = "nf" Then
      Result = MsgBox("Archivage déjà effectué", vbOKOnly + vbExclamation, "Attention")
     
      If Cellule.Value <> "nf" Then
     
        PROCEDURE D'ARCHIVAGE (non détaillée car elle fonctionnait précedemment, le problème ne vient pas de là)
     
        Result = MsgBox("Archivage effectué", vbOKOnly + vbInformation, "Terminé")
     
      End If
     
    End If
    l'indentation, ici faite et toujours "parlante", montre que la vérification de la condition imbriquée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If Cellule.Value <> "nf" Then
    ne sera JAMAIS faite

Discussions similaires

  1. Erreur dans un code VBA Excel
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 09/07/2013, 07h50
  2. Erreur dans un code VBA dans Access
    Par Mathieu51 dans le forum VBA Access
    Réponses: 2
    Dernier message: 20/10/2009, 15h10
  3. [XL-2003] Aide pour erreur dans un code Vba Excel
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 25/05/2009, 07h48
  4. erreur dans le code vba
    Par jihad33 dans le forum VBA Access
    Réponses: 5
    Dernier message: 03/01/2008, 14h00
  5. Erreur dans un code VBA
    Par steevassie dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/12/2007, 20h26

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