Excel - Effacer le contenu de feuilles

Fermé
romain - 24 juin 2008 à 15:08
 microsig - 14 févr. 2010 à 22:07
Bonjour,

Voila j'ai plusieurs fichier contenant plusieurs feuille dont je voudrait supprimé le contenu grace au click sur un bouton, donc voici mon code qui marche presque :

Private Sub CommandButton1_Click()
Chemin = ThisWorkbook.Path & "\"
Workbooks.Open Filename:=Chemin & "PC.xls"
Workbooks.Open Filename:=Chemin & "Imprimantes.xls"
Workbooks.Open Filename:=Chemin & "Hub et Switch.xls"
Windows("01-Gestion du parc.xls").Activate
Sheets(Array("Données", "36", "FeuilleDeVariable")).Select
ActiveSheet.Cells.Clear
Sheets("Presentation").Activate
Range("A49").Select
ActiveWindow.ScrollRow = 1
ActiveWorkbook.Save
Windows("PC.xls").Activate
Sheets(Array("PC.6510B", "PC.D530", "PC.DC5750", "PC.P733", "PC.E5600", "PC.D500", _
"PC.N620C", "PC.E620")).Select
ActiveSheet.Cells.Clear
ActiveWorkbook.Save
ActiveWindow.Close
Windows("Imprimantes.xls").Activate
Sheets(Array("Imp.2390", "Imp.2391", "Imp.C524", "Imp.C534", "Imp.DESKJET", _
"Imp.E323", "Imp.HL", "Imp.IR", "Imp.LASERJET", "Imp.OPTRA", "Imp.STYLUS")).Select
ActiveSheet.Cells.Clear
ActiveWorkbook.Save
ActiveWindow.Close
Windows("Hub et Switch.xls").Activate
Sheets(Array("H&S.3COM", "H&S.CISCO")).Select
ActiveSheets.Cells.Clear
ActiveWorkbook.Save
ActiveWindow.Close
End Sub


Le problème vient du faite que " ActiveSheet.Cells.Clear" ne supprime le contenu des cellules seulement que de la feuille visible et non pas de toutes les feuilles selectionné ...

voila jespère avoir été assez clair et que vous réussirez a m'aidé ...

cordialement romain

6 réponses

Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
25 juin 2008 à 12:41
Salut,
si ce n'est pas trop tard
Sheets(Array("PC.6510B", "PC.D530", "PC.DC5750", "PC.P733", "PC.E5600", "PC.D500", _ 
"PC.N620C", "PC.E620")).Select 
Cells.Select
Selection.ClearContents
8
merci beaucoup cela marche niquel!!!
4
Bonjour

Le plus simple est de faire une boucle

For i = 1 To Sheets.Count
Sheets(i).Cells.Clear
Next i
0
essai ca :

Sheets(Array("Feuil1", "Feuil2", "Feuil3")).Select
2
j'ai testé ca fait la meme chose que j'avais au depart
enfaite ta solution marche mais comme j'ai dis plus haut
il faudrait que je face cela pour chaque onglet de chaque fichier
mais j'avoue avoir un peu la flem ^^
enfin bon je ferai sa demain je crois que c'est la seule solution

merci pour l'aide

cordialement
romain
0
Et peut-on faire la mêm chose pour effacer cette fois ci le contenu des combobox de la feuille, au lieu des cellules?
merci d'avance
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour
Je suis un débutant en VBA
Voila j’ai un classeur Nome FACTURE Excel(V.2003)
Je suis sur une Feuil C
Je voudrais effacer les contenues de touts les cellules
Non Protéger d’un tableau dans la Feuil A
J’ai utiliser une boucle
Fro i=1 to Sheets.Count
Sheets(i).cells.Clear
Next i
Mais elle ne fonctionne pas
La boucle efface tout la feuil A
1
bonjour,

c'est normal car "activeSheet" veut dire dans la feuille active (visible).

il faut que tu precise quel cellule effacer et dans quel feuille, comme par exemple :
sheets("feuil1").select
Range("A1").select
activesheet.cells.clear
0
oui mais cela ralonge considerablement ma macro car il faut que je fasse onglet par onglet et fichier par fichier ...

il n'y a pas un mot similaire a activesheet qui correspond aux feuilles selectionnées?

en tout cas merci pour l'aide

cordialement
0