Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Wer hat file ausgecheckt | Herbers Excel-Forum


Betrifft: Wer hat file ausgecheckt von: Fettertiger
Geschrieben am: 25.01.2012 15:32:47

Hallo zusammen,

mit untenstehendem Makro öffne ich eine Datei auf einem Sharepoint und checke die Datei aus. Das Makro funktioniert soweit auch ganz gut.

Was ich jetzt nur noch brauche ist, dass mir der Username der Person (DerChecker=....) angezeigt wird die das File gerade ausgecheckt hat.

Sub Shareppointfilemanually()
    Dim userpath As String
    dim xw as workbook
     userpath = mysharepoint
      SFilename = "testfile.xlsb"
      For Each xw In Application.Workbooks
        If xw.Name = SFilename Then
            Exit For
        End If
    Next xw
    If xw Is Nothing Then
        On Error Resume Next
        Application.EnableEvents = False
        If Workbooks.CanCheckOut(userpath & SFilename) = True Then
            Workbooks.CheckOut userpath & SFilename
            CheckedOut = True
        Else
           DerChecker = ????????
            MsgBox (SFilename & " is already checked out by User " & DerChecker)
            Exit Sub
        End If

        Workbooks.Open Filename:=  userpath & SFilename, ReadOnly:=False

        If Err.Number = 1004 Then    'file could not be found
                     Set xw = Nothing
            Exit Sub
        Else: Set xw =activeWorkbook
        End If
    End If
    xw.Activate
   Set xw = Nothing
End Sub
Hat jemand eine Idee wie man das bestimmen kann?
Danke für Eure Hilfe

Gruss

Theo

  

Betrifft: AW: Wer hat file ausgecheckt von: marcl
Geschrieben am: 26.01.2012 11:10:57

Hallo Theo

DerChecker = Application.UserName

Gruß
marcl


  

Betrifft: AW: Wer hat file ausgecheckt von: Fettertiger
Geschrieben am: 26.01.2012 11:21:54

Hi marcl,

das wäre zu einfach, denn das würde ja den User anzeigen, der gerade das Macro laufen lässt. Die Person, die das File ausgecheckt hat sitzt typischerweise nicht am gleichen Computer.

Gruss

Theo


  

Betrifft: AW: Wer hat file ausgecheckt von: Michel2010
Geschrieben am: 27.01.2012 11:24:01

Hi,
evtl gehts ja so, allerdings kann ich Dir nicht den richten "Befehl" dazu sagen. Ich lese hier das Änderungsdatum aus, so sollten sich doch auch andere Fileinformationen auslesen lassen.
Dim objFSO As Object
Dim objFile, objFileHR As Object
Dim PFAD As String
Dim WBMappe As Workbook
Dim aendDatumakt, aendDatumalt, aendDatumHR As Date
Dim x As Long

On Error Resume Next

PFAD = "X:\GROUPS\xxx\yyyy\Temp"
Set objFSO = CreateObject("Scripting.FileSystemObject") 'Explorer abfrage
Set objFile = objFSO.GetFile(PFAD & "\PTEMP.XLS")
Set objFileHR = objFSO.GetFile(PFAD & "\Liste aus.XLS")
Set WBMappe = Workbooks("URL-UEBE.XLW")

aendDatumakt = objFile.datelastmodified 'Änderungsdatum
aendDatumalt = WBMappe.Sheets("Urlaubsübersicht").Range("C3") 'altes Datum holen

aendDatumHR = objFileHR.datelastmodified 'Änderungsdatum der HR-Datei
WBMappe.Sheets("Urlaubsübersicht").Range("C4") = "HR " & aendDatumHR

Gruß
Michael