Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

thomashty

XLDnaute Occasionnel
Bonjour Vgendron,

Cette BDR recherche dans une BDD, qui est dans un onglet masqué. Vous pouvez le faire apparaître en cliquant sur l'autre bouton de la page d'accueil. Peut-être ça répondra à votre question.
 

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
 

thomashty

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

Je viens de mettre ça aussi, ça à l'air de fonctionner aussi..

VB:
Range(.Cells(16, "A"), .Cells(1048576, "G")).ClearContents

Merci beaucoup en tout cas
 

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..
 

thomashty

XLDnaute Occasionnel
Bonjour,

Il s'avère qu'en G2 avant j'avais une fonction NBVAL, qui indiquait le nombre de résultat.. Et je l'ai supprimé, tout est plus clair maintenant, merci pour votre explication qui m'a permis de retrouver le pourquoi du comment !!
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…