Раз у вас после каждого изменения поля запускается процедура отлавливающая изменения, то в данной процедуре и присваивайте объекту ссылку на поле, которое изменилось. К примеру, у Вас есть событие TextBox1_Change() в котором отслеживается изменение данных в текстовом поле. В нем у Вас будет что-то наподобие
Код
Sub TextBox1_Change()
Dim perem as object
Set perem = UserForm1.TextBox1
Call Chang (perem)
End Sub
Sub AssignIt()
Dim obj As Object
Dim i As Integer, j As Byte
For i = 1 To Worksheets("Primary").OLEObjects.Count
With Worksheets("Primary")
If .OLEObjects(i).Name Like "Dexterity_#_spin" Then
j = j + 1
.OLEObjects(i).LinkedCell = "D" & (cm_p1_x2_b + j * 4)
' Debug.Print .OLEObjects(i).Name & " - " & .OLEObjects(i).LinkedCell
End If
End With
Next
End Sub