XL 2010 VBA - Sélection cellules visibles

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

Gllou06

XLDnaute Nouveau
Bonsoir

J'ai un souci que je ne parviens pas à comprendre :

J'ai sur un classeur une feuille "base de données" et une feuille "Fiche métier". Je veux afficher les données filtrées de la BDD sur la feuille Métier. Ma macro lancée manuellement (F8) fonctionne correctement ; Quand je la lance depuis le bouton "Afficher la fiche complète" elle fait n'importe quoi pour la 3ème colonne (Facteur d'expo). Mais que ce passe-t-il ? : Il n'y a pourtant aucune différence avec les deux recherches précédentes.

...
'Famille de risque
BDD.Range("H9:H" & Range("B1000").End(xlUp).Row).SpecialCells(xlVisible).Copy
FME.Range("G12").PasteSpecial Paste:=xlPasteValues

'Activité
BDD.Range("F9:F" & Range("B1000").End(xlUp).Row).SpecialCells(xlVisible).Copy
FME.Range("H12").PasteSpecial Paste:=xlPasteValues

'Facteur d'exposition
BDD.Range("I9:I" & Range("B1000").End(xlUp).Row).SpecialCells(xlVisible).Copy
FME.Range("I12").PasteSpecial Paste:=xlPasteValues
...

Pour info, si je déplace dans la macro le code "Activité" en troisième position, c'est lui qui ne fonctionne pas correctement.

Merci de votre aide.
Cordialement
 

Pièces jointes

Bonsoir Gllou06,

Chez moi le plantage se produit sur le tri situé juste après le traitement de la 3ième colonne.
Testez en remplaçant votre code de tri par le code plus concis qui suit:
VB:
  'Tri "Famille de risque pour MeF
    FME.Activate
    Range("G12:J" & Range("G1000").End(xlUp).Row).Sort Key1:=Range("G12"), _
        Order1:=xlAscending, Header:=xlNo

edit : code modifié
 
Dernière édition:
Merci de votre réponse.
J'ai testé mais... Désolé ce n'est pas la solution. Le problème se situe juste avant le tri : sur le "BDD.Range("I9:I" & Range("B1000").End(xlUp).Row).SpecialCells(xlVisible).Copy" : En lançant la macro avec le bouton, la sélection se fait sur les lignes de I5 à I9 !! C'est ça que je ne comprends pas.
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
8
Affichages
529
Réponses
7
Affichages
655
  • Question Question
Microsoft 365 Cpier/coller en VBA
Réponses
7
Affichages
720
Réponses
7
Affichages
880
Retour