VBA Excel 2003: sélection de lignes

Nospam54 Messages postés 159 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

Je bute sur la difficulté suivante :

Dans le déroulement de mon appli je dois sélectionner 3 lignes dans ma feuille. La ligne sur laquelle je me trouve et les deux lignes au dessus.
Bien entendu je n'ai pas les numéros des lignes car ceux-ci sont variables...
J'ai essayé avec Range, Rows... rien à faire !

Quelqu'un pour m'aider ?

Un grand merci par avance

A voir également:

4 réponses

ccm81 Messages postés 11033 Statut Membre 2 434
 
bonjour

il doit y avoir mieux

Dim li As Long, co As Long
Dim lili As Range
li = ActiveCell.Row
co = Cells(li, Columns.Count).End(xlToRight).Column
Set lili = Range(Cells(li, 1), Cells(li - 2, co))
lili.Select

bonne suite
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
ou plus bref

Dim li As Long
Dim lili As Range
li = ActiveCell.Row
Set lili = Union(Rows(li), Rows(li - 1), Rows(li - 2))
lili.Select
0
Nospam54 Messages postés 159 Statut Membre 13
 
Merci pour tes réponses, ccm81 !

Cependant je ne suis pas parvenu à sélectionner mes lignes comme je veux.
En fait je pensais qu'il était possible de sélectionner des lignes en adresses relative, un peu comme dans une feuille Excel en faisant "F5" puis "L(-2):L"

Est-ce réalisable en VBA ?
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
bonjour

je ne comprends pas bien ton problème

1. la macro ci-dessus prend comme ligne de départ celle de la cellule active
- li = activecell.row)
si tu veux une autre ligne de départ (li = 123 par exemple) à toi de voir

2. les autres lignes sont bien définies relativement à celle ligne de départ
- rows(li-2) définit la ligne située 2 lignes plus haut

bonne suite
0