Başka Kullanıcıda Açıksa Uyarma isimli içerikte, ilgili işlemin VBA kodları ile nasıl yapacağınızı öğreten bir Hazır Makro Kodu yer almaktadır.
Hazır Kodlar
VBA:
Sub DosyaAçıkMıKontrolEt()
Dim dosyaYolu As String
Dim dosyaAçık As Boolean
Dim dosyaNumarası As Integer
' Kontrol etmek istediğiniz dosyanın yolunu buraya yazın
dosyaYolu = "C:\DosyaKonumu\DosyaAdi.xlsx"
' Bir dosya numarası atayın
dosyaNumarası = FreeFile
On Error Resume Next
' Dosyayı Read-Only (salt okunur) modunda açmayı deneyin
Open dosyaYolu For Input Lock Read As dosyaNumarası
dosyaAçık = (Err.Number <> 0)
Close dosyaNumarası
On Error GoTo 0
' Dosya açık mı kontrolü
If dosyaAçık Then
MsgBox "Dosya başka bir kullanıcı tarafından açık!", vbExclamation
Else
MsgBox "Dosya açık değil.", vbInformation
End If
End Sub
Açıklama
- dosyaYolu: Kontrol etmek istediğiniz dosyanın tam yolunu belirtir. Bu, kontrol edilecek dosyanın yolunu ve adını içerir.
- FreeFile: Kullanılabilir bir dosya numarası alır.
- Open... For Input Lock Read: Dosyayı salt okunur modda açmayı dener. Eğer dosya başka bir kullanıcı tarafından açılmışsa, Err.Number sıfırdan farklı bir değer döndürür.
- Close: Dosya numarasını kapatır.
- MsgBox: Dosya başka bir kullanıcı tarafından açılmışsa bir uyarı mesajı gösterir.
Kullanım
- Excel VBA Editor (Alt + F11) penceresini açın.
- Yeni bir modül ekleyin.
- Yukarıdaki kodu bu modüle yapıştırın.
- DosyaAçıkMıKontrolEt makrosunu çalıştırın.