Hyperlink mit Leerzeichen

Hallo zusammen,

ich habe derzeit das Problem, dass ich in einem VB Skript einen eingebetteten HTML Code habe, der die Hyperlink Funktion beinhaltet.
Nun habe ich als Verweis eine Objektvariable, die aus zwei Teilen zusammengesetzt wird. Allerdings wird, wenn ich das Skript ausführe jedesmal in Outlook bei dem Verweis der Pfad nach dem ersten vorkommenden Leerzeichen abgeschnitten.
Zum besseren Verständnis der Codeabschnitt um den es geht:

Const sURL2 = "file:\\test VBA"
tmp1 = sURL2 & Item.aPath
sAddUrls1 = sAddUrls1 & "<b>Windows7 Directlink:</b> <a href=" & tmp1 & ">" & Item.name & "</a><br>"

Vollständiger Pfad soll dann beispielsweise file:\test VBA\TestA\test.txt lauten
Ergebnis in Outlook: file:\test

Für Hilfe wäre ich dankbar.

Viele Grüße

Probier mal
sAddUrls1 = sAddUrls1 & „Windows7 Directlink: “ & Item.name & „

das setzt tmp1 in einfache Hochkommas. Die hattest du nicht und daher wurde der Link nur bis zum Leerzeichen interpretiert.

Wie NetAktiv schon erwähnt hat liegt es an den ".
Derzeit würde dein link etwa so aussehen
<a href=file:\test VBA\TestA\test.txt >

Das href Attribut ist ein String und erwartet den Wert in " " bzw ’ ’ . Wenn dem nicht so aus, wird nur bis zum ersten Leerzeichen ausgewertet. Entweder du verwendest einfache Anführungszeichen für dein href oder du maskierst deine Anführungszeichen.

sAddUrls1 = sAddUrls1 & "<b>Windows7 Directlink:</b> <a href=\"" & tmp1 & "\">" & Item.name & "</a><br>"

Nun hast du jeweils 2 Anführungszeichen nebeneinander. Die einen bleiben dank des maskierens stehen. Somit sieht dein Link nun folgendermaßen aus:

Manchmal sind es kleine Fehler, die einen zu Fall bringen :smiley:

Vielen herzlichen Dank…er schneidet es immerhin schon mal nicht mehr ab. Ob der Link funktioniert muss erst noch eruiert werden.
Es sind immer die kleinen Fehler, die Ursache für Probleme oder in den Sand gesetzte Milliarden sind :D.

Mir ist ganz dunkel etwas in Erinnerung, dass es kürzlich eine Änderung mit den file-URL beim IE9 gab, kann sein, es war etwas mit den Sicherheitseinstellungen. Aber auf die wirst bei Zeit schon stoßen, wenn sie dich betreffen :-).

Mein Problem ist nicht der IE9 sondern Windows 7, das stellt nämlich nicht mehr das Leerzeichen dar, sondern macht ein daraus. Wenn ich den Hyperlink in meinem Windows XP System in Outlook ansehe, wird das Leerzeichen richtig dargestellt. Warum ist das bei Windows 7 so? Outlook Version ist die 2010. Wahrscheinlich ist es eh eher das falsche Forum für so eine Frage.:?

Ja was denn? Davon abgesehen mal de Frage, ob du keinen Einfluss auf den Standort der Daten hast. In vielen Firmen vermeidet man noch heute in den Verzeichnisnamen Leerzeichen und Sonderzeichen, weil das auch immer Probleme macht beim Schreiben von einfachen cmd-Dateien. Es geht zwar irgendwie, aber warum etwas akademisch exakt machen, wenn eine einfache Namensregel alle potenziellen Probleme vermeidet.

sry hatte die Information nicht zu Ende geschrieben. Es handelt sich dabei um %20

OK, das kommt durch das URL-encode der Browsers, der Sonderzeichen in die Hexcodes umwandelt und davor ein % setzt, hex 20 = ASCII 32 = Blank. Das kannst mal Probieren, indem du einfach in der Adresszeile was eintippst wie

http://mydom.de?test=12 34

Das würde bedeuten, dass windows 7 oder outlook 2010 das leerzeichen in einem hyperlink in %20 umwandelt. browser verwende ich für den aufruf eigentlich nicht.

Man sieht ja nicht, wer dein VB-Script aufruft und was du mit der erzeugten URL machst. Du könntest beispielsweise mal ein WSH-Objekt erstellen und dann dir URL an die run-Methode übergeben oder was machst du damit?