Mordyas,
1.There is no such thing as a Document_SelectionChange (at least not that I'm aware of).
2. Create a new class module. Call it clsApp. In it put this code:
Code:
Option Explicit
Private WithEvents mWordApp As Word.Application
Private Sub Class_Initialize()
Set mWordApp = Word.Application
End Sub
Private Sub mWordApp_WindowSelectionChange(ByVal oSel As Selection)
If UserForm3.Visible Then UserForm3.UpdateSpacingBefore
End Sub
3. Create a new standard module. Call it modMain. In it, put this code:
Code:
Option Explicit
Private oCls As clsApp
Sub ShowUserForm()
If oCls Is Nothing Then Set oCls = New clsApp
UserForm3.Show vbModeless
End Sub
4. In your Userform3, you can use:
Code:
Option Explicit
Private Sub UserForm_Initialize()
UpdateSpacingBefore
End Sub
Public Sub UpdateSpacingBefore()
Dim spaceBefore As Single
On Error Resume Next
spaceBefore = Selection.ParagraphFormat.spaceBefore
On Error GoTo 0
SPB_box.Value = spaceBefore
End Sub
Private Sub SPB_updt_Click()
UpdateSpacingBefore
End Sub
5. Turn off ChatGPT. Just my opinion.