# nach 2 Zeichen ein Zeichen einfügen



## Gutschu (13. September 2004)

Ich habe einen String der 8 Zeichen lang ist. zB "12345678" Wie kann ich diesen String so verändern dass er nachher auf 12-34-56-78 wechselt?
Also das ganze sollte ein Macro im Excel werden...

Danke schon im voraus


----------



## flashscorpion (13. September 2004)

probiers ma hiermit:
erstelle ein textfeld und 1 button (text1 und command1):

dann geh in den quelltext und kopiere das da rein:
--------------------------------------
Option Explicit
Dim x

Private Sub Command1_Click()

If (x = 2) Then
Text1.Text = Text1.Text + "-"
Text1.Text = Text1.Text + "1"
x = 0
Else
Text1.Text = Text1.Text + "1"

End If
x = x + 1
End Sub

Private Sub Form_Load()
x = 0
End Sub

--------------------------------------

hoffe, es hat dir weiter geholfen

mfg
scorpion


----------



## kuhlmaehn (13. September 2004)

Hi,


```
Public Function Einfügen(rtext As String, zeichen As String) As String
x = 2

For n = 1 To (Len(rtext) / 2) - 1 + (Len(rtext) Mod 2)
rtext = Left(rtext, x) & zeichen & Mid(rtext, x + Len(zeichen))
x = x + 3
Next n

Einfügen = rtext

End Function
```

klappt mit beliebig lagem String aber das Zeichen darf nur eine Länge haben 
Hab ich nicht besser hingekriegt 

Kannst es dann z.B. so machen:


```
Private Sub Command1_Click()
MsgBox Einfügen("IrgendeinText", "-")
End Sub
```

dann wird es:

Ir-ge-nd-ei-nT-ex-t


Ich denke man könnte es noch besser machen, ich aber leider nicht 

kuhlmaehn


----------

