Bonjour à tous et bonne fête de fin d'année à tous.
Voici mon problème:
j'aimerai qu'un userform1 reste en permanence visible dès l'ouverture du fichier et que le label2 et 3 soient égale à "N39" et "N40". voir fichier joint!
merci et bonne journée à tous.
essaye peut être ainsi, dans le module "thisworkbook" :
Code:
Private Sub Workbook_Open()
UserForm1.Show 0
End Sub
dans le module de l'usf :
Code:
Private Sub UserForm_Initialize()
With Sheets("2010")
Label2.Caption = .Range("H39").Value
Label3.Caption = .Range("H40").Value
End With
End Sub
dans le module de la feuille 2010 :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("H39:H40")) Is Nothing Then
With UserForm1
.Label2.Caption = Range("H39").Value
.Label3.Caption = Range("H40").Value
End With
End If
End Sub
Merci tous les deux.
cela fonctionne, mais j'aimerai si c'est possible que l'userform apparaisse toujours en bas (gauche ou droite) et que les valeurs ce mettent a jour automatiquement quand la valeur cible change.Car la la mise à jour se fait seulement a l'ouverture du fichier (se qui est déjà pas mal)
Merci pour votre aide
attention, dans les codes que je t'ais donné, je contrôle les cellules H39 et H40, comme dans le fichier que tu nous as fourni et non celles de la colonnes N...
' UserForm En bas à droite
Private Sub UserForm_Activate()
With Me
.Top = Application.Height - Me.Height
.Left = Application.Width - Me.Width
End With
End Sub
Grace a votre aide, voici se que j'ai réussi a faire.
Tout fonctionne, mais la mise à jour ne se fait pas automatiquement et je n'ai pas accès à ma feuille tant que l'userform n'est pas fermé.
J’ai du faire qque chose qu’il ne fallait pas.
Encore merci pour votre aide
Je vient de relire vos message et j'avais oublier un 0 qque part
C'est bon tout fonctionne nickel sauf la mise a jour auto. Elle se faite lors de l'ouverture du fichier.
Merci a tous
c'est ce que fait cette partie du code donnée dans mon post de 13h52, à placer dans le module de la feuille concernée en adaptant la plage de cellule...
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("H39:H40")) Is Nothing Then
With UserForm1
.Label2.Caption = Range("H39").Value
.Label3.Caption = Range("H40").Value
End With
End If
End Sub