私が困った事なので、自分用のメモとして書いておきます。

次のような問題が何度かありました。
------------------------------
ユーザーフォームに複数のテキスボックスを設置。
テキストボック間をTabキーで移動したいのに、Tabキーを押すと、テキスボックスの文字列にTabスペースが入ってしまう。
------------------------------

そこで、調べると次のような方法で回避できることが分かりました。

ユーザーフォームをNewを使ってひらく。

Public f As UserForm1

Sub ユーザーフォーム表示()

    Set f = New UserForm1
    f.Show

End Sub

ユーザーフォームが開いてからは、UserForm1. ~ と書かずに、f. ~ を使います。
例としては、こんな感じ

With f

    For i = 1 To lngField
        .Controls("TextBox" & i).BackColor = strLockColer
        .Controls("TextBox" & i).Locked = True
    Next i

End With
 
そして、ブックを閉じる時には、
fに、Nothing しています。

 Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Set f = Nothing
End Sub


念のため、TextBoxのAfterUpdateの際に、ReplaceでTabを取り除く処理も入れています。

    'テキスボックスにTABが入ったら取り外す
    strValue = Me.Controls("TextBox" & TBNo).Value
    strValue = Replace(strValue, vbTab, "")
    Me.Controls("TextBox" & TBNo).Value = strValue

TBNoは、テキスボックスの番号が入った変数です

以上です。