Quote Originally Posted by shg
That's a well-considered reason. Alas, I have no suggestion, but if you find a workable one elsewhere, drop back and let us know.
Here is my solution based on feedback I found:

' col is the column the boxes are in, colOffset is the offset from where the text is
Sub UpdateSortedBoxes(col As String, colOffset As Integer)

    Dim TB As OLEObject

    For Each TB In Application.ActiveSheet.OLEObjects
        If TB.Name Like "TextBox*" Then
            If Not Intersect(Range(col & ":" & col), TB.TopLeftCell) Is Nothing Then
                TB.LinkedCell = TB.TopLeftCell.Offset(0, colOffset).Address
            End If
        End If
    Next
   
End Sub