AccessTr.neT
Salt Okunur Açmayı Engellemek. - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Salt Okunur Açmayı Engellemek. (/konu-salt-okunur-acmayi-engellemek.html)

Sayfalar: 1 2 3 4 5 6 7 8 9 10 11 12 13


RE: Salt Okunur Açmayı Engellemek. - feraz - 27/05/2020

(27/05/2020, 18:03)berduş yazdı: Excel kitabını kapatıyor ama Excel programı açık kalıyor
Application.Quit



RE: Salt Okunur Açmayı Engellemek. - berduş - 27/05/2020

(27/05/2020, 18:07)feraz yazdı:
Application.Quit
teşekkürler @feraz bey dediğiniz kodu denemiştim ama tüm açık Excel dosyalarını kapattığı için vaz geçmiştim kullanmaktan
kodun son hali aşağıdadır denemelerimde sorun çıkmadı
bu haliyle eğer başka açık kitap yoksa Excel Programını, varsa sadece Excel kitabını kapatıyor
Private Sub Workbook_Open()
    If ActiveWorkbook.ReadOnly Then
        MsgBox "Bu dosya zaten kullanımda. Sonra tekrar deneyin."
'Workbooks.Count açık Excel dosyasının sayısını verir eğer 1 tane ise programı daha fazla ise sadece kitabı kapatır
        If Workbooks.Count = 1 Then Application.Quit Else ActiveWorkbook.Close
    End If
End Sub



RE: Salt Okunur Açmayı Engellemek. - feraz - 27/05/2020

Excel kitaplarını döngüye sokulur ve hangisi salt okunursa o kapatılabilir.
Berduş hocamızın kodunu alttaki gibide deneyebilirsiniz.

Dim ktap As Workbook

For Each ktap In Workbooks
    If ktap.ReadOnly Then
        MsgBox "Bu dosya zaten kullanýmda. Sonra tekrar deneyin."
        If Workbooks.Count = 1 Then Application.Quit Else ktap.Close
    End If
Next

Set ktap = Nothing



RE: Salt Okunur Açmayı Engellemek. - berduş - 27/05/2020

önce Access dosyasını açıp dış veri al ile Excel sayfasını bağlayın
yada gönderdiğim dosyadaki bağlantıyı kendi dosyanıza göre uyrlayın
[Resim: do.php?img=10255]


RE: Salt Okunur Açmayı Engellemek. - m_demir - 28/05/2020

Feraz Hocamın Kodu

Dim ktap As Workbook

For Each ktap In Workbooks
    If ktap.ReadOnly Then
        MsgBox "Bu dosya zaten kullanýmda. Sonra tekrar deneyin."
        If Workbooks.Count = 1 Then Application.Quit Else ktap.Close
    End If
Next

Set ktap = Nothing


Berduş Hocamın kodu

Private Sub Workbook_Open()
    If ActiveWorkbook.ReadOnly Then
        MsgBox "Bu dosya zaten kullanımda. Sonra tekrar deneyin."
'Workbooks.Count açık Excel dosyasının sayısını verir eğer 1 tane ise programı daha fazla ise sadece kitabı kapatır
        If Workbooks.Count = 1 Then Application.Quit Else ActiveWorkbook.Close
    End If
End Sub


Feraz Hocamın   For Each ktap In Workbooks kod satırı hata veriyor.

Berduş hocamın eklediği Access Excel bağlantısını ofis 2010 da yapamadım.

Kodların ikisinide  BuÇalışmaKitabı olayına eklediğim zaman salt okunur olarak kitabı açmama izin veriyor.


RE: Salt Okunur Açmayı Engellemek. - berduş - 28/05/2020

yapmanız gereken tek şey kodları Workbook_Open olayına eklemekti başka birşeye gerek yoktu.
dün anlattığım olay ağ bağlantınız olmadığı için evinizde deneyebilmenizi sağlamaktı
çalışma kitabının açıldığında olayına aşağıdaki kodlar yazar mısınız
if ActiveWorkbook.ReadOnly =true then msgbox "Dosya Salt okunur" else "Sorun yok açılabilir"
msgbox Workbooks.Count " tane Excel dosyası açık
yukardaki kodu Workbook_Open olayına ekleyip dsyayı kapatın
tekrar açın size 2 mesaj vermesi gerek
verdiği bilgiler doğruysa kodları yanlış yere eklemiş olabilirsiniz
çalışmanızı ekleyin inceleyelim

tekrar belirteyim, dün yapılanları unutun!
yapmanız gereken tek şey aşağıdaki kodu Workbook_Open
Private Sub Workbook_Open()
    If ActiveWorkbook.ReadOnly Then
        MsgBox "Bu dosya zaten kullanımda. Sonra tekrar deneyin."
'Workbooks.Count açık Excel dosyasının sayısını verir eğer 1 tane ise programı daha fazla ise sadece kitabı kapatır
        If Workbooks.Count = 1 Then Application.Quit Else ActiveWorkbook.Close
    End If
End Sub