Ich möchte überprüfen, ob C: \ Data.xlsb bereits geöffnet ist oder nicht.Kann ich überprüfen, ob die Datei bereits geöffnet ist?
Ich habe hier folgenden Code bekam von How to tell if a certain Excel file is open using VB.NET?
Public Shared Function OpenUnlockedFile(ByVal path As String) As StreamWriter
Dim sw As StreamWriter = nothing
Try
sw = New StreamWriter(path)
Catch ex As IOException When System.Runtime.InteropServices.Marshal.GetLastWin32Error() = 32
REM locked, return nothing
End Try
Return sw
End Function
Aber ich weiß nicht, wie Sie den Code oben zu verwenden.
Ich ziehe es sub statt Funktion.
Mit freundlichen Grüßen.
Warum bevorzugen Sie einen Sub über eine Funktion? Eine Funktion ist viel besser, wenn Sie überprüfen möchten, ob die Datei geöffnet ist oder nicht, da Sie True oder False zurückgeben können, also können Sie es in einer 'If'-Anweisung überprüfen. –
Ich würde vorschlagen, dass Sie den Rückgabetyp zu einem 'Boolean' modifiziert haben und in der letzten Zeile Ihrer Funktion' True' zurückgeben und '' '' 'Catch''-Block zurückgeben. Ich denke auch, dass ein 'FileStream' besser wäre als ein' StreamWriter'. –
@VisualVincent Könnten Sie bitte den von Ihnen empfohlenen Code posten? – Markowitz