Frage

Ich habe ein VBA-Makro, das in Word 2003 ausgeführt wird. Es ist ein Modul und der Code, der an ein Benutzerformular angehängt ist, und es wird an ungefähr 30 Client-Sites gesendet.Als ich dies zum ersten Mal einführte, schickte ich jemanden zu jeder Site, um eine .dot-Vorlage in den Word-Startordner jedes der 30 Felder zu legen, wodurch das Makro für jeden Benutzer als Schaltfläche in der Symbolleiste angezeigt wird.

Alle Benutzer sind mit dem Internet verbunden.

Der Speicherort der .dot-Vorlage variiert von Maschine zu Maschine, sodass "Installer" vermutlich nicht im Spiel sind.

Ich gehe davon aus, dass sich das erstellte Makro von Zeit zu Zeit ändern muss.Gibt es eine Möglichkeit, den Benutzer dazu zu bringen, eine Taste zu drücken, damit sich das Makro selbst aktualisiert?

Unabhängig davon, ob es sich um eine Drucktaste oder eine automatische Überprüfung auf Aktualisierung handelt, müsste ich vermutlich wissen, wie das Makro ausgeführt werden kann (Pfad), ohne dass ein Dokument gespeichert werden muss, und wie der Pfad zu den Tools für den Startordner gefunden wird> Optionen> Speicherorte, aber programmgesteuert.

War es hilfreich?

Lösung

Dies kann durchgeführt werden.

  1. Erstellen Sie 2 .dot-Dateien, loader.dot (sucht nach Updates) und worker.dot (das Hauptmakro, das Sie verwenden und das automatisch aktualisiert werden soll).

  2. Der erste loader.dot sollte sich in C: \ Programme \ Microsoft Office \ OFFICE11 \ STARTUP befinden

    Dies ist ein vertrauenswürdiger Speicherort, und das Makro wird in jedes Word-Dokument geladen.Verwenden Sie eine AutoExec () - Unterroutine, um sicherzustellen, dass sie beim Laden eines Word-Dokuments ausgeführt wird.

    worker.dot kann an jedem festen Installationsort abgelegt werden, z.C: \ yourapp \ worker.dot

    Die Logik in loader.dot besteht darin, alle Verweise auf worker.dot zu entfernen (ich musste das Vertrauen des VBA-Modells in die Makrosicherheitseinstellungen aktivieren). Suchen Sie mithilfe eines http-Aufrufs nach einem Update. Wenn eine neue Version verfügbar ist, laden Sie es herunter und überschreiben Sie worker.dotFügen Sie dann einen Verweis aus der Datei hinzu, in der worker.dot angegeben ist

Andere Tipps

Ich bin mir nicht sicher, ob das Modell, bei dem der Benutzer eine Taste drückt, ideal ist.

Ich würde versuchen, eine "Loader" -Vorlage zu erstellen.Seine Aufgabe wäre es, beim Start nach Updates für die Vorlage / das Makro zu suchen, die Sie bereits haben, und diese Dateien herunterzuladen / zu installieren / was auch immer, wenn sie sich ändern.Laden Sie dann alles, was lokal zur Verwendung installiert ist.

Sie sollten auch darüber nachdenken, ob es ein Problem ist, wenn ein Update verfügbar ist, aber jemand es nicht verwendet (möglicherweise hat er Word vor dem Hochladen der Änderung gestartet oder ist offline).Müssen Sie auch wissen, welche Version die Benutzer verwenden?Lassen Sie Ihren Loader über HTTP, E-Mail oder eine andere Methode (Twitter?) zurückmelden

Jeder solche Lader muss entweder sehr stabil sein (andernfalls ersetzen Sie nur das Herumjagen der Zielvorlage durch das Herumjagen des Laders) oder sich bei Bedarf selbst aktualisieren können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top