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

Fonction atteindre sur multiples onglets

  • Initiateur de la discussion Initiateur de la discussion Rick@
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Rick@

XLDnaute Occasionnel
Bonjour,

Comme le titre le dit, il me faut effacer plusieurs "objets" dans plusieurs onglets (+250 ). Histoire de ne pas prendre ma retraite là dessus, j'ai mis en macro la fonction "atteindre" cependant un seul onglet n'est permis à la fois... Comment effacer tous les objets dans tous les onglets en une seule action???

Merci encore et encore!!!!
 
Re : Fonction atteindre sur multiples onglets

Bon jour
Et bien si vous savez le faire pour une feuille F donnée:
VB:
Dim F As Worksheet
For Each F In ThisWorkbook.Worksheets
   CeQueJeSaisFaire
   Next F
À+
 
Re : Fonction atteindre sur multiples onglets

Il semble manquer quelque chose... Voici la macro de base,

Sub Atteindre()
'
' Atteindre Macro
' Macro enregistrée le 2011-08-15 par bh7997
'

'
ActiveSheet.DrawingObjects.Select
End Sub
 
Re : Fonction atteindre sur multiples onglets

Il semble manquer quelque chose
votre macro sélectionne une collection mais ne supprime rien.
De plus cette collection .DrawingObjects ne m'est pas proposée. Je connais Shapes. Alors:
VB:
Dim F As Worksheet, D As Shape
For Each F In ThisWorkbook.Worksheets
   For Each D In F.Shapes
      D.Delete
      Next D
   Next F
À+
 
Re : Fonction atteindre sur multiples onglets

Nous sommes sur une bonne piste! La macro efface les objets dans tous les onglets, cependant j'aimerais pouvoir sélectionner moi même les onglets et surtout pouvoir en sélectionner plusieurs à la fois et ainsi y effacer les objets.
 
Re : Fonction atteindre sur multiples onglets

Alors sélectionnez les feuilles concernées en maintenant Ctrl appuyé avant de lancer la macro contenant:
VB:
Dim F As Worksheet, D As Shape
For Each F In ThisWorkbook.Windows(1).SelectedSheets
   For Each D In F.Shapes
      D.Delete
      Next D
   Next F
À+
 
Re : Fonction atteindre sur multiples onglets

Bonsoir Rick,
DranReb🙂

Il y a des choses qu'on ne peut pas traiter sur des groupes de feuilles.
Sélectionne tes feuilles comme dit par DranReb et lance la macro suivante.

Elle parcourt les feuilles sélectionnées pour n'en retenir que le nom
elle sélectionne la première d'entre elle (pour déselectionner le groupe)

Code:
Sub Atteindre()
    Dim tbl() As String    'Tableau des noms de feuilles sélectionnées
    Dim i As Integer    ' indice de boucle
'Dresser le tableau des noms de feuilles sélectionnées
    With ThisWorkbook.Windows(1).SelectedSheets
        ReDim tbl(1 To .Count)
        For i = 1 To .Count
            tbl(i) = .Item(i).Name
        Next
        'Sélectionne la première des feuilles
        .Item(1).Select
    End With
'Traiter les Shapes des feuilles l'une après l'autre
    For i = 1 To UBound(tbl)
        With ThisWorkbook.Sheets(tbl(i))
            Do While .Shapes.Count > 0
                .Shapes(1).Delete
            Loop
        End With
    Next
End Sub

A+
 
Dernière modification par un modérateur:
Re : Fonction atteindre sur multiples onglets

Savais plus...
Mais on peut quand même l'écrire plus simplement:
VB:
Sub Atteindre()
Dim Fs As Sheets, F As Object, D As Shape
Set Fs = ThisWorkbook.Windows(1).SelectedSheets
Fs(1).Select
For Each F In Fs
   For Each D In F.Shapes
      D.Delete
      Next D
   Next F
End Sub
À+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

P
Réponses
3
Affichages
752
punk_sportif
P
Réponses
8
Affichages
821
N
Réponses
14
Affichages
2 K
NATHOU33
N
M
  • Question Question
Réponses
3
Affichages
1 K
Mr.Nobody
M
M
Réponses
4
Affichages
2 K
margaux_
M
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…