Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zugriff verhindern im Zeitfenster

Zugriff verhindern im Zeitfenster
31.08.2007 14:05:00
Markus
Hallo Zusammen,
habe das Problem, daß ich eine Datei, die ich in einer bestimmten Zeit selber bearbeiten will, im Netz auch von anderen benutzt wird.
Um das zu ermöglichen, würde ich gerne, daß die Datei sich z.B. um 10:00 automatisch schließt und in der Zeit von 10:00 bis 10:15 kein Öffnen für andere Benutzer zuläßt. Nur ich als Benutzer "Testuser" kann die Datei öffnen.
Ich kann und verstehe ein bißchen die VBA-Programmierung, aber hierfür reicht es leider nicht. Wer kann mir bittttteeeee hlfen.
Danke und Gruß
Markus

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zugriff verhindern im Zeitfenster
31.08.2007 15:23:59
Hajo_Zi
Hallo Markus,
bei VBA bescheiden hast Du Dir aber was vorgenommen.
https://www.herber.de/bbs/user/45593.xls
Zum Testen mußte ich andere Vorgaben setzen.

AW: Zugriff verhindern im Zeitfenster-Ergänzung
31.08.2007 16:06:50
fcs
Hallo Markus,
da die ganze Geschichte nur funktioniert, wenn die Anwender gezwungen werden beim Öffnen der Datei die Makros zu aktivieren, solltest du ggf. auch diesbezüglich Vorkehrungen treffen, falls dies notwendig sein sollte.
Erstelle in der Mappe ein zusätzliches Blatt "Info" in dem du auf die Notwendigkeit der Makroaktivierung und ggf. das Schließen der Datei hinweist und ergänze den Vorschlag von Hajo um ein paar Brocken aus aus meinem Vorschlag für die Open und Close-Prozeduren.
Der Höflichkeit halber sollte man "seine" Anwender beim Öffnen der Datei darauf hinweisen, dass die auomatische Schließen-Aktion abläuft. Anwender können nach meiner Erfahrung sehr nachtragend sein.
Gruß
Franz

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Blatt As Worksheet
For Each Blatt In ThisWorkbook.Worksheets
Select Case Blatt.Name
Case "Info"
'do nothing
Case Else
If Blatt.Name  "Info" Then Blatt.Visible = xlSheetVeryHidden
End Select
Next
On Error Resume Next
Application.OnTime Earliesttime:=Uhrzeit, Procedure:="DateiSchliessen", _
Schedule:=False
End Sub
Private Sub Workbook_Open()
Dim Blatt As Worksheet
Set wbThis = ThisWorkbook
Uhrzeit = TimeSerial(9, 59, 0)
If Uhrzeit > Time Then
Application.OnTime Earliesttime:=Uhrzeit, Procedure:="DateiSchliessen", _
Schedule:=True
MsgBox "Von 10:00 bis 10:15 Uhr wird diese Datei vom Systemadministrator bearbeitet." &  _
vbLf _
& vbLf & "Um 09:59 Uhr wird die Datei automatisch  gespeichert und geschlossen!" & vbLf &  _
vbLf _
& "Infos bei Mr. XYZ, Tel, 12345"
End If
For Each Blatt In ThisWorkbook.Worksheets
Select Case Blatt.Name
Case "Info"
'do nothing
Case Else
If Blatt.Name  "Info" Then Blatt.Visible = xlSheetVisible
End Select
Next
End Sub


Anzeige
AW: Zugriff verhindern im Zeitfenster-Ergänzung
31.08.2007 17:00:00
Markus
Hallo Ihr beiden,
habe beide Sachen zusammengefügt. Funktioniert auf den ersten Blick, außer das ich beim normalen schließen der Datei bekomme ich die Fehlermeldung "Die Methode OnTime .. ist fehlgeschlagen..."

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Blatt As Worksheet
For Each Blatt In ThisWorkbook.Worksheets
Select Case Blatt.Name
Case "Info"
'do nothing
Case Else
If Blatt.Name  "Info" Then Blatt.Visible = xlSheetVeryHidden
End Select
Next
On Error Resume Next
   Application.OnTime Earliesttime:=Uhrzeit, Procedure:="Beenden", _
Schedule:=FalseEnd Sub



Private Sub Workbook_Open()
If Time > CDate("16:48") And Time  "Testmandant" Then ThisWorkbook.Close False
End If
Dim Blatt As Worksheet
Set wbThis = ThisWorkbook
Uhrzeit = TimeSerial(16, 48, 0)
If Uhrzeit > Time Then
Application.OnTime Earliesttime:=Uhrzeit, Procedure:="Beenden", _
Schedule:=True
MsgBox "Von 10:00 bis 10:15 Uhr wird diese Datei vom Systemadministrator bearbeitet." & _
vbLf _
& vbLf & "Um 09:59 Uhr wird die Datei automatisch  gespeichert und geschlossen!" & vbLf &  _
_
vbLf _
& "Infos bei Mr. XYZ, Tel, 12345"
End If
For Each Blatt In ThisWorkbook.Worksheets
Select Case Blatt.Name
Case "Info"
'do nothing
Case Else
If Blatt.Name  "Info" Then Blatt.Visible = xlSheetVisible
End Select
Next
End Sub


Sub Beenden()
ThisWorkbook.Close True
End Sub


Danke und Gruß
MArkus

Anzeige
AW: Zugriff verhindern im Zeitfenster-Ergänzung
31.08.2007 17:18:00
Hajo_Zi
Hallo Markus,
mache vor End Sub Enter
Gruß Hajo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige