XL 2016 Première ligne qui ne se rempli pas

halecs93

XLDnaute Impliqué
Bonjour,

Toujours dans mon tableau de suivi, je valide des données via userform. Je n'arrive pas à remplir mon tableau dès la première ligne de celui-ci. Les données s'inscrivent à la seconde ligne, puis la suivante, etc...

(j'ai supprimé le mot de passe de protection de la feuille)

Encore une fois.... mon code va sembler bien biscornu à certaines et certains... mais on fait c'qu'on peut ;)

Merci beaucoup pour l'aide apportée
 

Pièces jointes

  • SUIVI COMPTA - v3.xlsm
    66.6 KB · Affichages: 8
Solution
Bonjour Halec, M12, Natorp,
Un essai en PJ en traitant le tableau directement comme un tableau structuré, ce qu'il est !
Pour la gestion des tableaux structurés, voir :

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Halec, M12, Natorp,
Un essai en PJ en traitant le tableau directement comme un tableau structuré, ce qu'il est !
Pour la gestion des tableaux structurés, voir :
 

Pièces jointes

  • SUIVI COMPTA - v4 (1).xlsm
    77.1 KB · Affichages: 7

halecs93

XLDnaute Impliqué
Bonjour Halec, M12, Natorp,
Un essai en PJ en traitant le tableau directement comme un tableau structuré, ce qu'il est !
Pour la gestion des tableaux structurés, voir :
ça semble en effet fonctionner à merveille. Je le mets en solution. Merci
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Les tableaux structurés offrent pas mal d'avantages, mais on une programmation spécifique.
Par contre :
- On n'a pas à se soucier où il se trouve dans le fichier, ni dans quelle feuille
- On conserve les mises en forme
- Il suffit de mettre une formule dans une cellule de la 1ere ligne pour qu'elle se propage sur toute la colonne.
- Quand on crée une nouvelle ligne, les formules présentent sont répétées automatiquement.
- Les formules dans une feuille s'adaptent automatiquement à la taille du tableau.
....

Pour les futurs lecteurs, ce n'est pas votre post à mettre en vert mais le post qui donne la solution.
Ce post remontera automatiquement après la demande d'où une plus grande lisibilité.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous, @halecs93 :),

En fait dans ton tableau structuré initial, il y a une ligne de donnée (la ligne 4 de la feuille) et cette ligne est complètement vide! C'est ce qui perturbe la programmation.

Il faut noter que visuellement rien ne distingue un tableau structuré entièrement vide (aucune ligne de donnée) avec un tableau structuré n'ayant qu'une seule ligne de donnée complètement vide.

Donc pour le codage, on a trois possibilités quand on veut rajouter une ligne de données :

1) Le tableau structuré est entièrement vide (nombre de lignes de données = 0) et dans ce cas on rajoute une ligne de données et c'est dans cette ligne (donc la dernière) du tableau dans laquelle on rajoute les données.

Ou bien le tableau structuré n'est pas entièrement vide (il y a donc déjà une dernière ligne de données). On vérifie si cette dernière ligne est complètement vide :

2) si oui alors cette dernière ligne devient la ligne dans laquelle on rajoute les données.
3) si non alors il faut rajouter une ligne dans le tableau et c'est cette ligne (donc maintenant la dernière) qui va recevoir les données

Conséquence : après avoir appliqué ce raisonnement, qu'on soit dans le cas 1, 2 ou 3, les données seront à ajouter à la dernière ligne du tableau.

Dans le classeur joint voir le code du bouton Validation du Userform. On utilise les propriétés et méthodes spécifiques aux objets "Tableau structuré" ou "ListObject".
A aucun moment, on n'utilise l'instruction END() qui fonctionne bien pour une plage mais moins bien pour un tableau structuré.
 

Pièces jointes

  • halecs93- SUIVI COMPTA- v1.xlsm
    72 KB · Affichages: 3
Dernière édition:

Discussions similaires

Réponses
17
Affichages
320

Statistiques des forums

Discussions
312 164
Messages
2 085 877
Membres
103 007
dernier inscrit
salma_hayek