• DİKKAT

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

Olabilirse excelde yazdır,aktar ve kaydet makrosu

Katılım
25 Ocak 2012
Mesajlar
80
Excel Vers. ve Dili
2010 türkçe
Ekte excel dosyam var.geçici görev yolluğu.burada yazdır ve aktar butonu ile kaydet butonları bulunmamktadır.

1-yazdır ve aktar makrosu ile yazdırma alanı ile belirlenen bölümden 2 adet yazdırılacak ve dosyada ki mavi bölümler ggy sayfasına kaydedilecek.


2- kaydet butonu ile de o an ekrandaki excel dosyası masa üstünde bulunan bi dosyaya kaydedecek ve dosyanın adıda dosya içinde bulunan sicil olacak.( bu imkansız sanırım )

üstadların yardımcı olabileceğini umut ediyorum.teşekkür ederim.
 

Ekli dosyalar

Son düzenleme:
1. ci sorunuz daha önce cevaplandırılmıştı.
2.ci sorunuz ise gerçekleşmesi yapılabilir, ancak; sorunlu olur.
Çünkü; kaydedilecek dosya ismi "sicil No.su" olacak ise, aynı personel için ikinci işlemde , o dosyanın üzerine yazar ve eski bilgiler silinir.

Bu tabii ki benim yorumum. Belki üstadlar başka çözüm bulabilirler.
 
Yaptığınız dosyada yazdır makrosu çalışmamaktadır.ayrıca bu defa yazdır ve aktar aynı makroda olmalı.
 
Yine de KAYDET işlemi için örnek dosya ekledim.
Makro kodlarında kendi bilgisayarınızın yoluna göre değişiklik yapınız.
 

Ekli dosyalar

Hocam hata veriyor.siz adres olarak nereyi gösterdindiz
 
Yaptığınız dosyada yazdır makrosu çalışmamaktadır.ayrıca bu defa yazdır ve aktar aynı makroda olmalı.

Yazdir butonu Makro eklenmiştir.
Ben kaydet ve yazdır ikisini bir arada yapamadım.
Kaydet ve yazdır ayrı ayrı çalışabilir.
dosuanız eklidir.
 

Ekli dosyalar

Ben bu dosyayı masa üstünde bulunan " ggy yapılanlar " dosyasına kaydetmek istiyorum
 
Hocam hata veriyor.siz adres olarak nereyi gösterdindiz

macroda yazan
ChDir "C:\Users\abc\Desktop\GGY"
kısmını sizin dosya yolunuza göre değiştirin...
örnek ChDir "C:\kullanıcı\adınız\masaüstü\GGY" gibi
 
Bunu o dediğiniz yere ne olarak yazmalıyım

excel dosyasındayken Menüden Developer/ Macros' dan kaydet macrosuna Edit olarak seçip kodlarda değişiklik yapabilirsiniz.
(Ben İngilizce olarak kullandığım için türkçe menüleri bilmiyorum)
Sanırım Geliştirici menüsünde Makrolar içinde kaydet makrosunu seçip düzenle olarak değişiklik yapabilirsiniz.)
 
Hocam çok tskkr ederim çok iyi oldu bu.birde su yazdır ve aktar makrosunu yaparsak süper olacak
 
eklediğim dosyada yazdır ve aktar butonunu uygulayamıyoruz yardımcı olabiilir misiniz
 

Ekli dosyalar

  • a.xls
    a.xls
    219.5 KB · Görüntüleme: 13
Aşağıdaki kodları deneyiniz.

Kod:
Sub YAZDIR()
    ActiveWindow.SelectedSheets.PrintOut Copies:=2
    With Sheets("GGY")
        Satir = .Cells(Rows.Count, 1).End(3).Row + 1
        .Cells(Satir, 1) = Range("M1")
        .Cells(Satir, 2) = Range("B1")
        .Cells(Satir, 3) = Range("C11")
        .Cells(Satir, 4) = Range("A11")
        .Cells(Satir, 5) = Range("A13")
        .Cells(Satir, 6) = Range("L22")
    End With
    MsgBox "İşleminiz tamamlanmıştır."
End Sub
 
Sub KAYDET()
    Set CWS = CreateObject("WScript.Shell")
    Yol = CWS.SpecialFolders("Desktop") & "\GGY\"
    ThisWorkbook.Save
    Set FSO = CreateObject("Scripting.FileSystemObject")
    On Error Resume Next
    MkDir Yol
    On Error GoTo 0
    FSO.CopyFile ThisWorkbook.FullName, Yol & Range("M1") & ".xls"
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Aşağıdaki kodları deneyiniz.

Kod:
Sub YAZDIR()
    ActiveWindow.SelectedSheets.PrintOut Copies:=2
    With Sheets("GGY")
        Satir = .Cells(Rows.Count, 1).End(3).Row + 1
        .Cells(Satir, 1) = Range("M1")
        .Cells(Satir, 2) = Range("B1")
        .Cells(Satir, 3) = Range("C11")
        .Cells(Satir, 4) = Range("A11")
        .Cells(Satir, 5) = Range("A13")
        .Cells(Satir, 6) = Range("L22")
    End With
    MsgBox "İşleminiz tamamlanmıştır."
End Sub
 
Sub KAYDET()
    Set CWS = CreateObject("WScript.Shell")
    Yol = CWS.SpecialFolders("Desktop") & "\GGY\"
    ThisWorkbook.Save
    Set FSO = CreateObject("Scripting.FileSystemObject")
    On Error Resume Next
    MkDir Yol
    On Error GoTo 0
    FSO.CopyFile ThisWorkbook.FullName, Yol & Range("M1") & ".xls"
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub

Hocam, KAYDET makrosunda kaydedilecek dosya(workbook) olarak tanımlanmış.
Kod içinde nasıl bir tanımla Ddosyanın hepsini değil de , sadece Sayfa1' i kaydettirebiliriz.
Ayrıca kaydedilecek adres "GGY" dizininde daha önceden kaydedilmiş dosya üzerine aynı isimle yazmadan (örneğin; sistem tarih ve saati ile) ikinci dosyayı nasıl yazdırabiliriz.
Yardımlarınız için şimdiden teşekkür ederim.
 
Merhaba,

Sn. henbl hazır kodları verdim. Size sadece kodları boş bir modüle aktarıp butona tanımlamak kalıyor. Herşeyi hazır bekliyorsunuz. Lütfen biraz gayret gösterin.

Yapacağınız işlem adımlarını yazıyorum...

ALT+F11 ile kod penceresini açın.
INSERT menüsünden MODULE seçeneğini seçin.
Karşınıza boş beyaz bir pencere gelecek.
Verdiğim kodları bu pencereye aktarın.
Daha sonra excel sayfanıza geri dönün.
Sayfanızdaki butonlar üzerinde sağ klik yapın ve MAKRO ATA seçeneğini seçin.
Verdiğim makrolardan uygun olanı seçip işlemi diğer buton içinde yapın.

Artık butonlara mouse sol tuşu ile tıkladığınızda makrolar çalışacaktır.
 
Geri
Üst