XL 2013 Nettoyer des cellules

thomashty

XLDnaute Occasionnel
Bonjour à tous,

J'ai un terrible problème, mon outil a soudainement arrêté de vider les cellules de leur contenu comme il le faisait jusqu'à présent!! Je ne comprends vraiment pas..

Je vous le met en PJ, cliquez sur "chercher un doucement" et vous verrez une liste et une TBxbarre de recherche. Avant quand la BDR était vide, elle vidait les cellules à partir de la ligne 16. Maintenant elle ne le fait plus.

Merci de votre aide
Thomas

PS: mdp = VPP2016
 

Pièces jointes

  • A modifier.xlsm
    204.8 KB · Affichages: 69

vgendron

XLDnaute Barbatruc
Re

en fait; je ne pige pas bien comment c'est censé fonctionner..
dans le code de la feuille "Zone de recherche" tu as le code (que je pense etre celui qui doit effacer..??..)
Code:
With Sheets("Zone de recherche")
    .LBxRésultats.Clear
    .Range(.Cells(16, "A"), .Cells(16 + [G2].Value, "G")).ClearContents
End With

sauf que.. je ne vois pas à quoi correspond le LBxRésultats..
certainement une listbox.. du formulaire de saisie??
 

thomashty

XLDnaute Occasionnel
LBxRésultats c'est le cadre blanc en dessous de la barre de recherche

Et la ligne en dessous est supposé TOUT vider lorsque la barre de recherche est vide !

Sauf que maintenant ça ne le fait plus, peut-être que vous si ? Essayez de taper n'importe quoi dans la barre voir si ça vous le fait
 

vgendron

XLDnaute Barbatruc
Je ne pense pas que ce soit ça
as tu vérifié au moins???

parce que moi. lorsque je modifie le code pour aller chercher la valeur G1 de la feuille "Liste de documents".. ca marche..

Code:
'On nettoie la ListBox
With Sheets("Zone de recherche")
    .LBxRésultats.Clear
    .Range(.Cells(16, "A"), .Cells(16 + Sheets("Liste de documents").[G1].Value, "G")).ClearContents
End With
 

vgendron

XLDnaute Barbatruc
Hello

Ah oui effectivement ça fonctionne, je n'y comprends rien

tu souhaites faire un clearcontents d'une range..
une range. c'est une cellule de départ et une cellule d'arrivée..
ici:
Code:
Range(.Cells(16, "A"), .Cells(16 + [G2].Value, "G")).ClearContents
la cellule de départ c'est A16
et la cellule de fin: G 16+x
x étant le nombre contenu dans la cellule G2
donc. si G2 contient 20 alors ta cellule de fin est G36

dans ton fichier.. la cellule G2 est vide.. donc..vba est perdu.. et ne sait pas calculer ta cellule de fin. donc.. plutot que te prévenir.. il ne fait rien..
 

Discussions similaires

Statistiques des forums

Discussions
312 472
Messages
2 088 710
Membres
103 930
dernier inscrit
Jibo