Range variables + delete

niwiz

XLDnaute Nouveau
Bonjour,

je vous sollicite pour un petit problème, enfin je crois.

j'aimerai savoir comment faire pour sélectionner une plage qui peut varier. en effet dans la plage ("B22:F33")

seul F33 et toujours identique et B22 peut varier (B21 ou B20 etc...)

voici ci joint un fichier xls.


Merci d'avance.
 

Pièces jointes

  • test.xlsm
    11.5 KB · Affichages: 39
  • test.xlsm
    11.5 KB · Affichages: 43
  • test.xlsm
    11.5 KB · Affichages: 51

frangy

XLDnaute Occasionnel
Re : Range variables + delete

Bonjour,

Si la plage à conserver débute par B7, tu peux employer la formule suivante pour définir l’adresse de la première cellule de la plage à supprimer
Code:
Dim PremCel as String
PremCel = Worksheets("Feuil1").Range("B7").End(xlDown).Offset(1).Address
Et en déduire la plage à supprimer
Code:
Dim Plage as Range
Set Plage = Worksheets("Feuil1").Range(PremCel & ":F33")

A+
 

niwiz

XLDnaute Nouveau
Re : Range variables + delete

j'ai un autre problème de range (est oui j'ai du mal) .En effet j'aimerai cette fois sélection 10 cellule maximum entre A2 et A11. Cpdt il n'y a pas toujours 10 valeurs, mm si dans la plupart du tps oui.

Range(Range("A2"), Range("A11").End(xlUp)).Select ne marche pas car il y a souvent plus de 10 valeurs et il me sélectionne dans ce cas la A2:A1 au lieu de A2:A11

Que dois je faire?

j’espère avoir été clair, merci !
 

niwiz

XLDnaute Nouveau
Re : Range variables + delete

re bonjour,

j'ai déjà essayé cette solution mais sa ne marche pas, ou je m'y prend mal, car il me sélectionne au delà de A11(A2:AX) jusqu'a la dernière cellule vide:/ au lieu de s’arrêter a A11

Range(Range("A5"), Range("A15").End(xlDown)).Select

sa doit être un truc tout con je suis sur :)
 

niwiz

XLDnaute Nouveau
Re : Range variables + delete

j'avais deja essaye cette ligne,mais malheureusement même problème que pour la précédente solution. Il ne s'arrete pas a A11
Range("A2:A" & Range("A11").End(xlDown).Row).select. Le fait qu'il y est des données au delà de A11 doit poser probleme.

je ne vois toujours pas comment faire, Merci de votre réponse.
 

En 1 Clic

XLDnaute Nouveau
Re : Range variables + delete

Vous pouvez donc définir une variable qui contiendra la dernière ligne remplie mais qui est au maximum égale à 11 :

Code:
Dim nb as Long
nb = WorksheetFunction.Min(Range("A2").End(xlDown).Row,11)

Range("A2:A" & nb).select
 

Discussions similaires

Statistiques des forums

Discussions
312 677
Messages
2 090 825
Membres
104 677
dernier inscrit
soufiane12