Question très Simple

Orientationis

XLDnaute Junior
Bonjour,

Je souhaiterais avoir un code me permettant d'appliquer une macro sur des feuilles bien définies.

Merci beaucoup


;-)
 

Orientationis

XLDnaute Junior
Re : Question très Simple

Je vais reformuler ma demande :

Dans mon classeur Excel composé de 6 feuilles, je souhaiterais éxécuter une macro sur 3 feuilles seulement.

J'ai trouvé un code du genre :

For Each feuilles In Worksheets(Array("feuil1", "feuil2", "feuil3))
'Call My macro

Mais ce dernier ne marche pas. Je pensais que vous pourriez peut-être corriger ce code ou encore m'en proposer un nouveau.

En vous remerciant :):):):)
 

ROGER2327

XLDnaute Barbatruc
Re : Question très Simple

Re...
Je vais reformuler ma demande :
Dans mon classeur Excel composé de 6 feuilles, je souhaiterais éxécuter une macro sur 3 feuilles seulement.
J'ai trouvé un code du genre :

For Each feuilles In Worksheets(Array("feuil1", "feuil2", "feuil3))
'Call My macro

Mais ce dernier ne marche pas. Je pensais que vous pourriez peut-être corriger ce code ou encore m'en proposer un nouveau.

En vous remerciant :):):):)
Ecrire quelque chose du genre :
Code:
[COLOR="DarkSlateGray"]liste_de_feuilles = Array("feuil1", "feuil2", "feuil3")
For i= 0 to 2
    Set feuilles = Worksheets(liste_de_feuilles(i))
    [COLOR="SeaGreen"]' Suite du code[/COLOR]
Next i[/COLOR]
ou
Code:
[COLOR="DarkSlateGray"]liste_de_feuilles = Array("feuil1", "feuil2", "feuil3")
For i= 0 to 2
    Set feuilles = Worksheets(liste_de_feuilles(i))
    With feuilles
        [COLOR="SeaGreen"]' Suite du code[/COLOR]
    End With
Next i[/COLOR]
C'est une ébauche de structure. Pour en dire plus, il faudrait connaître plus de choses sur la suite du code.​
Bon courage.
ROGER2327
 

ROGER2327

XLDnaute Barbatruc
Re : Question très Simple

Re...
La suite du code est en fait un code pour la suppression de doublons

For i = [G65000].End(xlUp).Row To 2 Step -1
If Cells(i, 1) = Cells(i - 1, 1) Then Rows(i).Delete
Next i
C'est presque fini, il suffit de placer votre code à la place de ' Suite du code :
Code:
[COLOR="DarkSlateGray"]liste_de_feuilles = Array("feuil1", "feuil2", "feuil3")
For [B]j[/B] = 0 to 2
    Set feuilles = Worksheets(liste_de_feuilles([B]j[/B]))
    With feuilles
        [B]For i = [COLOR="Red"].[/COLOR][G65000].End(xlUp).Row To 2 Step -1
            If [COLOR="Red"].[/COLOR]Cells(i, 1) = [COLOR="Red"].[/COLOR]Cells(i - 1, 1) Then [COLOR="Red"].[/COLOR]Rows(i).Delete
        Next i[/B]
    End With
Next [B]j[/B][/COLOR]
N'oubliez pas les points rouges !
Notez que nous aurions gagné du temps tous les deux si vous aviez donné l'ensemble de votre code dès le début.​
ROGER2327
 

Discussions similaires

Réponses
5
Affichages
317

Statistiques des forums

Discussions
312 412
Messages
2 088 196
Membres
103 763
dernier inscrit
p.michaux