Paramètres pour un USF

  • Initiateur de la discussion Initiateur de la discussion FJPT
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

FJPT

XLDnaute Junior
Bonjour à toutes et à tous

Afin qu'un même USF puisse travaille su plusieurs plages de cellules, est'il possible de lui passer en paramètre la lettre de colonne lors de l'appel par USF.Show?

Y travaillant depuis un moment cela ne semble pas possible. Comment alors contourner la chose?

Merci par avance de vos idées et bon week-end à toutes et à tous.

FJPT
 
Re : Paramètres pour un USF

Bonjour FJPT et le forum

Je ne comprends pas bien ta question. Pour moi ce n'est pas un USF qui peut faire ce que tu veux mais un contrôle.

Je te joints un exemple. Si ce n'est pas cela que tu veux joint un fichier S.T.P

@+
 

Pièces jointes

Re : Paramètres pour un USF

Bonjour FJPT, Piedeplomb33, JNP, le forum,

Il existe différentes manières de coder un usf:

Range("A1:H8") 'pour un plage
Activecell 'pour la cellule active
Range ("B1:B" & Range ("B65536").End(xlUp).row) 'pour la première ligne non vide dans la plage
Voir (pas testé) un inputbox pour préciser la colonne
etc.....

Tu peux aussi appeler ton usf via double click dans la cellule de ton choix puis justement utiliser activecell, puis activecell.Offset(0,1) pour les cellules périfériques.

Bref bcp de solution différentes.

Je rejoint Piedeplomb33 pour un petit bout de fichier avec des explications de ce que tu veux faire. Car là nous avons du mal à saisir la question.

A te lire!

Bon week-end
 
Re : Paramètres pour un USF

Bonjour à toutes et à tous et notamment aux gens sympas qui m'ont répondu (les autres le sont aussi).

Merci à PIEDEPLOMB33 pour son petit exemple. Je l'avais déja trouvé ici en faisant des recherches et j'essayais de l'adapter.

Je vais donc essayer d'être plus clair : Sur une feuille j'ai trois tableaux identiques qui gérent la position des hommes sur 3 sites différents.
Tout le code est écrit pour un tableau et je travaille en adresse relative par Offset, par rapport au coin supérieur gauche du tableau.

Je voudrais donc me servir du même USF pour faire le travail sur les 3 tableaux
en chargeant successivement:

Private Sub CommandButton2_Click()
UserForm1.Show "tu travailles à partir de la cellule A5"
End Sub
Private Sub CommandButton3_Click()
UserForm1.Show "tu travailles à partir de la cellule J5"
End Sub
Private Sub CommandButton4_Click()
UserForm1.Show "tu travailles à partir de la cellule S5"
End Sub

C'est ce passage de paramètre qui a l'air impossible.

Merci à toutes et à tous pour votre présence constante et bon week-end.

FJPT
 
Re : Paramètres pour un USF

Bonjour FJPT,

Au moins deux solutions possibles:

1 - déclarer une variable publique dans un module:
Code:
 Public LaCellule As Range
Puis
Code:
Private Sub CommandButton2_Click()
   Set LaCellule =Sheets("Lenomdelafeuille).Range("A5")
   UserForm1.Show 
End Sub
Private Sub CommandButton3_Click()
   Set LaCellule =Sheets("Lenomdelafeuille).Range("J5")
   UserForm1.Show 
End Sub
Private Sub CommandButton4_Click()
   Set LaCellule =Sheets("Lenomdelafeuille).Range("S5")
   UserForm1.Show 
End Sub

2 - Déclarer une variable Publique dans le userform en tête de module
Code:
Set LaCellule As Range
Puis:
Code:
Private Sub CommandButton2_Click()
   Set UserForm1.LaCellule =Sheets("Lenomdelafeuille).Range("A5")
   UserForm1.Show
End Sub
'Etc...

Dans le userform tu pourras faire référence à la variable
exemple
Code:
LaCellule.value="Valeur"
LaCellule.Offset(1,2).Value="Ce que tu veux"
A+
 
Re : Paramètres pour un USF

Re le forum, Hasco,

Je n'ai peut-être rien compris,

Une méthode bien moins évoluer que notre ami Hasco (que je respect 😉), scolaire dirons nous lol.

Je proposerai de partir d'une cellule active par feuille, du genre

Private Sub CommandButton2_Click()
Range ("A5").select
UserForm1.Show
End Sub

Puis dans l'initalize de l'usf j'appel les valeurs avec les offset de la cellule active

Puis Range ("J5").select dans button3, etc.....

Range("S5").select,......

A supposer que chaque bouton soit placer dans sa feuille respective, sinon préciser worksheet("blabla") avant lol (Tiens on en revient quasiment à la proposition de Hasco??!!??)
Je vais peut-être oublier ma proposition arfff.
 
Re : Paramètres pour un USF

Merci à vous tous de l'aide que vous m'avez apporté.

Aprés avoir travaillé avec les suggestions de Hasco, je suis arrivé à une solution semblable à celle que me donne Fo rum dans sa pièce jointe et ça marche impeccable.

Merci de tout coeur à tous pour votre contribution et bon dimanche.

FJPT
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 recherche idée
Réponses
6
Affichages
924
  • Question Question
Microsoft 365 Tableau de bord
Réponses
2
Affichages
1 K
Réponses
12
Affichages
976
Réponses
21
Affichages
2 K
Retour