Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
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
Inhaltsverzeichnis

Andere Benutzer aus gemeins. Excel entf.

Andere Benutzer aus gemeins. Excel entf.
14.02.2023 16:02:16
Ronald
Hallo an alle!
Ich habe ein gemeinsam genutztes Excel, welches via OneDrive bei verschiedenen Benutzern läuft.
Da ich ab und zu Änderungen habe, muß ich jedes Mal die anderen anrufen und denen sagen, daß
sie das Excel zumachen sollen, damit ich ändern kann. Das ist etwas mühsam.
Gibt es nicht eine Möglichkeit, daß ich deren Excel schließen kann, wenn eine gewisse Zeit bei denen
nichts passiert ist? Natürlich mit SaveChanges=True sofern es da was zu speichern gibt.
Hoffe, hier kann mir jemand dabei helfen.
Danke im Voraus.
Gruß Ronald

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

Betreff
Datum
Anwender
Anzeige
AW: Andere Benutzer aus gemeins. Excel entf.
14.02.2023 19:51:05
Oraculix
Entweder über einen Button oder Workbook_Open ausfürhren.
Sub CloseInactiveExcel()
    Dim LastActivityTime As Date
    Dim InactiveTime As Long
       
    InactiveTime = 10
  
    For Each wb In Application.Workbooks
      
        If wb.Name > ThisWorkbook.Name And wb.Saved = True Then
            'Check when the workbook was last active
            LastActivityTime = wb.Worksheets(1).Range("A1").Value
            If Now - LastActivityTime > TimeSerial(0, InactiveTime, 0) Then
                     wb.Close SaveChanges:=False
            End If
        End If
    Next wb
End Sub
Gruß
Oraculix
Anzeige
AW: Andere Benutzer aus gemeins. Excel entf.
14.02.2023 20:02:38
Oraculix
Sorry habe vergessen wb zu deklarieren, füge das noch zum Code oben rein!
Dim wb As Workbook
Gruß
Oraculix
AW: Andere Benutzer aus gemeins. Excel entf.
15.02.2023 08:02:17
Ronald
Hallo Oraculix
Danke schön!
Gibt es noch die Möglichkeit, im Code gezielt einen User anzusprechen? Vielleicht so:

If ThisWorkbook.ReadOnly Or Environ("USERNAME") = "User01" Then
    ...
End If
Gruß Ronald
AW: Andere Benutzer aus gemeins. Excel entf.
15.02.2023 10:45:20
Oraculix
Hallo sollte so funktionieren wobei Du denn User direkt eintragen musst.
Public Sub CloseInactiveExcel()
    Dim LastActivityTime As Date
    Dim InactiveTime As Long
    Dim wb As Workbook
         
    InactiveTime = 10
    
    For Each wb In Application.Workbooks
        If wb.Name > ThisWorkbook.Name And wb.Saved = True Then
            'Check when the workbook was last active
            LastActivityTime = wb.Worksheets(1).Range("A1").Value
            If Now - LastActivityTime > TimeSerial(0, InactiveTime, 0) Then
                If Environ("USERNAME") = "User01" Then
                    wb.Close SaveChanges:=True
                Else
                    MsgBox "This workbook will be closed in " & InactiveTime & " minutes due to inactivity.", vbOKOnly
                End If
            End If
        End If
    Next wb
End Sub
Gruß
Oraculix
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige