Ecrire dans une autre feuille que celle ou on exécute la macro

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 !

Anthony115

XLDnaute Nouveau
Bonjour,

Je m'excuse par avance car je sais que la question a déjà été posée.

Cependant, les solutions qui me paraissent on ne peut plus logiques ne fonctionnent pas et je ne trouve pas pourquoi?

J'exécute un code VBA dans "Feuil1" et je voudrait que ça remplisse les cases de ma "Feuil2".
Grâce à l'enregistreur de macro, j'ai le code que je veux et il fonctionne sauf qu'il se met dans la "Feuil1" et non dans la "Feuil2" comme je le souhaiterai.

Code:
Private Sub Calculs_Click()


    Sheets("Feuil2").Activate
    Range("E6").Select
    ActiveCell.FormulaR1C1 = _
        "=COUNTIFS(Feuil1!R2C6:R115C6,""*""&'Feuil2'!RC[-1]&""*"",Feuil1!R2C2:R115C2,""115"")"
    Range("E6").Select
    Selection.AutoFill Destination:=Range("E6:E32")
    Range("E6:E32").Select
    Range("D6:D32").Select
    Selection.Copy
    Range("E6:E32").Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Range("E35").Select


End Sub

Même en rajoutant la ligne pour activer "Feuil2", ça ne fonctionne pas?
Code:
  Sheets("Feuil2").Activate

Merci pour votre aide.

Anthony
 
Bonjour le forum

Si je mets un controle CommandButton sur la feuille 1 avec ce code VBA simplifié juste pour tester.
VB:
Private Sub CommandButton1_Click()
Feuil2.Range("E6").FormulaR1C1 = "=COUNTIFS(Feuil1!R2C6:R115C6,""*""&'Feuil2'!RC[-1]&""*"",Feuil1!R2C2:R115C2,""G2150A"")"
End Sub
La formule est bien insérée sur la Feuille 2

EDITION
Avec ce code, la formule est copiée puis coller en valeur seules en colonne D sur la feuille 2
VB:
Private Sub CommandButton1_Click()
Feuil2.Range("E6:E32").FormulaR1C1 = "=COUNTIFS(Feuil1!R2C6:R115C6,""*""&'Feuil2'!RC[-1]&""*"",Feuil1!R2C2:R115C2,""G2150A"")"
Feuil2.Range("D6:D32").Value = Feuil2.Range("E6:E32").Value
End Sub


Tu peux joindre un exemple de classeur ?
 
Bonjour

Essaye :
VB:
Private Sub Calculs_Click()
Application.ScreenUpdating = False
With Sheets("Feuil2")
    .Activate
    .Range("E6").FormulaR1C1 = _
        "=COUNTIFS(Feuil1!R2C6:R115C6,""*""&RC[-1]&""*"",Feuil1!R2C2:R115C2,""115"")"
    .Range("E6:E32").FillDown
    .Range("D6:D32").Copy
    .Range("E6").PasteSpecial Paste:=xlPasteFormats
    Application.CutCopyMode = False
    .Range("E35").Select
End With
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

Retour