Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

utiliser des with pour eviter les selects....je suis perdu...

4 réponses
Avatar
Alfred WALLACE
Bonjour :-)

j'ai une feuille PARAMETRE qui contiend =E0 partir de "AA31" des
colonnes. la premiere
cellule de ces colonnes (aa31,aa32,aa33...etc...) contiend du texte
lequel repr=E9sente
un nom de feuille.
lorsque j'ouvre le fichier.xls je me positionne sur AA31, je fais
Range("aa31").Select
Range(Selection, Selection.End(xlToRight)).Select
cel=E0 selectionne toutes les cellules non-vides.
puis, je duplique une feuille "modele" en lui donnant le nom rencontr=E9
=E0 chaque bouclage
en aa31 puis aa32, puis aa33 jusqu'a la fin de la selection.ok.

ma feuille "modele" contiend des combobox.
et aussi une "Private Sub Worksheet_Activate()" . donc tout =E7=E0 est
dupliqu=E9 pour en
faire des feuilles diff=E9rentes (puisqu'elles ne porte pas le m=EAme
nom).



mon but est le suivant.
pour chaque feuille activ=E9e, par exemple, lorsque j'active la feuille
"TEST001"
la worksheet_activate de cette feuille se d=E9clanche, et je dois, aller
chercher des informations DANS la colonne qui correspond =E0 "test001"
de PARAMETRE.

je n'arrive PAS =E0 me positionner (selectionner ?) sur les donn=E9es de
"parametre"
depuis la feuille "test001"

J'essaye de suivre les conseils de AnonymousA d'utilsier WITH :

dans le code du module de la feuille "test001" j'ai =E9cris :
With Sheets("PARAMETRES")
.Range("AA31").Select
.Range(Selection, Selection.End(xlToRight)).Select 'pour
selectionner toute la ligne
ActiveCell.Offset(ligne, Application.Match("test001", Selection,
0) - 1).Select
' ce code cherche dans la zone selectionn=E9e "test001" puis
d=E9place
' la selection de n lignes (correspondant =E0 l'endroit o=F9 se
trouve ce que je cherche)
End With


par contre le code
Sheets("PARAMETRES").Visible =3D True
Sheets("PARAMETRES").Select
Range("a1").Select
Range(Selection, Selection.End(xlToRight)).Select
ActiveCell.Offset(ligne, Application.Match("test001", Selection, 0) -
1).Select


je suis vraiment bloquer l=E0 dessus.
pouvez vous m'aider svp ?

Merci

Jos=E9

4 réponses

Avatar
Alfred WALLACE
y'aaa queeeeeeeeelqu'uunnnnnnnnnn !?!?!?!?! (imaginez que je crie dans
une grotte)

josé (tout petit dans sa grotte)
Avatar
JLuc
Alfred WALLACE avait soumis l'idée :
la premiere
cellule de ces colonnes (aa31,aa32,aa33...etc...) contiend du texte
lequel représente
un nom de feuille.
Apparement, les noms de tes feuilles sont sur la meme colonne !!!




J'essaye de suivre les conseils de AnonymousA d'utilsier WITH :

dans le code du module de la feuille "test001" j'ai écris :
With Sheets("PARAMETRES")
.Range("AA31").Select


AMHA, ici tu devrais selectionner la colonne et non la ligne (xlDown)
.Range(Selection, Selection.End(xlToRight)).Select 'pour
selectionner toute la ligne
pour selectionner toute la COLONNE



ActiveCell.Offset(ligne, Application.Match("test001", Selection,
0) - 1).Select
' ce code cherche dans la zone selectionnée "test001" puis
déplace
' la selection de n lignes (correspondant à l'endroit où se
trouve ce que je cherche)
End With


Le mieux serait d'avoir un extrait de ta feuille PARAMETRE pour mieux
t'aiguiller

--
JLuc

Avatar
JLuc
Une possibilité serait peut etre de nommer les plages de la feuille
PARAMETRE :
AA31:AA50 à nommer "test001"
AB31:AB50 à nommer "test002"
...
S'il y a beaucoup de valeur, peut etre faire une petite macro

et utiliser : Range(ActiveSheet.name)

Alfred Wallace avait soumis l'idée :

tu as raison, effectivement, j'ai fait une érreur en écrivant le post !!

AA31 AB31 AC31 AD31 etc .....

sur cette ligne (31) se trouve les futurs nom des feuilles par exemple
test001, test002, test003 etc.....


maintenant, sous le titre (lignes 32,33, etc) j'ai mis les parameres
des combobox, dans le même ordre.

mon pb est :
comment, à partir d'une feuille que je viens de créer, test001, par exemple,
je peux acceder aux elements qui se trouvent dans
la feuille parametres ?

d'après les messages que j'ai eu précédament, je peux (doit ?) utiliser
un "with" mais, là .... je seche , puisque, par exemple, comment dans un
with je peux écrire ce que j'ai mis dans mon message initial ?

Merci de ton aide.

José


--
JLuc

Avatar
Alfred Wallace
Alfred WALLACE avait soumis l'idée :


Apparement, les noms de tes feuilles sont sur la meme colonne !!!


AMHA, ici tu devrais selectionner la colonne et non la ligne (xlDown)
pour selectionner toute la COLONNE


Le mieux serait d'avoir un extrait de ta feuille PARAMETRE pour mieux
t'aiguiller



tu as raison, effectivement, j'ai fait une érreur en écrivant le post !!

AA31 AB31 AC31 AD31 etc .....

sur cette ligne (31) se trouve les futurs nom des feuilles par exemple
test001, test002, test003 etc.....


maintenant, sous le titre (lignes 32,33, etc) j'ai mis les parameres
des combobox, dans le même ordre.

mon pb est :
comment, à partir d'une feuille que je viens de créer, test001, par
exemple, je peux acceder aux elements qui se trouvent dans
la feuille parametres ?

d'après les messages que j'ai eu précédament, je peux (doit ?) utiliser
un "with" mais, là .... je seche , puisque, par exemple, comment dans un
with je peux écrire ce que j'ai mis dans mon message initial ?

Merci de ton aide.

José