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 :

trouver une ligne totalement vide , gestion d'erreur


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2008
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 4
    Points : 5
    Points
    5
    Par défaut trouver une ligne totalement vide , gestion d'erreur
    Bonjour,

    Je suis embetée car je n'arrive pas a sortir de mon problème.

    J'ai une feuille excel qui contient plusieurs tableaux cotes a cotes (séparés par quelques colonnes) .
    Je souhaite trouver le numéro de la première ligne totalement vide.

    Pour cela j'ai choisi d'utiliser le système de gestion d'erreur de vb:
    dans une boucle, je me positionne dans la premiere cellule de chacune des ligne , et je selectionne la ligne avec cette méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range(Selection, Selection.End(xlToRight)).Select
    lorsque la ligne est vide, excel renvoie une erreur, que je souhaite exploiter pour sortir de la boucle.

    mais lors de l'exécution, meme si la ligne n'est pas vide, (t donc qu'aucune erreur n'est renvoyée), vb continue (vide=1), ce qui me fait sortir de la boucle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    r = 4
    vide = 0
    Do While vide <> 1
        Cells(r, 1).Select
        On Error GoTo erreur_sortie
        Range(Selection, Selection.End(xlToRight)).Select
    erreur_sortie:
        vide = 1
        Exit Do
     
    r = r + 1
    Loop
    Quelqu'un a t-il une idée pour me sortir de là ?

    merci d'avance!

  2. #2
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonsoir,

    En supposant que ton premier tableau commence à la colonne A, je verrais bien un truc de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub test()
    Dim i%
    For i = 1 To Range("A65535").End(xlUp).Row
    If Cells(i, 255).End(xlToLeft) = "" Then
    MsgBox "La ligne " & i & " est entièrement vide"  '<-- la message box est juste là pour le test
    Exit For
    End If
    Next
    End Sub

  3. #3
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    SAlut
    Juste une remarque sur ton code n'anneso, je comprend pas ta gestion d'erreur, que ta ligne soit vide ou non tu exécute le code qui suit ta ligne "testé" donc tu arrive a Vide=1.
    Je vois pas trop ce que tu cherches a faire avec cette soit disant erreur générée? je doute qu'excel génère un erreur par ce que la ligne que tu sélectionne est vide. Regarde plutot une solution comme te propose Fring, enfin avec Rows.Count a la place de 65535 et Columns.count a la place de 255


    A++
    Qwaz

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/06/2008, 10h20
  2. [Aide]Comment trouver une ligne entièrement vide
    Par mickdu90 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 17/08/2007, 10h45
  3. Trouver une ligne dans un fichier d'adresses
    Par geok120 dans le forum C
    Réponses: 12
    Dernier message: 04/05/2007, 12h09
  4. Bien programmer une classe avec sa gestion d'erreur
    Par chris81 dans le forum Framework .NET
    Réponses: 8
    Dernier message: 13/02/2007, 18h13
  5. Réponses: 3
    Dernier message: 21/01/2004, 08h47

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