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

XL 2013 Fonction vba copie coller

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 !

lestoiles1

XLDnaute Occasionnel
Bonjour à tous,

Je ne sais pas qu-est-ce qui cloche avec le code vba copie coller pourtant j'ai fait record macro et ça bug au niveau de range("A8:A108")

Merci

Lestoiles1

Private Sub CommandButton1_Click()
Sheets("Resume").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
ActiveWindow.SmallScroll Down:=-18
Range("A8:A108").Select
Selection.Copy
Sheets("ALL2").Select
Range("A28037").Select
ActiveSheet.Paste
Sheets("Resume").Select
Range("R8:S108").Select
Range("S108").Activate
Application.CutCopyMode = False
Selection.Copy
Sheets("ALL2").Select
Range("B28037").Select
ActiveSheet.Paste
Range("D28037").Select
Application.CutCopyMode = False
Range("E28036").Select
Selection.Copy
Range("E28037").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("D28037").Select
ActiveCell.FormulaR1C1 = "1/24/2022"
Range("F28036").Select
Selection.Copy
Range("F28037").Select
ActiveSheet.Paste
Range("D28037:F28037").Select
Application.CutCopyMode = False
Selection.Copy
End Sub
 

Pièces jointes

  • Capture.JPG
    80.9 KB · Affichages: 37
Bonjour lestoiles1, le forum,

Puisque c'est la macro d'un CommandButton elle est forcément dans la feuille du bouton.

Et quand on ne précise pas la feuille d'un Range c'est cette feuille qui est la feuille par défaut.

D'où le bug si une autre feuille est sélectionnée.

De toute façon vous êtes sur ce forum depuis plus de 2 ans, vous avez dû apprendre que les Select ou autres Activate sont en général inutiles voire nuisibles donc utilisez :
VB:
Private Sub CommandButton1_Click()
Dim F1 As Worksheet, F2 As Worksheet
Set F1 = Sheets("Resume")
Set F2 = Sheets("ALL2")
F1.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
F1.Range("A8:A108").Copy F2.Range("A28037")
F1.Range("R8:S108").Copy F2.Range("B28037")
F2.Range("E28037") = F2.Range("D28037").Formula
F2.Range("D28037") = CDate("24/1/2022")
F2.Range("F28036").Copy F2.Range("F28037")
End Sub
Et depuis le temps vous devriez aussi savoir que quand on présente un code on utilise les balises de code comme ci-dessus.

A+
 
- 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
455
Réponses
11
Affichages
629
Réponses
6
Affichages
675
Réponses
4
Affichages
832
Réponses
22
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…