• DİKKAT

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

dosya hareketlerini takip eden bir eklenti

Katılım
10 Mayıs 2009
Mesajlar
1,080
Excel Vers. ve Dili
2003 türkçe
Herkese Merhabalar;

Bir eklenti dosyam olsun..Bu dosyadaki kodlar ;bitiminde ...sss.xls şeklinde dosya adı olan dosyalar çalıştığında çalışsın ve bu dosyalardaki "PERFORMANS KAYIT"adlı sayfanın üzerindeki TextBox1 nesnesinde herhangi bir değişiklik yapılırsa bu değişikliği C:/ sürücüsündeki ssstakip.xls adlı dosyada TAKİP isimli sayfanın B sütununa ilk boş satıra kaydetsin..A sütununa değişikliğin söz konusu olduğu dosya adını..C sütununa değişikliğin yapıldığı tarihi ve D sütununa da bu işlemlerin yapılmakta olduğu bilgisayarın adını yazsın..

İlgilenecek olan herkese şimdiden çok teşekkür ediyorum.
 

Ekli dosyalar

Son düzenleme:
:)
Sipariş verir gibi olmuş lütfen yanlış anlaşılmasın..Problemi anlatmak için böyle bir dil kullandım:)
 
Acaba bu sorudan bir sonuç alma ihtimalimiz var mıdır ne dersiniz?
 
buraya küçük bir örnek çalışma ekliyorum bu konuda herkez bir şeyler ekliye bilir
hücreye yapılan işlemleri kayı sayfasında ne yapdığını kayıt ediyor tabi üzerinde çalışılması gerekiyor daha sonra bu dosya eklentiye çevrilebilir.
 

Ekli dosyalar

Halit hocam teşekkür ederim.Konuyu açarken özellikle sizin Evren,Korhan ve Zeki hocalarımın ilgisini çekeceğini düşündüğüm bir konuydu.Sizden bir yanıt almış olmaktan bu bakımdan da hoşnutluk duydum ve bunu belirtmek istedim.

Gönderdiğiniz dosya bazı dosyalarda kullanılabilecek başlı başına hoş bir uygulama ama sorumun yanıtına ulaşmak için bayağı bir yol olduğunun da göstergesi gibi..

Elimden geldiğince kolaylaştırmayı ve yol almayı istedim ancak beceremedim.Kapalı dosya uygulaması yapmak,eklenti olabilecek tarzda bir çalışma sürdürmek pek harcım olan işler değil malesef.

İlginiz ve paylaşımınız için tekrar teşekkür ediyorum...
 
yavaş yavaş bir şeyler yapmay çalışıyorum.

verileri c sürücüsünün içindeki Takip Dosyasının içine kayıt yapıyor
kodları Thisworkbook un içine koyunuz.


Dim Eski_Değer
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Mid(ThisWorkbook.Name, 1, 3) = "sss" Then
Yeni_Değer = Target.Cells
On Error Resume Next
Open "C:\Takip.xls" For Append As #1
alan1 = Date
alan2 = Time
alan3 = Application.UserName
alan4 = ActiveSheet.Name & "!" & Target.Address(1, 1)
alan5 = IIf(Eski_Değer = "", "Boş Hücre " & Target, Eski_Değer & " silindi")
Print #1, alan1 & Chr$(9) & alan2 & Chr$(9) & alan3 & Chr$(9) & alan4 & Chr$(9) & alan5
End
End If
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Eski_Değer = Target
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Mid(ThisWorkbook.Name, 1, 3) = "sss" Then
On Error Resume Next
Open "C:\Takip.xls" For Append As #1
alan1 = Date
alan2 = Time
alan3 = Application.UserName
alan4 = ActiveSheet.Name & "!" & Target.Address(1, 1)
alan5 = "kayıt yapıldı"
Print #1, alan1 & Chr$(9) & alan2 & Chr$(9) & alan3 & Chr$(9) & alan4 & Chr$(9) & alan5
End
End If
End Sub
 
Halit Hocam;

Kodlarınızı deneme.sss.xls adlı bir dosyanın Thisworkbook bölümüne yerleştirdim.C: sürücüsünde Takip.xls isimli bir dosya açtım ancak deneme.sss.xls isimli dosyadaki değişikliklerin Takip.xls dosyasına aktarılmasını sağlayamıyorum..Beni yönlendirebilirseniz sevinirim.
 
kod kendisi c sürücüsünün içine takip dosyası oluşturuyor siz oluşturduğunuz takip dosyasını siliniz.

çünkü aslında oluşturduğu dosya metin dosyası ama xls uzantılı dosya
 
Hocam dediğinizi yaptım ama sebebini anlayamadım Takip dosyası oluşmuyor.Sürücüyü D:olarak değiştirdim orada da oluşmadı malesef..Neyi yanlış yapıyorum anlayamadım.
 
Hocam dediğinizi yaptım ama sebebini anlayamadım Takip dosyası oluşmuyor.Sürücüyü D:olarak değiştirdim orada da oluşmadı malesef..Neyi yanlış yapıyorum anlayamadım.

ekli dosyaya bir bakınız.
 

Ekli dosyalar

Hocam sürücüm C: iken oluşturamıyorum ama D:iken yapabildim.fakat dosya adım deneme.sss.xls iken olmadı sss.xls yaptığımda oldu..

Dosya adlarım hep aynı şekilde olacak : dosyaadı.sss.xls şeklinde..
 
Hocam sanırım sayenizde sorunumu çözdüm.Ekli dosyayı inceler ortaya çıkabilecek bir sorun olduğunu düşünürseniz beni uyarırsanız sevinirim.

Eğer kitap isminde belirtilen yerde "sss" varsa ve sayfa adı "PERFORMANS KAYIT" ise a1 hücresindeki değeri Takip.xls dosyasına aktarıyor.A1 deki değeri sayfa üzerindeki TextBox1'den link vererek sağlıyorum.(Malesef kod eklediğimde TextBox1 in değerini direk alamadım)

Hocam şimdi varsa bu kodlardaki sorunların ayıklanması ayrıca ek olarak beforesave olayında eğer a1 değeri değişmişse kodların çalışması yoksa yok yere kayıt yapılmaması ve son olarak ta bunun bir eklenti olarak çalışması sorunları kaldı.

İlgi ve desteğiniz iç,in çok teşekkür ediyorum.
 

Ekli dosyalar

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

If Right(Mid(ThisWorkbook.Name, 1, Len(ThisWorkbook.Name) - 4), 3) = "sss" And ActiveSheet.Name = "PERFORMANS KAYIT" Then
On Error Resume Next
Open "d:\Takip.xls" For Append As #1
alan1 = Date
alan2 = Time
alan3 = Application.UserName
alan4 = [a1]
alan5 = ThisWorkbook.Name
Print #1, alan1 & Chr$(9) & alan2 & Chr$(9) & alan3 & Chr$(9) & alan4 & Chr$(9) & alan5
End
End If
End Sub
Thisworkbook bölümünde yukarıda verilen kodların bulunduğu dosyamı.xla uzantısıyla kaydetmek istiyorum ancak kayıt gerçekleşiyorsa da dosya eklenti olarak çalışmıyor.Ne yapabilirim?
 
Kod:
Thisworkbook bölümünde yukarıda verilen kodların bulunduğu dosyamı.xla uzantısıyla kaydetmek istiyorum ancak kayıt gerçekleşiyorsa da dosya eklenti olarak çalışmıyor.Ne yapabilirim

evet eklentiler o bölümde çalışmıyor bsn birtane üste kaydet manüsü yaptım oradan kayıt yapılaınca oluyor.
 

Ekli dosyalar

hocam malesef dosyadan bir sonuç alamadım ama eminim siz çalışıyorken yollamışsınızdır.Hatam ne olabilir anlayamadım..
 
dosyamı eklenti haline getirdim ve eklentilerden ekledim ancak anladığım kadarıyla açtığım çalışma kitabından önce eklentim aktif oluyor bu yüzden de thisworkbook ya da activeworkbook diye yazılmış kodlar aktif çalışma kitabı olarak kendisini algılıyor.
 

Ekli dosyalar

Private Sub Workbook_BeforeClose(Cancel As Boolean)
For i = 1 To Workbooks.Count
If Workbooks(i).Name <> ThisWorkbook.Name And Right(Mid(Workbooks(i).Name, 1, Len(Workbooks(i).Name) - 4), 3) = "sss" And Workbooks(i).ActiveSheet.Name = "PERFORMANS KAYIT" Then
On Error Resume Next
ThisWorkbook.ActiveSheet.Range("a1").Value = Workbooks(i).ActiveSheet.Range("a1").Value
Open "d:\Takip.xls" For Append As #1
alan1 = Date
alan2 = Time
alan3 = Application.UserName
alan4 = Workbooks(i).ActiveSheet.Range("a1").Value
alan5 = Workbooks(i).Name
Print #1, alan1 & Chr$(9) & alan2 & Chr$(9) & alan3 & Chr$(9) & alan4 & Chr$(9) & alan5
End
End If
Next i
End Sub

Halit hocam yardımlarınız sayesinde sanırım sonuca ulaştım.Thisworkbook kodlarınıza bir açık kitaplar döngüsü ekledim ve .xla olarak kaydettim.Eklenti olarak eklenirse ve dosyaadı.sss.xls şeklinde isimlendirilmiş bir dosya ile açılırsa o dosyanın aktif sayfası "PERFORMANS KAYIT" sa D: sürücüsüne Takip.xls dosyasına kayıt yapıyor.Şimdilik bir sorun yok gibi görünüyor.
 

Ekli dosyalar

ben çözemedim siz çözüme ulaşmışsınız kolay gelsin.
 
Halit hocam yardımlarınız olmasa hiç yol alamıyordum.Ellerinize sağlık sayenizde sonuca ulaştı gibi ama bu son haliyle bir sorunu daha var malesef.Döngüye soktuğum için umuyordum ki diyelim 123.sss.xls ve 456.sss.xls diye iki dosyam açık olsun kapatırken bu iki dosyadaki a1 hücrelerini ve diğer bilgileri kayıt eder sanıyordum ancak sanırım dosyalar sırayla kapanıyor olduğu için sadece birinden kayıt alıyor.Olmasa da olur ama bu şekil yapabilirsem daha işlevsel bir eklenti olacak.Yine ilgi ve desteğinizi eksik etmezseniz çok sevinirim.Tekrar teşekkürler hocam..
 
Geri
Üst