• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

dosya adı değiştirmeyi engellemede problem

Katılım
26 Ocak 2008
Mesajlar
48
Excel Vers. ve Dili
tr
arkadaşlar, şubelerimizdeki kullanıcıların excel dosyalarının isimlerini değiştirmeyi engellemek amaçlı aşağıdaki kodu workbook kodlamasına ekledim ama bu sefer dosyanın adı aynı olmasına rağmen açamıyorum. dosya adı "2010 İstanbul Kit Dağılım Şeması" herşey doğru ama olmuyor malesef. Bu kontrolü iptal edebilmemin başka bir yolu varmı acaba ?


Private Sub Workbook_Open()
If Not ThisWorkbook.Name = "2010 İstanbul Kit Dağılım Şeması.xlsx" or ThisWorkbook.Name = "2010 İstanbul Kit Dağılım Şeması.xlsm" Then
MsgBox "Dosya İsmi Yada Uzantısı Değiştirilmiş. 2010 İstanbul Kit Dağılım Şeması.xlsx Yada 2010 İstanbul Kit Dağılım Şeması.xlsm Olmalıdır", vbInformation
ActiveWorkbook.Save: ActiveWorkbook.Close
Application.Quit
End If
End Sub
 
merhaba

makroları etkinleştirmeden dosyayı açıp gerekli değişikliğ. yapın.
dosya uzantısı; .xls, .xlsx, .xlsm olabilir
 
Excelin güvenlik seviyesini başka bir excel dosyası açarak yükseltiniz
sonra bu dosyayı açarak o kodları siliniz ve kaydedip kapatınız.İsterseniz sonra excelin güvenlik seviyesini tekrar indrebilirsiniz.:cool:
 
Evren hocam çok teşekkür ederim. Dediğinizi uyguladım başarı ile yaptım değişikliği. Peki dosyamı neden açamamış olabilirim ? Kodlama yukarıda verdiğim gibi, dosya adımda yine o şekilde. İhtimaller nelerdir acaba ?
 
Evren hocam çok teşekkür ederim. Dediğinizi uyguladım başarı ile yaptım değişikliği. Peki dosyamı neden açamamış olabilirim ? Kodlama yukarıda verdiğim gibi, dosya adımda yine o şekilde. İhtimaller nelerdir acaba ?
Bu tür konulara fazla meyil vermeyin.(dosyalama ile igili tüm işler risklidir.) Olsun bitsin.:cool:
 
Selamlar,

Kullandığınız kodu aşağıdaki şekilde değiştirip denermisiniz.

Kod:
Option Explicit
 
Private Sub Workbook_Open()
    If Not ThisWorkbook.Name = "2010 İstanbul Kit Dağılım Şeması.xlsx" Or _
        Not ThisWorkbook.Name = "2010 İstanbul Kit Dağılım Şeması.xlsm" Then
        MsgBox "Dosya İsmi Yada Uzantısı Değiştirilmiş. 2010 İstanbul Kit Dağılım Şeması.xlsx Yada 2010 İstanbul Kit Dağılım Şeması.xlsm Olmalıdır", vbInformation
        ActiveWorkbook.Save: ActiveWorkbook.Close
        Application.Quit
    End If
End Sub
 
Evren hocam, konu ile ilgili tecrübelerinizden dolayı söylediğinizden eminim ve dikkate alacağım herzaman.. Teşekkür ederim yardımınız için.

Malesef korhan hocam, ben size dosyanın kendisini gönderiyorum. İsimden kaynaklanan bir problemmidir acaba diye düşündüm adını değiştirdim fakat yine aynı hatayı çıkıyor..
 

Ekli dosyalar

  • 01.zip
    01.zip
    133.9 KB · Görüntüleme: 4
merhaba
aşağıdaki gibi değiştirirseniz sorun kısmen çözülür.
Kod:
Private Sub Workbook_Open()
    If Not ThisWorkbook.Name = "01.xlsm" Then
        MsgBox "Dosya İsmi Değiştirilmiş. 01.xlsm olmalıdır.", vbInformation
        ActiveWorkbook.Save: ActiveWorkbook.Close
        Application.Quit
    End If
End Sub

1- dosyayı .xlsx formatında farklı kaydettiklerinde; içersindeki makrolar silineceğinden 01.xlsx olarak kontrol etmenin anlamı yoktur!
2- dosya excel2003 ile açıldığında .tmp uzantılı dosya olarak açılacağı için yine 01.xls veya 01.xlsx veya 01.xlsm olarak kontrol etmenin anlamı yoktur!

kısacası; bu kodlar sadece excel2007 de makro içerebilen excel dosyası olarak kaydedilirse ve excel2007 ile açılırsa işe yarar, başka türlü hiç bir yararı olmayacaktır.
 
Teşekkür ettim hocam.. söylediğiniz gibi uyguladım kısmen kullanıyorum çalışmalarımda.
 
Geri
Üst