• DİKKAT

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

Etiket Baskı

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
208
Excel Vers. ve Dili
Excel 2021
Bir Makinede çalıştırmak için Etiket Programı Tasarlıyorum. Makine işlem bitince bir text belgesi oluştuyor ve buna yaptığı işlemin numarasını yazıyor. Bu tek satırlı bir numara "5"gibi. Sonra başka işleme geçiyor ve önceki text dosyasını silip yeni yaptığı işlemin numarasını, yeni text dosyasına yazıyor. Numaralar sıralı gitmiyor ve bazen yaptığı işleme göre aynı numarayı da yazabiliyor. Sorunum şu; bu text belgesi makine tarafından değiştirildiğinde Makro çalıştırmak istiyorum. Yani bunu algılaıp tetikleyici görevi yapacak bir koda ihtiyacım var.
 

Ekli dosyalar

Yapmak istediğimi anlatamadım herhalde. Yani özetle sabit bir klasördeki metin belgesi değişince makro çalıştırmak istiyorum. Makronun olduğu excel dosyamın herdaim açık olduğunu düşünebiliriz.
 
Aşağıdaki kod ile deneyiniz.
Dosya her yeniden oluşturulduğunda A1 hücresine oluşturulma tarihini yazar.

Kod:
Public Const Pause = 5 'Her 5 sn de bir kontrol
Public Const cagrilanmakro = "tarih_kontrol"
Public eskitarih, yenitarih As String

Sub Auto_Open()
    StartTimer
End Sub

Sub Auto_Close()
    StopTimer
End Sub

Sub StartTimer()
    bekleme = Now + TimeSerial(0, 0, Pause)
    Application.OnTime earliesttime:=bekleme, procedure:=cagrilanmakro, schedule:=True
End Sub

Sub tarih_kontrol()
    Call dosyakontrol
    If esktarih <> yenitarih Then
      Cells(1, 1).Value = yenitarih
    End If
    eskitarih = yenitarih
    StartTimer
End Sub

Sub StopTimer()
    On Error Resume Next
    Application.OnTime earliesttime:=bekleme, procedure:=cagrilanmakro, schedule:=False
End Sub

Sub dosyakontrol()
   dosya = "D:\temp\verikontrol\veri.txt"
    On Error Resume Next
    yenitarih = Format(FileDateTime(dosya), "DD.MM.YYYY HH:mm:SS")
    On Error Resume Next
End Sub
 
Alternatif olarak; ekli dosyalarla (Check_Folder.vbs ve Test.xlsm) bilgisayarınızdaki C:\TestFolder klasörü anlık olarak (2 saniye aralıkla) kontrol edilmekte olup, söz konusu klasörde herhangi bir dosya silindiğinde, bu klasöre herhangi bir yeni dosya ilave edildiğinde veya klasördeki mevcut dosyalardan herhangi biri güncellendiğinde Test.xlsm dosyasındaki Test isimli makro çalışır. (Dosya isimlerinin değiştirilmemesi ve Check_Folder.vbs ve Test.xlsm dosyalarının bilgisayarda herhangi bir klasörde aynı yerde olması gerekmektedir.)

C:\TestFolder klasörünü izlemeye başlamak için, Excel dosyasında sayfadaki "Başlat" butonuna, izlemeyi durdurmak için de "Durdur" butonuna tıklamak yeterlidir.

.
 

Ekli dosyalar

Geri
Üst