Çözüldü BUGÜNÜ YAZDIR

mc_exrem

Altın Üye
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhabalar

Eklediğim dosyada C1 hücresinde girişlerin, D1 hücresinde de çıkışların toplamları verilmektedir. (Kendi imkanlarımla basit bi şekilde yaptım düzeltilmesi gerekebilir). Sizden ricam bu toplamların sadece içinde bulunduğum günün toplamlarını vermesini ve sonrasında BU GÜNÜ YAZDIR butonu aracılığıyla sadece içinde bulunduğum günün verilerini yazmasını istiyorum. Çünki akşamları günlük çıktı alacağım. Bir de A sütununa veri girince aynı satırdaki E sütununa o günün tarihini atıyordu şu an atmıyor bunu da düzeltebilir misiniz. Teşekkürler yardımlarınız için. Saygılar
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,755
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Yazdır makrosunu aşağıdaki gibi değiştiriniz.

Kod:
Sub Yazdir()
    Dim kopya As Long
    Dim myPrinter As String
    Dim printer_name As String

    kopya = [J1].Value
    
    ActiveSheet.Range("$A$2:$E$" & Rows.Count).AutoFilter Field:=5, Criteria1:=Format(CDate(Date), "dd.mm.yyyy")
    ActiveSheet.PageSetup.PrintArea = "$A1:$E" & Cells(Rows.Count, 5).End(3).Row

    printer_name = "Ne00: üzerindeki Zebra TLP2844 "
    myPrinter = Application.ActivePrinter
    ActiveSheet.PrintOut Preview:=False, ActivePrinter:=printer_name, Copies:=kopya
    
    Application.ActivePrinter = myPrinter
End Sub

C1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();C4:C1000)
D1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();D4:D1000)
Sayfanızın kod bölümündeki kodu da aşağıdaki gibi değiştiriniz. (E sütununa tarih yazılması için)

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A:A")) Is Nothing Then
        Target.Offset(0, 4) = Format(Now, "dd.mm.yyyy")
    End If
End Sub
 

mc_exrem

Altın Üye
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhaba,

Yazdır makrosunu aşağıdaki gibi değiştiriniz.

Kod:
Sub Yazdir()
    Dim kopya As Long
    Dim myPrinter As String
    Dim printer_name As String

    kopya = [J1].Value
   
    ActiveSheet.Range("$A$2:$E$" & Rows.Count).AutoFilter Field:=5, Criteria1:=Format(CDate(Date), "dd.mm.yyyy")
    ActiveSheet.PageSetup.PrintArea = "$A1:$E" & Cells(Rows.Count, 5).End(3).Row

    printer_name = "Ne00: üzerindeki Zebra TLP2844 "
    myPrinter = Application.ActivePrinter
    ActiveSheet.PrintOut Preview:=False, ActivePrinter:=printer_name, Copies:=kopya
   
    Application.ActivePrinter = myPrinter
End Sub

C1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();C4:C1000)
D1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();D4:D1000)
Sayfanızın kod bölümündeki kodu da aşağıdaki gibi değiştiriniz. (E sütununa tarih yazılması için)

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A:A")) Is Nothing Then
        Target.Offset(0, 4) = Format(Now, "dd.mm.yyyy")
    End If
End Sub
ilginiz için çok teşekkür ederim. Cihaza bağlı 3 adet yazıcı bulunmakta. Bu işlem için kullanacağım yazıcı Samsung SCX-4x21 Series (USB003). Kod bölümündeki printer_name = "Ne00: üzerindeki Zebra TLP2844 " bu satırı printer_name = "Ne00: üzerindeki Samsung SCX-4x21 Series (USB003) " olarak düzeltmem yeterli mi acaba?
 

mc_exrem

Altın Üye
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhaba,

Yazdır makrosunu aşağıdaki gibi değiştiriniz.

Kod:
Sub Yazdir()
    Dim kopya As Long
    Dim myPrinter As String
    Dim printer_name As String

    kopya = [J1].Value
 
    ActiveSheet.Range("$A$2:$E$" & Rows.Count).AutoFilter Field:=5, Criteria1:=Format(CDate(Date), "dd.mm.yyyy")
    ActiveSheet.PageSetup.PrintArea = "$A1:$E" & Cells(Rows.Count, 5).End(3).Row

    printer_name = "Ne00: üzerindeki Zebra TLP2844 "
    myPrinter = Application.ActivePrinter
    ActiveSheet.PrintOut Preview:=False, ActivePrinter:=printer_name, Copies:=kopya
 
    Application.ActivePrinter = myPrinter
End Sub

C1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();C4:C1000)
D1 hücresine;
Kod:
=ETOPLA(E4:E1000;BUGÜN();D4:D1000)
Sayfanızın kod bölümündeki kodu da aşağıdaki gibi değiştiriniz. (E sütununa tarih yazılması için)

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A:A")) Is Nothing Then
        Target.Offset(0, 4) = Format(Now, "dd.mm.yyyy")
    End If
End Sub
@Korhan Ayhan Bey,

SAYFAYI YAZDIR butonuna tıklayınca satırları gizliyor ama GEÇERLİ TARİHTEKİ verileri üstteki verilerin altında hepsini yazmasını istiyorum. Aşağıdaki hataları veriyor. Yardım eder misiniz
 

Ekli dosyalar

Son düzenleme:

mc_exrem

Altın Üye
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Konu GÜN SONU DEVRİ Başlıklı konu ile düzenlelerek devam edilmiştir. Soru kısmını Çözüldü olarak seçemiyorum. Düzeltebilir misiniz.
 
Son düzenleme:
Üst