Windows.Activate funktioniert bei nur einem User nicht

  • Excel

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von peterfido.

    Windows.Activate funktioniert bei nur einem User nicht

    Hallo zusammen,

    mein eigens gebasteltes Makro traf auf Begeisterung und wird nun von mehreren Kollegen benutzt. Außer von einem. Eigentlich sollten wir alle in einheitlich konfigurierten (virtuellen) Desktops arbeiten aber bei diesem einen Kollegen funktioniert folgender Schritt nicht:

    Windows("Name.xlsx").Activate

    Ich nehme exakt die gleiche Datei, führe den Code bei mir aus - klappt einwandfrei. Lediglich bei diesem einen Kollegen funktioniert es nicht, Laufzeitfehler 9 "Index außerhalb des gültigen Bereichs" (also als wäre die betreffende Datei nicht geöffnet).
    Probiert habe ich bereits:
    - Workbooks("Name.xlsx").Activate
    - Application.Windows("Name.xlsx").Activate

    Ich lehne mich mal aus dem Fenster und behaupte, am Code kann es nicht liegen - funktioniert ja bei allen anderen einwandfrei. Die Frage ist, was könnte tatsächlich verhindern, dass das Makro bei diesem einen Kollegen funktioniert?
    Jeder Vorschlag ist willkommen ?(

    Danke!
    Bei uns kommt es bei macros immer mal wieder zu der "Sicherheitsfrage"

    Wo Excel frag ob dem Herausgeber des Macros vertraut werden soll. Diese frage führt dazu dass das Makro bis zum bestätigen nicht ausgeführt wird.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."

    Der Andy schrieb:

    Ich lehne mich mal aus dem Fenster und behaupte, am Code kann es nicht liegen - funktioniert ja bei allen anderen einwandfrei.
    Alle Achtung!
    Mutige Aussage.

    Wenn du vor einem Haus stehst und das weiße Fenster neben der Haustüre suchst, wird das bei vielen Häusern funktionieren.
    Mit Ausnahme der Häuser, bei denen dieses Fenster grün ist oder ganz fehlt.

    Schau doch mal nach, welche Elemente deine Windows-Collection beherbergt.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Lass dir mal alle möglichen Namen auflisten. Evtl. stimmt da der Name nicht. Wer öffnet denn das Workbook? Bissel mehr Code vorne weg kann hilfreich sein.
    Gruß
    Peterfido

    Keine Unterstützung per PN!
    Das Thema hat sich erledigt. Ich habe es durch unseren internen Programmierer prüfen lassen. Der fand heraus, dass der Code tatsächlich einwandfrei arbeitet. Lediglich dieser eine User muss, damit es auch bei ihm funktioniert, alle betroffenen Dateien per 'Datei -> öffnen' Dialog öffnen und kann z.B. keine Verknüpfung auf seinem Desktop anklicken. Per 'Datei -> öffnen' öffnen sich die betroffenen Dateien, Zitat "in der gleichen Instanz" und dann funktioniert alles wie gewollt.

    Thema daher geschlossen.
    Dann wird auf dem Rechner die "Windows-Interne" Kommunikation mittels DDE nicht laufen, also der Explorer die Dateinamen nicht mittels DDE-Nachricht an Excel schicken, sondern eine neue Excel Instanz öffnen und die Dateinamen als Parameter übergeben.
    Gruß
    Peterfido

    Keine Unterstützung per PN!