Bonjour à toutes et tous,
Dans cette discussion,
https://www.developpez.net/forums/d2...ormat-tableau/
Philippe Tulliez propose le code suivant pour trouver la 1ère cellule vide dans une colonne.
La recherche se fait sur la colonne D soit la 1ère colonne (indice(1)) du tableau "Cpta_Test" à savoir la colonne nommée "Mois".
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 Sub t11() Dim rng As Range Dim Cell As Range Set rng = Range("Cpta_Test").ListObject.ListColumns(1).DataBodyRange ' ListColumns(1) = 1ère colonne du tableau ' Il est possible également de remplacer l'indice 1 par le nom de la colonne 'Set rng = Range("Cpta_Test").ListObject.ListColumns("Mois").DataBodyRange ' ListColumns("Mois") = 1ère colonne du tableau On Error Resume Next Set Cell = Range("Cpta_Test").SpecialCells(xlCellTypeBlanks)(1) If Err.Number Then MsgBox "Pas de cellule vide" Else MsgBox "Première cellule vide " & Cell.Address End If On Error GoTo 0 Set rng = Nothing: Set Cell = Nothing End Sub
Dans mon tableau test, le résultat de la recherche doit être la cellule D32.
Mais le résultat retourné est G15. Cette cellule est bien la première de la colonne G.
Je ne comprends pas pourquoi il va chercher sur la 4ème colonne du tableau.
Si je remplace ligne 8 Set Cell = Range("Cpta_Test").SpecialCells(xlCellTypeBlanks)(1) le (1) par (0), le résultat retourné est G14.
Si je supprime ligne 8 Set Cell = Range("Cpta_Test").SpecialCells(xlCellTypeBlanks)(1) le (1), le résultat retourné est la liste de toutes les cellules vides du tableau.
Merci pour votre aide
Philippe
Partager