Parcourir ligne Excel via VB [Résolu]

Signaler
Messages postés
74
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
19 octobre 2011
-
Messages postés
74
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
19 octobre 2011
-
Bonjour à tous!

Je travaille sur Excel via un programme VB. Je voudrais que mon programme parcourt une colonne de la cellule 2 jusqu'à ce que la cellule soit vide (mettons la 20ème). Cependant je ne veux pas stipuler le numéro de ligne correspondant: il faudrait que le programme sache lui même s'arréter lorsque la cellule est vide.

Pensez vous qu'il faut travailler avec un while ou une boucle?

Je vous remercie!

Bonne journée!


Alex

4 réponses

Messages postés
41
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
19 septembre 2013

Messages postés
41
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
19 septembre 2013

Bonjour isfaen,
j'ai mis une fonction permettant de supprimer les lignes vides (comme exemple), ce code parcour toutes les lignes d'excel et s'il trouve une ligne vide il la supprime.
voila, essayer de bien comprendre le code.
    Function SupprimerLignesVidesFeuille(ByVal Feuille As Excels.Worksheet)
        Dim ligne As Long = 0
        Dim nbr As Integer = 0

For ligne = Feuille.Cells.SpecialCells(Microsoft.Office.Interop.Excel.XlCellType.xlCellTypeLastCell).Row To 1 Step -1
            nbr = nbr + 1
            If Feuille.Rows(ligne & ":" & ligne).Cells.SpecialCells(Microsoft.Office.Interop.Excel.XlCellType.xlCellTypeBlanks).Count = Feuille.UsedRange.Columns.Count Then
'ton traitement
'ici par exemple supprime les lignes vides
                Feuille.Rows(ligne & ":" & ligne).Delete()
                nbr = nbr - 1
            End If
            Application.DoEvents()
        Next ligne


        
        Return nbr
        End Function




Bonne continuation.
Messages postés
74
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
19 octobre 2011

Merci pour ta réponse.

En fait je travaille sur une boucle qui parcourt le fichier excel fais des opérations et efface certaines lignes, puis recommence avec le nouveau fichier. Je répète cette opération n fois (valeur que je rentre dans une TextBox).

De cela je ne vois pas comment je peux adapter ton code sans allonger ma vitesse d'execution qui sera extrémement longue à terme.

N'existe il pas une fonction déjà incrémenter dans VB qui s'arrête dès qu'une cellule est vide?

Alex
Messages postés
74
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
19 octobre 2011

J'ai un peu adapté le code à mon cas et cela marche nickel!

Pourtant j'avais cherché avec mon ami Google et je n'avais rien trouvé ><

Merci beaucoup!


Alex