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

Demande aide code Vba

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

castor30

XLDnaute Occasionnel
Bonjour le forum,
Je sollicite votre aide pour corriger ce code réalisé avec l'enregistreur de macros

VB:
Private Sub CommandButton3_Click()
Dim CocheE As Long
Dim CocheG As Long

' Sélection des adresses mails ColE pour ColAI
    Application.ScreenUpdating = False
    Columns("E:G").Select
    Selection.AutoFilter
    Selection.AutoFilter Field:=1, Criteria1:="X"
        [Admail].Copy
        Range("P2").PasteSpecial xlValues
          
' Sélection des adresses mails ColG pour ColAJ
    Columns("E:G").Select
    Selection.AutoFilter
    Selection.AutoFilter Field:=3, Criteria1:="X"
        [Admail].Copy
        Range("Q2").PasteSpecial xlValues
    Selection.AutoFilter

'Efface les X dans les 2 colonnes
    [CocheE].ClearContents      ' Qualificateur incorrect
    [CocheG].ClearContents     ' Qualificateur incorrect
    [H1].Select
    Application.ScreenUpdating = True
End Sub

CocheE et CocheG correspondent à deux zones nommées
En vous remerciant
 
Dernière édition:
Bonjour Castor30,

Je ne sais pas si ça répond à ta question mais voici comment j'écrirais ce code:

Private Sub CommandButton3_Click()

Application.ScreenUpdating = False
' Sélection des adresses mails ColE pour ColAI
With Columns("E:G")
.AutoFilter
.AutoFilter Field:=1, Criteria1:="X"
[Admail].Copy
Range("P2").PasteSpecial xlValues
' Sélection des adresses mails ColG pour ColAJ
.AutoFilter
.AutoFilter Field:=3, Criteria1:="X"
[Admail].Copy
Range("Q2").PasteSpecial xlValues
.AutoFilter
End With
'Efface les X dans les 2 colonnes
[CocheE].ClearContents
[CocheG].ClearContents
[H1].Select
Application.ScreenUpdating = True
End Sub


Puisque CocheE et CocheG sont des plages nommées, il est inutile de les redéfinir dans la procédure (d'autant que tu les a définies en Long, d'où les messages d'erreur).

Cordialement.
 
- 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
1
Affichages
526
Réponses
1
Affichages
1 K
L
  • Question Question
Réponses
0
Affichages
1 K
lycan54
L
N
Réponses
5
Affichages
3 K
Nicocotte125
N
M
Réponses
11
Affichages
2 K
Melidan2006
M
B
Réponses
6
Affichages
1 K
Banjounet
B
T
Réponses
3
Affichages
1 K
tetchounie
T
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…