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

Action macro sur selection de feuilles

  • Initiateur de la discussion Initiateur de la discussion KTM
  • 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 !

KTM

XLDnaute Impliqué
Salut chers Amis du Forum
Je vous présente ma macro suivante qui doit faire ceci:
-Dans les feuilles sélectionnées ; Copier la Plage I13:I47 et la coller en valeur dans D13😀47 et mettre le signe égal (=) devant les valeurs dans D13😀47
- Le problème est que seule la première feuille de la sélection est affectée. Je ne comprends pas pourquoi.
Quelqu'un pourrait-il apporter une correction à mon code ?
Merci



Sub Coopt ()
Sheets(Array("RM", "RMCe", "Rnan", "R",RMm", "Rdp", "RMCSha")).Select
Sheets("RM").Activate
Range("I13:I47").Select
Selection.Copy
Range("D13").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False

Dim cel As Range
For Each cel In Range("D13😀47")
cel.Formula = "=" & cel
Next cel
End Sub
 
Bonjour,

En utilisant sheets(array...., il ne faut pas activer de feuille (Sheets("RM").Activate) sinon les instructions auront lieu sur cette feuille et non sur l'ensemble.
mais malgré ça, le For Each cel ... ne s'exécute que sur la feuille active et non sur l'ensemble.

Une solution de contournement:

VB:
Sub Coopt ()
Dim cel As Range, i As Long, T

T=Array("RM", "RMCe", "Rnan", "R",RMm", "Rdp", "RMCSha")  ' attention erreur "R",RMm"
Application.ScreenUpdating = False

For i = LBound(T) To UBound(T)
  With Worksheets(T(i))
  .Range("I13:I47").Copy
  .Range("D13").PasteSpecial Paste:=xlPasteValues
  Application.CutCopyMode = False
  
  For Each cel In .Range("D13:D47")
  cel.Formula = "=" & cel
  Next cel
  End With

Next i
Application.ScreenUpdating = True
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

Réponses
10
Affichages
547
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…