Macro Excel..help

Résolu
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Quelle commande utiliser dans une macro Excel pour activer une selection jusqu'a la derniere info saisie ?

J'ai des infos dans les colonnes de A a M, mais je souhaite selectionner uniquement de A a F - le probleme est que le nombre de lignes a selectionner est variable.

J'ai trouvé une piste avec la commande LastRecord mais je ne suis pas parvenu a l'utiliser.


Merci d'avance
A voir également:

3 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour

Si tu ne sais pas quelle colonne ( A à F) sera la + longue:
lig = Range("A1:F65536").Find("*", , xlFormulas, , , xlPrevious).Row
cette formule tient compte d'une cellule avec comme résultat de formule ""

si tu connais la colonne par ex: E
lig=range("E65536").end(xlup).row
0
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour et merci du coup de main.

En fait, je recois des fichiers qui ont toujours le meme formatage mais différentes longueurs.

Je veux selectionner toujours les memes colonnes, mais c'est le nombre de lignes qui change.

Je ne veux selectionner que les lignes avec données en commencant par la ligne 2 (donc de A2 jusqu'a F??)
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314 > PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Re, Bonjour gb

lig = Range("A2:F65536").Find("*", , , , , xlPrevious).Row

donne la ligne de la dernière donnée en ignorant le résultat de formules renvoyant la valeur ""
0
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   > michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention  
 
Je vais essayer...

Quelle est ensuite la commande pour selectionner ? Range="A2:F") & lig).Select ???

Désolé si cela parait stupide mais je débute avec les macro et je me suis attaqué a un projet qui prend plus d'ampleur que je ne pensais !
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314 > PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
re

On a tous débuté un jour! donc, ne culpabilise surtout pas.

OK, je ne t'avais pas donné la solution jusqu'au bout!...
essaies:

Sub ccm_zonevariable()
Dim fin As String
fin = Range("A2:F65536").Find("*", , , , , xlPrevious).Address
Range("A2:" & fin).Select
End Sub

0
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   > michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention  
 
Salut,

Merci pour ton aide. J'ai finalement pu "bidouiller" avec tes conseils et j'ai réussi. Mon probleme était que les cellules de mes colonnes E & F contenaient une formule retournant "" et donc la macro ces cellules comme non "vide" et les selectionnait.
Ca marche avec
lig = Range ("A6000").End(xlup).Row
Range ("A2:F" & lig).Select

Merci encore...je poste une nouvelle question pour la suite de mon cauchemar !!!
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

Tu peux le faire avec
Cells(1, 1).Resize(UsedRange.Rows.Count, 6).Select

Avec Cells(1, 1) tu pars de A1 puis tu agrandis du nombre de lignes utilisées et du nombre de colonnes 6 (F)
0
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Salut et merci du coup de main.

Comment le system trouveras la derniere ligne a selectionner ? C'est la seule variable des fichiers que je recois et je ne veux selectionner que les lignes contenant des données (donc de A2 a F??).

0
PlanetGong Messages postés 55 Date d'inscription   Statut Membre Dernière intervention  
 
Merci a GBinforme,

Super efficace.

Bonne journée.
0
yassin
 
je ne sais pas pardon
0