UserForm2.Record_1.Caption = [LabelRecord]
Dim u As Object
Set u = ThisWorkbook.VBProject.VBComponents("UserForm1")
u.Designer.Controls("Label1").Tag = "xxx"
j'ai une erreur sur la ligne set u ... erreur éxécution 1004 la methode vbproject de l'object workbook à échoué.
l'accés au programme vb n'est pas fiable.
es ce que lors de l'enregistrement on conserve la dernière valeur,
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls("Label1").Tag = x
End Sub
Private Sub Workbook_Open()
x = ThisWorkbook.VBProject.VBComponents("UserForm1").Designer.Controls("Label1").Tag
End Sub
Option Explicit
Public x As String
Option Explicit
Private Sub TextBox1_Change()
x = TextBox1.Value
Label1.Tag = x
End Sub
Private Sub UserForm_Initialize()
TextBox1.Value = Label1.Tag
End Sub
Private Sub Label1_Click()
MsgBox Label1.Tag
End Sub
essaye peut être en déplacant le code situé dans l'événement "beforeclose" vers l'événementCependant, j'ai constaté qu'il m'est demandé une confirmation d'enregistrement des modifications.
Puis, après avoir dis "Oui", j'ai un avertissement concernant la confidentialité..... Et c.
Je dois donc valider par "O.K."
lol... , t'inquiète pas, ce type de code ne risque pas plus qu'un autre de casser quelque chose dans ton Excel, moins risqué qu'une suppression de fichier ou que d'écrire dans la base de registre... sans parler de cerains API windows... qui mal manipulés peuvent entraîner des trucs bizarres.... enfin c'est juste mon avis..Il n'est pas certain que je m'en serve, car je n'aime pas trop fouiller dans le moteur.
Je suis tellement maladroit, que je risquerais d'y oublier une clé.