Roland_M
XLDnaute Barbatruc
Bien le bonjour à tous,
tout d'abord, à vous tous, un Bon Réveillon et Joyeux Noël !
j'essai de coller une valeur dans un userform durablement ICI dans .Tag
normalement ceci devrait suffir !? (mais non!)
ThisWorkbook.VBProject.VBComponents("fmSTD_CorrectifUserfEcran").Properties("Tag").Value = M$
'
alors j'ai essayé avec une boucle comme ceci:
' Dim U As Object, O As Object
' For Each O In U.Properties
' If O.Name = "Tag" Then O.Value = M$: Exit For
' Next
il y plantage sur la boucle > For Each O In U.Properties
alors que celle-ci fonctionne For Each O In U.Designer.Controls
après moult essais,
j'ai donc solutionné comme ceci (mais je trouve cela aberrant !)
appel userf et en sortant je récupère dans ReponseMsgBox(var déclarée Public)
puis je colle cette valeur dans le Tag
Ma question est donc:
Pourquoi ne puis-je pas accéder directement à .Properties ?
comme d'ailleurs tous les exemples que j'ai trouvé et qui ne fonctionnent pas !
où est le hic !?
Si quelqu'un pouvait éclairer ma lanterne ...
D'avance un grand merci.
tout d'abord, à vous tous, un Bon Réveillon et Joyeux Noël !
j'essai de coller une valeur dans un userform durablement ICI dans .Tag
normalement ceci devrait suffir !? (mais non!)
ThisWorkbook.VBProject.VBComponents("fmSTD_CorrectifUserfEcran").Properties("Tag").Value = M$
'
alors j'ai essayé avec une boucle comme ceci:
' Dim U As Object, O As Object
' For Each O In U.Properties
' If O.Name = "Tag" Then O.Value = M$: Exit For
' Next
il y plantage sur la boucle > For Each O In U.Properties
alors que celle-ci fonctionne For Each O In U.Designer.Controls
après moult essais,
j'ai donc solutionné comme ceci (mais je trouve cela aberrant !)
appel userf et en sortant je récupère dans ReponseMsgBox(var déclarée Public)
puis je colle cette valeur dans le Tag
Code:
Sub EssaiModifUserf()
MonUserf.Show: DoEvents: M$ = Trim(ReponseMsgBox)
DoEvents
Dim U As Object, O As Object
Set U = ThisWorkbook.VBProject.VBComponents("fmSTD_CorrectifUserfEcran")
For Each O In U.Designer.Controls: Z$ = O.Name: Next
DoEvents
For Each O In U.Properties
If O.Name = "Tag" Then O.Value = M$: Exit For
Next
Set U = Nothing: Set O = Nothing
End Sub
Ma question est donc:
Pourquoi ne puis-je pas accéder directement à .Properties ?
comme d'ailleurs tous les exemples que j'ai trouvé et qui ne fonctionnent pas !
où est le hic !?
Si quelqu'un pouvait éclairer ma lanterne ...
D'avance un grand merci.