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

VBA : sélectionner une range variable

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

Cipic

XLDnaute Nouveau
Bonjour à tous !

Me voilà car cela fait bientôt cinq heures que je bloque sur le même problème et que j'en peux plus... Je suis sûr que c'est très simple, mais aucune des solutions que j'ai essayée n'a fonctionné et je ne comprends pas les obscurs messages de débogage.

Mon but est précis :

Je récupère un tableau de données, avec une ligne de titres de colonnes en haut. J'ai un nombre variable de lignes et de colonnes selon les fois.

Je cherche à créer une macro qui met en forme ces données. La première étape consiste à couper le tableau en tranches d'un nombre de lignes variables.
de la ligne 1 à la ligne 2 c'est les titres de colonnes, j'utilise donc :
rows(1:2)

De la ligne 3 à la ligne n, repérée par une valeur bien précise, j'ai ma deuxième partie.

de n+1 à m, repérée par une valeur bien précise ma troisième partie, etc.

> J'arrive bien a sélectionner ma cellule "n" qui esty dans la première colonne
Cells.Find(What:="ma_valeur", LookAt:=xlWhole).Select

je peux même ajouter un ActiveCell.Row.Select

Mais j'arrive pas à choper toutes les lignes de 1 à ActiveCell.Row
j'ai beau donner un nom à la plage "ligne_qui-m'intéresse" et tenter un appel de type Rows("1:nom_de_la_ligne_qui_m'intéresse") ça ne marche pas.


Une fois nommé/selectionné tout ça, je dois sortir x classeurs avec à chaque fois les deux lignes de titres et puis la partie souhaitée en dessous.

Je ne suis pas sorti de l'auberge... Merci à quelqu'un si vous avez une idée !!
 
Re : VBA : sélectionner une range variable

ah ben c'est parfait, ça règle mon premier problème !! Merci beaucoup 😀

Et doncplus généralement :

Code:
Sub Decoupe()
        Cells.Find(What:="debut").Activate
        debut = ActiveCell.Row
        Cells.Find(What:="fin").Activate
        fin = ActiveCell.Row
        Rows(debut & ":" & fin).Select
End Sub


Merci 😉
 
- 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
5
Affichages
707
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…