This is tricky because you don't want to replace every space in the code, just the ones between the double quotes. This code should get you started but it will need some checks in there to not destroy other fields.
Code:
Sub ReplaceUM()
Dim aFld As Field, sCode As String, sFind As String, sRep As String
Dim sInner As String, i As Integer, i1 As Integer, i2 As Integer
Dim sPre As String, sPost As String
sFind = "äöü "
sRep = "aou_"
For Each aFld In ActiveDocument.Fields
sCode = aFld.Code.Text
i1 = InStr(sCode, """")
sInner = Mid(sCode, i1 + 1)
i2 = InStr(sInner, """")
sInner = Mid(sInner, 1, i2 - 1)
sPre = Left(sCode, i1)
sPost = Mid(sCode, i1 + i2)
Debug.Print sCode, sInner, sPre, sPost
For i = 1 To Len(sFind)
sInner = Replace(sInner, Mid(sFind, i, 1), Mid(sRep, i, 1))
Next i
aFld.Code.Text = sPre & sInner & sPost
Next aFld
End Sub