Sortir d'une USF !

Seb

XLDnaute Occasionnel
Bonjours à tous,

Je viens vers vous car j'arrive pas à trouver la procédure pour sortir d'un USF

Mon cas: Je clique sur un bouton qui dois m'ouvrir un USF, mais pour certaines valeur, je ne veux pas que l'USF s'ouvre, voila ma macro:

Private Sub UserForm_initialize()
Dim numcheque As Variant
Dim Icherche As String
Dim i As Integer
Dim Iligne As Integer
Dim Icol As Integer

If Right(Sheets("Compte").Shapes(Application.Caller).TopLeftCell.Offset(0, 13), 9) = "B/INTERNE" Then
MsgBox ("Veuillez Choisir une autre valeur")
Unload PRINCIPALMODIF
End If

Je n'arrive pas à quitter l'USF .... A priori la procédure est bonne sauf le fait que si la premiere condition (ci dessus) est vérifiée je n'arrive pas à en sortir, mon USF s'ouvre et je ne veux pas.... Qu'est ce que j'ai oublié ??



'Reprise des valeurs disponible sur la feuille Compte
With Sheets("Compte")
ComboBox1 = .Shapes(Application.Caller).TopLeftCell.Offset(0, 2) 'Compte
End With

'Reprise des valeurs uniquement disponible sur la feuille ANNEE
Icherche = TextBox54 'Référence de la transaction
'Parametrage de la boucle de recherche
Iligne = 1
Icol = 14
'Activation de la boucle
Do Until Sheets("Annee").Cells(Iligne, "P") = Icherche
Iligne = Iligne + 1
Loop
TextBox40 = Sheets("Annee").Cells(Iligne, "k") 'Chèque
TextBox41 = Sheets("Annee").Cells(Iligne, "l") 'Bordereaux
TextBox34 = Sheets("Annee").Cells(Iligne, "M") 'Commentaire
End Sub



Merci
Seb
 

Dull

XLDnaute Barbatruc
Re : Sortir d'une USF !

Salut Seb, le Forum

Ton USF s'appelle PRINCIPALMODIF?

Essaye ça: mais pas sur de moi car pas de quoi tester

Private Sub UserForm_initialize()
Dim numcheque As Variant
Dim Icherche As String
Dim i As Integer
Dim Iligne As Integer
Dim Icol As Integer

If Right(Sheets("Compte").Shapes(Application.Caller).TopLeftCell.Offset(0, 13), 9) = "B/INTERNE" Then
MsgBox ("Veuillez Choisir une autre valeur")
Exit Sub
End If

'Reprise des valeurs disponible sur la feuille Compte
With Sheets("Compte")
ComboBox1 = .Shapes(Application.Caller).TopLeftCell.Offset(0, 2) 'Compte
End With

'Reprise des valeurs uniquement disponible sur la feuille ANNEE
Icherche = TextBox54 'Référence de la transaction
'Parametrage de la boucle de recherche
Iligne = 1
Icol = 14
'Activation de la boucle
Do Until Sheets("Annee").Cells(Iligne, "P") = Icherche
Iligne = Iligne + 1
Loop
TextBox40 = Sheets("Annee").Cells(Iligne, "k") 'Chèque
TextBox41 = Sheets("Annee").Cells(Iligne, "l") 'Bordereaux
TextBox34 = Sheets("Annee").Cells(Iligne, "M") 'Commentaire
Unload PRINCIPALMODIF
End Sub

EDITION: Salut Pierrot :)

Bonne Journée
 
Dernière édition:

Seb

XLDnaute Occasionnel
Re : Sortir d'une USF !

Bonjours Dull et Pierrot93

.... Merci pour les réponses... je viens d'essayer vos 2 propositions mais rien y fait... L'USF s'ouvre toujours... Un peut novice Private Sub UserForm_Activate() remplace initialize ? c'est quoi la différence entre les 2 ?

Quand tu me dit de placer mon code dans Private Sub UserForm_Activate(), je dois supprimer initialize et le remplacer par activate, ou je dois juste mettre une partie du code dans activate ??
 

Excel-lent

XLDnaute Barbatruc
Re : Sortir d'une USF !

Bonjour Seb, le fil,

Seb à dit:
Je viens vers vous car j'arrive pas à trouver la procédure pour sortir d'un USF

Seb à dit:
mais pour certaines valeur, je ne veux pas que l'USF s'ouvre

Ta question est bizarre. Tu ne veux pas que l'USF s'ouvre???? Ou tu veux qu'elle s'ouvre, puis se referme lorsque certaines valeur...???

Il faut savoir que si ta macro arrive à la ligne de code suivante

Private Sub UserForm_initialize()
c'est que ta macro est DEJA en train de s'ouvrir! Donc si tu ne veux pas qu'elle s'ouvre, il faut mettre ta condition à l'EXTERIEUR de ton USF.

C'est à dire dans la procédure qui ouvre ton USF. Plus précisément juste avant la ligne de code :
PRINCIPALMODIF.Show

A te lire
Cordialement

Edition : oups! J'avais pas vu qu'entre temps tu avais mis ton fichier! Mais ça ne change rien à ma réponse. De plus, comme Pierrot je n'ai pas Excel 2007/2010 sous ...la main :D
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 382
Messages
2 087 838
Membres
103 667
dernier inscrit
datengo