Sélectionner un nombre de cellules définit

Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -  
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour le forum,

voici le contexte :

dans le cadre d'un processus de vérification je copie colle un certains nombre de cellules sur la première colonne (d'un fichier qui contient env 10000 lignes) depuis Excel je les colle dans une transaction SAP.

Il y a deux contraintes :

1: La transaction SAP ne peut me prendre que 3000 lignes (donc je fais 3 fois l'opération qui consiste à sélectionner avec la souris de la première ligne jusqu'à la 3000eme)

2: j'applique deux filtres qui enlèvent une multitude de cellules (donc en haut du tableau je n'ai plus A1 qui s'affiche mais A4 par exemple)

je sais qu'en haut à gauche je peux faire A1:A3000 qui me sélectionne donc les 3000 premières lignes, avez vous une solution dans le cas où il y a des filtres (et que ce n'est plus une suite du style 1,2,3,4...3000 mais 4,70,72,100...) afin que ca me sélectionne les lignes voulues ?




Merci à vous !

Bubus31
A voir également:

8 réponses

Le Pingou Messages postés 12249 Date d'inscription   Statut Contributeur Dernière intervention   1 458
 
Bonjour,
vous dites : 2: j'applique deux filtres qui enlèvent une multitude de cellules
...un filtre ne fait que filtrer mais n'enlève rien...!
Que doit on comprendre?
2
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
Rien de plus simple : une fois le filtre réalisé, sélectionner l'ensemble des lignes et faire un copier-coller dans un autre onglet !
1
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Je crois que c'est ça qui l'embête ;-)
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Si j'ai bien compris, accepter les macros et :
met ton nombres de lignes max en B1 et clique sur le bouton.
https://www.cjoint.com/c/LAfxwgWXw6a

eric
PS : Comme il risque d'y avoir beaucoup de paquets disjoints il faut contrôler les cellules une par une, ça prend un peu plus de temps.

1
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
Bonsoir.

Je maintiens mon offre :
"je sais qu'en haut à gauche je peux faire A1:A3000 qui me sélectionne donc les 3000 premières lignes, avez vous une solution dans le cas où il y a des filtres ... afin que ca me sélectionne les lignes voulues ?"
Bubus lance son filtre, sélectionne les lignes 1:3000 (et non pas A1:A3000), fais Copier, se déplace dans l'autre onglet et fait Coller : il n'aura plus que les lignes conservées par le filtre ...
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

à mettre dans le module de la feuille :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lig As Long, i As Long
lig = Target.Row
Do
lig = lig + 1
If Not Rows(lig).EntireRow.Hidden Then i = i + 1
Loop Until i = 9
With Range(Target, Cells(lig, Target.Column))
.Select
.Copy
End With
End Sub

un double clic sur une cellule sélectionne et copie les 10 non flitrées.
Remplacer i=9 par i=2999 pour en avoir 3000
https://www.cjoint.com/c/LAiqi4UDuxa
eric
1
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Super ! c'est ca qu'il me fallait, merci beaucoup !

Bubus31
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276 > Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Si besoin tu peux ajouter
.Offset(lig - Target.Row).Activate 
avant le End With
Ca active la dernière cellule de la sélection pour être plus proche de la sélection suivante.

Et si tu veux que le dernier bloc s'arrête à la dernière ligne occupée, complète le Loop Until :
Loop Until i = 9 Or Cells(lig + 1, Target.Column).Value = ""

Il faudra compliquer si tu peux avoir des cellules vides
1
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   > eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention  
 
Oui j'avais shift+ enter pour aller à la fin de la sélection mais je vais l'intégrer c'est top !

Merci,

Bubus31
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
Salut Bubus.
  • " je sais qu'en haut à gauche je peux faire A1:A3000 qui me sélectionne donc les 3000 premières lignes " ---- C'est faux : cela ne te sélectionne que les 3000 premières cellules de la colonne A !
  • " comment faites vous pour sélectionner (sans sélectionner avec la souris) les dix premières lignes ? " ---------- En haut à gauche (et ça s'appelle la Zone Nom) tu saisis
    1:10
    , tout simplement !
1
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Raymond,

je me suis mal exprimé, je voulais parler de cellules (les 3000 premières de la colonne A filtrée)....
Le script d'Eric répond au besoin ;)

Merci pour la réactivité ! c'est toujours un plaisir de pouvoir échanger avec vous !

Bubus31
0
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour à vous !

Merci pour vos réponses et fichiers (ca me sert pour de potentiels besoins futurs).

Je vous met un lien avec fichier Excel qui explique je l'espère mieux le besoin.

https://www.cjoint.com/c/LAhwKjbpYXF

A très vite,

Bubus31
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354
 
"qui explique je l'espère mieux le besoin" : désolé, mais je comprends de moins en moins !
Ce que j'ai indiqué (à 2 reprises) fonctionne parfaitement ...
0
Bubus31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Raymond,

Dans le fichier Excel que j'ai envoyé, comment faites vous pour sélectionner (sans sélectionner avec la souris) les dix premières lignes ?

Bubus31
0