lancer une procedure située dans usf1 a partir d'un bouton dans usf2

  • Initiateur de la discussion Initiateur de la discussion didierschmit
  • 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 !

D

didierschmit

Guest
bonsoir
tout est dit dans l'intitule

je cherche la syntaxe
j'ai essayé userform1.maprocedure mais cela ne marche pas ?

😕

merci
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Bonsoir,
as-tu essayé simplement:

maprocedure

sinon déplace (si ça ne perturbe pas) la macro dans un module et là ça doit marcher.

Edit: bonsoir excalibur, ce n'est pas ce qu'il demande si j'ai bien compris.
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Bonsoir le fil,

Malheureusement tout est loin d'être dit dans ton titre... Pour preuve :
Voir la réponse de Excalibur et la mienne

Tout simplement avec
Code:
maprocedure
Cordialement

Edit : Pas vu Skoobi. En tout cas il n'y a que 2 avis pour l'instant...
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

bonsoir
negatif car je dois recuperer des infos contenus dans userform2 pour les utiliser avec MAPROCEDURE situe dans le userform1
d'ou ma demande sur la syntaxe à employer.

merci
🙄
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Re,

Je ne pense pas qu'avec les informations lapidaires que tu consens à nous donner on puisse t'aider.
Je pensais pourtant t'avoir prévenu dans mon précédent post...

Il faudrait déjà que tu fasses un effort sur la syntaxe de ta demande🙄

Cordialement
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Re, salut Spitnolan08,
A mon avis tu devrais t'arranger pour mettre maprocedure dans un module.

Edit: tu me le sort de la bouche Spit (si tu permet le diminutif 😀)
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

bon
A partir du USF1 , via un bouton , j'ouvre le USF2 et je saisie des infos dans les textbox que contient le usf2.
dans le USF2 , j'ai un bouton, qui ferme le usf2 et lance la procedure "MAPROCEDURE" qui se trouve dans le usf1 qui à besoir des valeurs qui ont ete saisies dans les textbox du USF2.

c'est donc à l'appel de MAPROCEDURE que cela coince .
😕
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Test ceci:

Dans "MAPROCEDURE" (que tu auras mis dans un module) tu y mets:

variable = usf2.textbox1.value
variable2 = usf2.textbox2.value


Dans ton bouton de usf2:

blablabla
maprocedure
unload usf2

maprocedure doit absolument ce trouver avant de fermer usf2 (ça je pense que tu le sais).
 
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

Re,
le fichier n'est tout à fait representatif du probleme.
Personnellement, j'ai passé l'age de jouer aux devinettes... Alors si tu voulais bien nous joindre ton fichier...Avant d'aller te coucher!

Cordialement

Edit : Tiens salut Carcharodon!🙂 Tu lui as fait peur: il est parti se coucher😉
 
Dernière édition:
Re : lancer une procedure située dans usf1 a partir d'un bouton dans usf2

bonjour à tous
voila le code de MAPROCEDURE
ELLE se trouve dans le USERFORM1
Code:
Sub MAPROCEDURE(valeurs) 
'on affecte une valeur de point venant des textbox du userform2 
Dim fligne, n, m, x, temp1, temp2, temp3, temp4
Dim liste As Collection
'Dim Valeurs(1 To 10)
'Dim iiii As Integer
'fligne = Range("B6").End(xlDown).Row + 1 'lit les pronos
'Range("B" & fligne & ":IV" & fligne + 6).ClearContents
'les valeurs sont à recuperer dans le userform2 à partir des textbox

'valeurs = Sheets("liste").Range("G2:G11") 'les valeurs des points affdecte aux  positions a faire le transfert des textboxe



Set liste = New Collection
For n = 6 To Sheets("synthese").Range("B65536").End(xlUp).Row
 For m = 2 To Cells(n, 256).End(xlToLeft).Column
   On Error Resume Next
     liste.Add Cells(n, m), CStr(Cells(n, m))
   On Error GoTo 0
 Next m
Next n
'ligne = Range("B65536").End(xlUp).Row + 3
Dim tablo()
ReDim tablo(liste.Count, 4)
For n = 1 To liste.Count
 tablo(n, 1) = liste(n)
Next n
For n = 6 To Sheets("synthese").Range("B65536").End(xlUp).Row
 For m = 2 To Cells(n, 256).End(xlToLeft).Column
   For x = 1 To liste.Count
     If tablo(x, 1) = Cells(n, m) Then
       tablo(x, 2) = tablo(x, 2) + 1
       tablo(x, 3) = tablo(x, 3) & CStr(m - 1) & " "
       tablo(x, 4) = tablo(x, 4) + valeurs(m - 1) 'valeurs(m - 1, 1)
     End If
   Next x
 Next m
Next n

For n = 1 To liste.Count
 For m = n + 1 To liste.Count
   If tablo(n, 4) < tablo(m, 4) Then
     temp1 = tablo(n, 1)
     temp2 = tablo(n, 2)
     temp3 = tablo(n, 3)
     temp4 = tablo(n, 4)
     tablo(n, 2) = tablo(m, 2)
     tablo(n, 1) = tablo(m, 1)
     tablo(n, 3) = tablo(m, 3)
     tablo(n, 4) = tablo(m, 4)
     tablo(m, 2) = temp2
     tablo(m, 1) = temp1
     tablo(m, 3) = temp3
     tablo(m, 4) = temp4
   End If
 Next m
Next n
'ligne = Range("B65536").End(xlUp).Row + 3
For n = 1 To liste.Count
 Sheets("synthese").Cells(2, 1 + n) = tablo(n, 1) 'affiche les chx retenus par la sythese dans la feuille synthese
 'Cells(ligne + 1, 1 + n) = tablo(n, 2)
 'Cells(ligne + 2, 1 + n) = tablo(n, 3)
 'Cells(ligne + 3, 1 + n) = tablo(n, 4) 'affiche les point obtenus par les chx

Next n
'recopie le resultat de la synthese de la feuille "synthese" dans la feuille resultat à partie de F à U , nombre classe du plus petit au plus grand

Sheets("résultat").Range("F" & ir & ":U" & ir).Value = Sheets("synthese").Range("B2:T2").Value
Sheets("résultat").Range("A" & ir).Value = indexcourse '

End Sub



Le code qui ouvre le userform2 a partir du bouton qui se trouve dans le USERFORM1
Code:
Private Sub OptionButton5_Click()
Load UserForm2 
UserForm2.Show 
End Sub


le code envoyé par un COmmandbutton situe dans le USERFOM2 qui renvoi vers le userform1 en appelant MAPROCEDURE sans fermer le USERFORM2.

Code:
Private Sub CommandButton1_Click()

Dim valeurs(1 To 10)
    Dim i As Integer
    
    For i = 1 To 10
        valeurs(i) = Controls("textbox" & i).Value
    Next i
    UserForm1.synthesetest (valeurs)

UserForm2.Hide '
End Sub



ET enfin les texbox qui se trouve dans le USERFORM2 dont je dois recuperer les valeurs dans MAPROCEDURE

Code:
Private Sub UserForm_Initialize() 'valeur par defaut
TextBox1.Value = 50
TextBox2.Value = 30
TextBox3.Value = 15
TextBox4.Value = 5
TextBox5.Value = 1
TextBox6.Value = 1
TextBox7.Value = 1
TextBox8.Value = 5
TextBox9.Value = 2
TextBox10.Value = 1
End Sub



😎
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
21
Affichages
1 K
Réponses
23
Affichages
2 K
Retour