2010-06-18 3 views
0

Je suis en train de remplacer les guillemets doubles dans une chaîne avec une seule citation, a obtenu le code suivant mais je reçois un message d'erreur « Objet requis strLocation »Comment utiliser substring dans vbscript dans une page xsl

Sub UpdateAdvancedDecisions(strLocation) 
    Dim d 
    Dim strLLength 

    strLLength = Len(strLocation) - 1 

    For d = 0 To strLLength 
    alert strLocation 

    strValue = strLocation.Substring(2,3) 

    If strLocation.substring(d,d+1)=" " " Then 
     strLLength = strLLength.substring(0, d) + "'" + strLLength.substring(d + 1,strLLength.length) 

    Next 
End Sub 

Répondre

1

Comme Helen l'a dit, vous voulez utiliser Replace, mais son exemple a assigné le résultat à votre étrange variable strLLength. Essayez ceci:

strLocation = Replace(strLocation, """", "'") 

Cette une ligne fait le travail que vous avez demandé au sujet et évite tout le code actuellement dans votre sous-programme donné.

D'autres choses sont des problèmes dans le code affiché:

  • une variable contenant un nombre comme la longueur d'une chaîne ne serait pas un préfixe « str », donc strLLength est trompeur

  • chaînes en VBScript sont indexées de 1 à longueur, pas de 0 à longueur-1

  • il n'y a pas mot-clé "d'alerte" dans VBScript

  • vous attribuez une valeur à strValue, puis utilisez jamais à nouveau

  • vous devez utiliser Mid pour une sous-chaîne, il n'y a pas de méthode de chaîne « sous-chaîne » dans VBScript

    c = Mid(strLocation, d, 1) ' gets one character at position d 
    

Le plus je regarde cela, plus il est clair que c'est un peu de JavaScript que vous essayez de lancer en tant que VBScript mais ne traduisez pas du tout correctement.

utiliser une référence pour VBScript comme un des éléments suivants:

Questions connexes