Ich habe 10 oder so Shared Macro Enabled Excel-Dateien, die etwa 30-50 Benutzer täglich mehrmals ändern. Im Laufe der Zeit geraten die Dateien ins Stocken und sind aufgebläht von dem Gedanken, dass Benutzer sie immer noch verwenden, obwohl dies nicht der Fall ist. Wenn ich die Dateien gelegentlich nicht freigebe und erneut freigebe, werden sie schließlich beschädigt.
Meine Frage ist, wie dies am besten verhindert werden kann.
Meine ursprüngliche Idee war es, ein Makro zu schreiben, das die Freigabe aller Dateien aufhebt und sie dann erneut freigibt, um den Müll zu beseitigen. Der Nachteil dabei ist, dass es alle aktuellen Benutzer rausschmeißen würde, also habe ich mich dagegen entschieden.
Nachdem ich eine Weile darüber nachgedacht hatte, kam ich auf eine mögliche Lösung. Bitte kritisieren Sie meine Antwort und helfen Sie mir, sie zu verbessern. Wenn Sie eine bessere Lösung haben, lassen Sie es mich bitte wissen.
quelle
Antworten:
Für meine Lösung habe ich ein Makro erstellt, das alle benutzerdefinierten Ansichten löscht und vergleicht, wie lange ein Benutzer inaktiv war, und sie dann ausschaltet, wenn sie das Zeitlimit überschreiten. Ich starte Clean_Up, wenn die Dateien geöffnet werden.
Update: 01.09.15 So ist es eine Woche oder so ohne irgendwelche Probleme gewesen, ich habe jedoch bemerkt, dass einige der Akten begonnen haben, ein wenig größer zu werden.
Ich glaube, das liegt daran, dass die Änderungshistorie 30 Tage lang aufbewahrt wird. Ich habe dies auf 1 Tag reduziert, um die Dateigröße niedrig zu halten.
Die Liste der freigegebenen Benutzer enthält keine zusätzlichen Benutzer mehr, und die Dateien funktionieren einwandfrei.
Update: 17.09.15 Die Dateien behalten die gleiche Größe, von der die Benutzer keine Leistungseinbußen bemerkt haben. Ich habe keine Arbeit an den Dateien zu tun, um aufblähen zu bereinigen. Dies scheint die Probleme behoben zu haben.
Update: 27.03.17 Die ursprüngliche Antwort oben hat gut funktioniert, bis wir wirklich begonnen haben, diese Arbeitsmappen voranzutreiben. Wir haben jetzt ungefähr 150 Benutzer, die jede Woche Tausende von Änderungen an diesen Arbeitsmappen vornehmen. Zu diesem Zeitpunkt hatten wir wieder Probleme.
Deshalb habe ich wöchentlich zusätzlichen Code hinzugefügt, um die Freigabe der Arbeitsmappen aufzuheben, und dann die Arbeitsmappe erneut freizugeben, wenn sie am Sonntag zum ersten Mal geöffnet werden. Dies behebt alle anderen Probleme, die dazu führen können, dass die Arbeitsmappe beschädigt wird.
Ich habe den letzten Teil vor ungefähr einem Jahr hinzugefügt und da wir überhaupt keine Probleme hatten. Hier ist der letzte Teil meines Codes mit Kommentaren, um es zu erklären. Fügen Sie dies einfach einem Modul hinzu und rufen Sie die Routine SundayMaintenance im Workbook_Open-Ereignis auf:
Update: 23.07.18 Zu dieser Antwort habe ich die kleine Änderung von Smirkingman hinzugefügt. Wir führen diesen Code weiterhin in unseren freigegebenen Arbeitsmappen aus und sie stürzen nicht ab und werden wie erwartet ausgeführt. Wir führen auch die neueste SharePoint-Version aus, die immer noch nicht mit den Funktionen einer freigegebenen Arbeitsmappe übereinstimmt.
quelle