In realtà i codici postati funzionano, ma rischiano di troncarti la parola. Conviene troncare quando trovi uno spazio.
codice:
  If Len(Text1.Text) > 23 Then
    Stringa1 = Left(Text1.Text, InStrRev(Mid(Text1.Text, 1, 23), " "))
    Stringa2 = Mid(Text1.Text, Len(Stringa1)+1)
  EndIf
Utilizzando l'oggetto Printer puoi comunque fare molto meglio. Dato che il carattere può essere scelto puoi ragionare in millimetri, non in caratteri. Stabilisci quindi una lunghezza massima in mm
codice:
  Printer.ScaleMode = 6
  StringaApp = Text1.Text
  While Printer.TextWidth(StringaApp) > LunghezzaMassima
    StringaApp = Left(StringaApp, Len(StringaApp)-1)
  Wend
  If Len(StringaApp) = Len(Text1.Text) Then
    'Sta su una riga
  Else
    If Mid(Text1.Text, Len(StringaApp)+1,1) = " " Then
       Stringa1=StringaApp
       Stringa2=Mid(Text1.Text, Len(StringaApp)+1) 
    Else
        Stringa1 = Left(StringaApp, InStrRev(StringaApp, " "))
        Stringa2 = Mid(Text1.Text, Len(Stringa1)+1)
    EndIf
  Endif
Tutto supponendo che si tratti al massimo di 2 righe. Se ne prevedi di + si complica, ma il concetto è sempre lo stesso