Sélection Tableau Excel 2010

Onurb1 Messages postés 3 Statut Membre -  
Patrice33740 Messages postés 8930 Statut Membre -
Bonjour,

Ultra novice en VBA je rencontre un problème insurmontable pour moi mais certainement pas pour vous ?

J'ai un tableau du type 2 colonnes et 20 lignes. La première ligne est toujours renseignée et si la deuxième ne l'est pas les suivantes non plus.
Dans les cellules de la colonne A il y a une formule : en A1 =si(B1="";"";B1) ; en A2 =si(B2="";"";B2) etc...
Ma formule magique est la suivante :
Range("A1:B" & Range("A" & Rows.Count).End(xlUp).Row).Select
Le problème est que mon tableau est sélectionné en entier (de A1 à B20) même si toutes les lignes ne sont pas renseignées.
J'aimerai donc une formule qui ne tiendrait pas compte de la présence de la formule dans les cellules de la colonne A.

Merci pour votre aide.
A voir également:

3 réponses

Patrice33740 Messages postés 8930 Statut Membre 1 782
 
Finalement, elle n'a rien de magique ta formule !!!

Celle-ci est plus efficace :
Range("A1:B" & Range("B" & Rows.Count).End(xlUp).Row).Select
0
Onurb1 Messages postés 3 Statut Membre
 
Merci Patrice de ta réponse mais les cellules de la colonne B contiennentt également des formules.

Mon tableau est toujours sélectionné en totalité.

Onurb1
0
Onurb1 Messages postés 3 Statut Membre
 
Plusieurs jours de congés et de bricolage, je n'ai pas pris le temps d'alumer l'ordi.
Ta deuxième formule est la bonne.
Je te remercie infiniment.
0
Onurb1
 
Bonjour Patrice,

En fait, ça ne fonctionne pas.

Si tu le veux bien je te reformule mon besoin.
J'ai un tableau de 20 lignes. Chaque cellule contient une formule qui affiche ou non un résultat. Les formules sont du type conditionnelles =si(condition;vrai;"").
Je voudrai sélectionner toutes les lignes du tableau qui contiennent un résultats sachant que la ligne 1 est toujours remplie et en suite, si la deuxième n'affiche rien il n'y aura pas de 3ième ligne. Donc je peux, par exemple, avoir un résultat dans les lignes 1, 2, 3, 4 ou 1, 2, 3, 4, 5 etc mais jamais 1, 5, 8.

Lorsque je fais via une macro, un copié de mon tableau (Les 20 lignes) et un collé uniquement des valeurs dans une autre feuille et que je lance une nouvelle macro pour me positionner en bas du tableau à la première cellule vide afin de faire un deuxième collé (Range("b65536").End(xlUp).Offset(2, 0).Select) je me retrouve à la 21ième ligne même si toutes semblent vides dupuis par exemple la ligne 4.

J'espère que tu comprendras et que surtout tu pourras quelque chose pour moi.

A+
Onurb1
0
Onurb1
 
Non c'est bien "" et lorsque je me mets sur la cellule il n'y a rien !
0
Patrice33740 Messages postés 8930 Statut Membre 1 782
 
Alors essaies :
Range("A1:B" & Range("A:A").Find(what:="", LookIn:=xlValues).Row - 1).Select

0
Patrice33740 Messages postés 8930 Statut Membre 1 782
 
Si avec cette formule ça ne fonctionne pas c'est que le résultat dans les cellules n'est pas vides.
Par contre avec (Range("b65536").End(xlUp). on n'ignore pas les formules !

Autre piste : n'aurait-tu pas mis un espace entre les guillemets dans tes formules =si(condition;vrai;" ").
0
Patrice33740 Messages postés 8930 Statut Membre 1 782
 
Avec une seule ligne du code et sans le fichier je ne peux pas t'en dire plus !

mets un exemple de ton fichier sur https://www.cjoint.com/
et mets le lien obtenu dans ton prochain message.

Tuto : Comment utiliser C.joint.fr
Cordialement
Patrice
0