Etiket Baskı

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
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

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
204
Excel Vers. ve Dili
Excel 2021
Altın Üyelik Bitiş Tarihi
03-09-2026
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.
 
Katılım
24 Nisan 2005
Mesajlar
3,671
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
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
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
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

Üst