Thema Datum  Von Nutzer Rating
Antwort
Rot Auslesen von geschlossenen Dateien
28.04.2021 10:57:08 Gast1994
NotSolved
28.04.2021 16:36:49 volti
*****
NotSolved
29.04.2021 08:36:05 Gast1994
NotSolved
29.04.2021 10:15:07 volti
NotSolved
30.04.2021 07:30:18 Gast39094
NotSolved
30.04.2021 08:47:49 volti
*****
NotSolved
30.04.2021 09:18:31 Gast1994
Solved

Ansicht des Beitrags:
Von:
Gast1994
Datum:
28.04.2021 10:57:08
Views:
762
Rating: Antwort:
  Ja
Thema:
Auslesen von geschlossenen Dateien

Hallo zusammen,

ich bin VBA Anfänger und versuche zur Zeit eine Auswertung von mehreren Dokumenten in einem Dokument zu bündeln.

Problem: Ich möchte überprüfen, ob eine Datei im Netzwerk bereits geöffnet ist, von mir oder von einen anderen Nutzer.

Wenn die Datei geöffnet ist, soll eine MessageBox erscheinen mit: Achtung, keine Aktualierung Datei geöffnet!

Wenn die auszulesene Datei überall geschlossen ist, sollen 2 Felder ausgelesen werden und in die Inhalte in die Übersichtsdatei eigefügt werden.

Mein Code sieht bislang so aus:

1)

Private Function GetValue(pfad, Datei, blatt, zelle)

Dim arg As String

If Right(pfad, 1) <> "\" Then pfad = pfad & "\"
If Dir(pfad & Datei) = "" Then
GetValue = "Wochenende"
Exit Function
End If

arg = "'" & pfad & "[" & Datei & "]" & blatt & "'!" & Range(zelle).Range("A1").Address(, , xlR1C1)

GetValue = ExecuteExcel4Macro(arg)

End Function

2)

Private Function DateiGeoeffnet(DerPfad As String) As Boolean

    On Error Resume Next
    Open DerPfad For Binary Access Read Lock Read As #1
    Close #1
    If Err.Number <> 0 Then
        DateiGeoeffnet = True
        Err.Clear
    End If
End Function



Public Sub TestePfad()
	Dim sPfad As String
	sPfad = "C:\03.xlsm" 
	MsgBox DateiGeoeffnet(sPfad)
End Sub

 

Sub Zelle_auslesen3_1()

Dim pfad As String, Datei As String, blatt As String, zelle As String

pfad = "C:\"
Datei = "03.xlsm"
blatt = "Tabelle1"
bezug = "N11"

ActiveSheet.Range("C8") = GetValue(pfad, Datei, blatt, bezug)

End Sub

Sub Zelle_auslesen3_2()

Dim pfad As String, Datei As String, blatt As String, zelle As String

pfad = "C:\"
Datei = "03.xlsm"
blatt = "Tabelle1"
bezug = "S11"

ActiveSheet.Range("D8") = GetValue(pfad, Datei, blatt, bezug)

End Sub

 

Hat jemand eine Idee, wie ich nach dem Prüfen entweder die MessageBox erhalte bzw. die Daten aktualisiert werden?

 

Vielen Dank für die Hilfe im Voraus.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Auslesen von geschlossenen Dateien
28.04.2021 10:57:08 Gast1994
NotSolved
28.04.2021 16:36:49 volti
*****
NotSolved
29.04.2021 08:36:05 Gast1994
NotSolved
29.04.2021 10:15:07 volti
NotSolved
30.04.2021 07:30:18 Gast39094
NotSolved
30.04.2021 08:47:49 volti
*****
NotSolved
30.04.2021 09:18:31 Gast1994
Solved