Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
888to892
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
888to892
888to892
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Freigabemodus

Freigabemodus
22.07.2007 16:35:00
Mathias
Hallo,
folgendes Problem:
Eine Datei soll im Freigabemodus von mehreren Benutzern bearbeitet werden.
Wenn ein benutzer die Datei öffnet, soll zunächst "Tabelle1" angezeigt werden.
Daher steht "Worksheets("Tabelle1").Activate" direkt als erste Zeile in Workbook_open
Dummerweise ist es aber so, dass wenn ein anderer Benutzer die Datei z.B. auf Tabelle10 speichert,
dann wird für kurze Zeit beim Öffnen durch einen weiteren Benutzer Tabelle10 angezeigt (ca. 1 Sek.),
bevor dann Tabelle1 aktiviert werden kann.
Hat jemand eine Idee, wie man dieses unschöne Verhalten verhindern kann?
Viele Grüße
Mathias

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Freigabemodus
22.07.2007 16:39:10
Hajo_Zi
Hallo amtthias,
altiviere die Tabelle beim schließen.

AW: Freigabemodus
22.07.2007 16:44:34
Mathias
Hallo Hajo,
das mache ich schon. Es geht darum, dass wenn Benutzer 1 z.B. in Tabelle10 speichert und dann Benutzer 2 die Tabelle öffnet, dann soll ebenfalls sofort Tabelle1 angezeigt werden. Es wird aber für kurze zeit Tabelle10 angezeigt und erst dann Tabelle1.
Das aktivieren beim Schließen ist in dem Fall also nicht wirksam.
Trotzdem vielen Dank für den Tipp.
Viele Grüße
Mathias

AW: Freigabemodus
22.07.2007 16:49:17
Hajo_Zi
Hallo Matthias,
das verstehe ich nicht. Beim speichern wird die entsprechende Tabelle aktiviert und beim öffnen ist Sie nicht mehr aktiviert? Also bei mir wird die Tabelle zwischen schließen und öffnen nicht verändert.
Gruß Hajo

Anzeige
AW: Freigabemodus
22.07.2007 17:33:00
Mathias
Hallo Hajo,
wenn die Datei im Freigabemodus ist, können doch mehrere Benutzer an der Datei arbeiten.
Also nochmal folgendes Beispiel:
Benutzer 1 hat die Datei geöffnet und speichert, während er auf Tabelle10 ist.
Dann öffnet Benutzer 2 die Datei. Logischerweise ist dann zunächst für Benutzer2 erstmal
Tabelle10 aktiv. Und bis Tabelle 1 beim Öffnen per VBA aktiviert werden kann, dauert es offensichtlich eine gewisse Zeit...
Viele Grüße
Mathias

AW: Freigabemodus
22.07.2007 18:01:00
Matthias
Hallo Matthias,
nutze das BeforeSave-Ereignis:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim sh As Worksheet
If Not SaveAsUI Then 'nur wenn kein "Speichern unter..."
Cancel = True
Set sh = ActiveSheet
Application.ScreenUpdating = False
Sheets("Tabelle1").Activate
On Error GoTo fehler
Application.EnableEvents = False
Me.Save
sh.Activate
Application.ScreenUpdating = True
Exit Sub
Else
Exit Sub
End If
fehler:
MsgBox Err.Description, "Fehler " & Err.Number
Application.ScreenUpdating = True
End Sub


Gruß Matthias

Anzeige
AW: Freigabemodus
22.07.2007 19:09:00
Mathias
Hallo,
vielen Dank für den Quellcode. Das müßte eigentlich funktionieren.
Leider scheint der Quellcode bei mir einige merkwürdige Effekte zu produzieren,
die ich im Moment noch nicht so wirklich nachvollziehen kann. So kann ich z.B. die Datei nicht mehr einfach freigeben, sondern muss über den Freigabeschutz gehen. Oder es erscheint eine Speichermeldung, die ansonsten eigentlich nie auftaucht...
Viele Grüße
Mathias

AW: Freigabemodus
22.07.2007 19:14:00
Matthias
Hallo Mathias,
da ich micht mit dem Freigabemodus nicht auskenne, lass ich den Thread mal offen.
Gruß Matthias

AW: Freigabemodus
23.07.2007 12:52:37
Mathias
Hallo Matthias,
habe den Quellcode jetzt mal intensiv getestet und festgestellt, dass der Quellcode garnicht ausgeführt wird wenn man Datei \ Speichern auswählt.
Die Datei wird ganz normal gespeichert. Wo liegt evtl. der Fehler?
Ich habe stattdessen mal folgendes einfaches Beispiel nachgebaut, aber das Problem ist, dass nach "ThisWorkbook.Saved = True" die Datei trotzdem nochmal gespeichert wird. Wie kann man das evtl. verhindern?

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Worksheets("Tabelle2").Activate
Save
Worksheets("Tabelle1").Activate
ThisWorkbook.Saved = True
End Sub


Viele Grüße
Mathias

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige