OVH Cloud OVH Cloud

suppression de données

12 réponses
Avatar
Sunburn
Bonjour,
par macro, je voudrais supprimer des données spécifiques de mon classeur,
onglet par onglet.
mais ce que j'ai construit plante, et je ne comprend pas pourquoi ?
voilà ce que j'ai, MERCI de votre aide :
---
Sub FTS20()
'onglet 20_23
Sheets("20_23").Select
'effacement
Range("H9:I40,J42").Select
Selection.ClearContents
'on met la valeur NA en A4
Range("A4") = "NA"
End Sub
----

2 réponses

1 2
Avatar
Jacky
Re...
Je te propose 2 solutions ne sachant pas comment est agencé ton classeur
les cellules à modifier ou à copier doivent avoir les mêmes adresses dans
les feuilles
'*-une avec exclusion de certain classeur
'----------------
For Each sh In ActiveWorkbook.Worksheets
If sh.Name <> "Feuil1" Then 'ici le nom des feuilles à exclure*******
With sh
MsgBox sh.Name 'ici le code******
End With
End If
Next
'----------------
'*-L'autre avec le nom des feuilles en tenant compte de ton exemple
("30_31";"30_41")
'----------------
For i = 31 To 41 Step 10 'a adapter******
With Sheets("30_" & i).Name
MsgBox Sheets(("30_" & i)).Name 'ici le code*****
End With
Next
'-----------------
--
Salutations
JJ


"Sunburn" a écrit dans le message de
news:
Re,
encore moi Jacky
au fait, si je veux appliquer les meme choses à plusieurs onglets, je peux
mettre :
With Sheets("30_31";"30_41")
par exemple ??
Merci.
Yann

"Jacky" a écrit :

Re...
Ton code un simplifié
'--------------
Sub FTS30()
'onglet 30_31
With Sheets("30_31")
'deplacement
.[H10:H29].Copy
.[F10].PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
.[E10:E29,H10:H29].ClearContents 'effacement
.[A4] = "NA" 'on met la valeur NA en A4
End With
End Sub
'------------------
--
Salutations
JJ




Avatar
Jacky
Re
Il faut lire
'*-une avec exclusion de certaines feuilles
et non pas
'*-une avec exclusion de certain classeur

--
Salutations
JJ


"Jacky" a écrit dans le message de news:

Re...
Je te propose 2 solutions ne sachant pas comment est agencé ton classeur
les cellules à modifier ou à copier doivent avoir les mêmes adresses dans
les feuilles
'*-une avec exclusion de certain classeur
'----------------
For Each sh In ActiveWorkbook.Worksheets
If sh.Name <> "Feuil1" Then 'ici le nom des feuilles à exclure*******
With sh
MsgBox sh.Name 'ici le code******
End With
End If
Next
'----------------
'*-L'autre avec le nom des feuilles en tenant compte de ton exemple
("30_31";"30_41")
'----------------
For i = 31 To 41 Step 10 'a adapter******
With Sheets("30_" & i).Name
MsgBox Sheets(("30_" & i)).Name 'ici le code*****
End With
Next
'-----------------
--
Salutations
JJ


"Sunburn" a écrit dans le message de
news:
Re,
encore moi Jacky
au fait, si je veux appliquer les meme choses à plusieurs onglets, je
peux
mettre :
With Sheets("30_31";"30_41")
par exemple ??
Merci.
Yann

"Jacky" a écrit :

Re...
Ton code un simplifié
'--------------
Sub FTS30()
'onglet 30_31
With Sheets("30_31")
'deplacement
.[H10:H29].Copy
.[F10].PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
.[E10:E29,H10:H29].ClearContents 'effacement
.[A4] = "NA" 'on met la valeur NA en A4
End With
End Sub
'------------------
--
Salutations
JJ








1 2