Jan: VBA Makro Outlook 2010

Hallo zusammen,

meine Frage ist jetzt ausserhalb von Webprogrammierung aber vielleicht kann mir ja doch jemand weiter helfen:

Ich möchte mit Folgendem Makro in Outlook 2010 einen Öffentlichen Ordner öffnen:

Public Sub Telefonliste()

Dim objNS As NameSpace
Dim olExplorer As Outlook.Explorer

Set olExplorer = Application.ActiveExplorer
Set objNS = Application.GetNamespace("MAPI")

Set olExplorer.CurrentFolder = objNS.Folders("Öffentliche Ordner - (Environ("Username"))" ) _
.Folders("Alle Öffentlichen Ordner").Folders ("Telefonliste")

End Sub

Das funktioniert auch, wenn ich bei (Environ("Username") den Usernamen fest eintrage, nur so bekomme ich einen Syntax fehler.

Für eine Hilfe wäre ich dankbar.

Gruß
Jan

  1. Hallo,

    Set olExplorer.CurrentFolder = objNS.Folders("Öffentliche Ordner - (Environ("Username"))" ) _
    .Folders("Alle Öffentlichen Ordner").Folders ("Telefonliste")

    Das funktioniert auch, wenn ich bei (Environ("Username") den Usernamen fest eintrage, nur so bekomme ich einen Syntax fehler.

    Klar: schau Dir mal Deine Anführungszeichen an. So geht das nicht. Wenn Du Anführungszeichen in einer Zeichenkette verwenden willst, dann musst Du diese entsprechend behandeln. In VBA durch Verdopplung des Anführungszeichens.

    Andererseits willst Du in Wirklichkeit auf das Ergebnis eines Ausdrucks zugreifen und diesen als Teil einer Zeichenkette verwenden. Das geht in VBA wie anderswo und in anderen Programmiersprachen auch:

    a) Zeichenkette zusammenbauen
    b) Zeichenkette verwenden

    Dim Ordnername as String
    Ordnername = "Öffentliche Ordner - " & Environ("Username")
    Set olExplorer.CurrentFolder = objNS.Folders(Ordnername) ...

    Freundliche Grüße

    Vinzenz