• Frage zu einem kaputten Visual-Basic-Script in Excel für Windows

    Moin.

    Ich habe hier eine Excel-Tabelle mit folgendem Makro:

    Show Plain Text
    1. Public Function WasDerBauerNichtFrisst(theValue As Range)
    2.     Dim returnVal As String
    3.     Dim theChar As Integer
    4.     Dim replacement As String
    5.     replacement = "_"
    6.  
    7.     returnVal = theValue.Text
    8.    
    9.     returnVal = Replace(returnVal, "€", "A")
    10.     returnVal = Replace(returnVal, "…", "O")
    11.     returnVal = Replace(returnVal, "†", "U")
    12.     returnVal = Replace(returnVal, "Š", "a")
    13.     returnVal = Replace(returnVal, "š", "o")
    14.     returnVal = Replace(returnVal, "Ÿ", "u")
    15.     returnVal = Replace(returnVal, "§", "s")
    16.     returnVal = Replace(returnVal, " ", "")
    17.    
    18.     For i = 1 To Len(returnVal)
    19.         theChar = AscW(Mid$(returnVal, i))
    20.                
    21.         ' A..Z a..z 0..9 &
    22.         If (theChar >= 65 And theChar <= 90) Or _
    23.                 (theChar >= 97 And theChar <= 122) Or _
    24.                 (theChar >= 48 And theChar <= 57) Or _
    25.                 (theChar = 38) Then
    26.             '' Frisst der Bauer
    27.         Else
    28.             '' Frisst er nicht
    29.             returnVal = Left(returnVal, i - 1) & replacement & Mid(returnVal, i + 1)
    30.         End If
    31.     Next i
    32.  
    33.     WasDerBauerNichtFrisst = returnVal
    34. End Function


    Irgend etwas hat dieses Makro verändert. Denn ursprünglich enthielten die Anweisungen returnVal = Replace() nicht wie jetzt kryptische Sonderzeichen sondern sollten einfach nur die Umlaute durch Selbstlaute ohne Pünktchen ersetzen.

    Warum ist das Skript kaputt?

    Und wie muss ich vorgehen, damit das Skript wieder funktioniert?
    ----------
    #ehrenamt #macht #freizeit #sinnvoll