Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 02-01-2018, 16:10   #1
sinan05
 
Giriş: 16/11/2017
Şehir: istanbul
Mesaj: 76
Excel Vers. ve Dili:
Excel 2016 Türkçe
Varsayılan Koşula bağlı yazdırma makrosu.

Herkese hayırlı akşamlar, Hayırlı yıllar dilerim. Saygı değer Hocalarım bir makroda daha yardımınıza ihtiyacım var.
Şöyle bir makro yapmak istiyorum. çalışma kitabımdaki Sayfa1 de B16 hücresi 10 a eşitse, yine Sayfa1 de seçmiş olduğum 20R X 40C (G32:G51 ve AT32:AT51) alanı (yazıcı kısmından seçili alan işaretli olmak kaydıyla) yazdırsın. eğer B16 hücresi 11 eşitse 20R X 80C (G32:G51 ve CH32:CH51) olarak seçtiğim alanı yazssın. Bu şekilde aynı orantıda artan 10 dan 20 ye kadar giden koşul koyacağım.
yardımlarınız için şimdiden teşekkür ederim.
sinan05 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-01-2018, 18:16   #2
cems
Altın Üye
 
cems kullanıcısının avatarı
 
Giriş: 02/09/2005
Şehir: İstanbul
Mesaj: 1,711
Excel Vers. ve Dili:
office 2003 tr + office 2010 tr
Varsayılan

Bir örneği www.dosya.tc gibi bir dış servera yükleyip burada linkini paylaşmadığınız için

teorik olarak :

bir modül açın ve bu kodları yapıştırın

Sub printle()
If range("b16")= 10 then
Worksheets("sayfa1").Range("g32:at51").printout ' basmadan görmek isterseniz printpreview
end if
end sub

Sayfaya bir tuş yerleştirin ve bu kodu o tuşa bağlayın. Bunu her bir baskı alanınız için tekrarlayın.

Ya da tek tuş ile çözmek isterseniz Select Case Statement kurun .


Yanlız ; g32:at51 ve sizin bu ve devam edeceğiniz diğer baskılarda bu alan sağa doğru baskı sahasını aşacaktır ya da aşırı daraltmanız gerekli. Basmadan önce görünüme gözatmak için printout yerine printpreview yazmanız gerek.

İstediğiniz gibi olmazsa , dosya eklerseniz düşüncenizi daha net anlamak mümkün olur.

Bu mesaj en son " 02-01-2018 " tarihinde saat 18:25 itibariyle cems tarafından düzenlenmiştir....
cems Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-01-2018, 18:38   #3
sinan05
 
Giriş: 16/11/2017
Şehir: istanbul
Mesaj: 76
Excel Vers. ve Dili:
Excel 2016 Türkçe
Varsayılan

Alıntı:
cems tarafından gönderildi Mesajı Görüntüle
Bir örneği www.dosya.tc gibi bir dış servera yükleyip burada linkini paylaşmadığınız için

teorik olarak :

bir modül açın ve bu kodları yapıştırın

Sub printle()
If range("b16")= 10 then
Worksheets("sayfa1").Range("g32:at51").printout ' basmadan görmek isterseniz printpreview
end if
end sub

Sayfaya bir tuş yerleştirin ve bu kodu o tuşa bağlayın. Bunu her bir baskı alanınız için tekrarlayın.

Ya da tek tuş ile çözmek isterseniz Select Case Statement kurun .


Yanlız ; g32:at51 ve sizin bu ve devam edeceğiniz diğer baskılarda bu alan sağa doğru baskı sahasını aşacaktır ya da aşırı daraltmanız gerekli. Basmadan önce görünüme gözatmak için printout yerine printpreview yazmanız gerek.

İstediğiniz gibi olmazsa , dosya eklerseniz düşüncenizi daha net anlamak mümkün olur.
Hocam çok teşekkür ederim ilgi alakanız için eksik olmayınız . Şöyle açıklayayım, o seçili alan bir sayfa boyutu yani 6cm yükseklik uzunluk 11cm buna istinaden seçili alanda art arda sayfalar yazdırmış olacak. Aslında makro kaydet ile bir örnek hazırladım ama başına koşul koyamadım. Dosya yanımda olmadığı için ekliyemiyorum. Ama makroyu şöyle kaydettim önce g32:at51 alanını seçtim yazdırma ayarlarındam seçim kısmını işaretledim sonrada yazdırdım oluyor ama tabi koşul ekliyemiyorum. Bence sizin kodlarınız istediğim gibi oldu fakat şimdi deneyemiyorum. Diyelimki istediğim yeri yazdırdı ozaman b16 11 eşit olunca aynı kodları birdaha altınamı eklicem bir örnek verebilirmisiniz.hocam birde sadece o seçili alanı yazdırması lazım ben yukarda dediğim gibi yazıcı ayarlarından seçim kısmını işaretledim sizce bunun için bir kod eklenmeli mi.

Bu mesaj en son " 02-01-2018 " tarihinde saat 18:53 itibariyle sinan05 tarafından düzenlenmiştir....
sinan05 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-01-2018, 20:29   #4
cems
Altın Üye
 
cems kullanıcısının avatarı
 
Giriş: 02/09/2005
Şehir: İstanbul
Mesaj: 1,711
Excel Vers. ve Dili:
office 2003 tr + office 2010 tr
Varsayılan

Alıntı:
sinan05 tarafından gönderildi Mesajı Görüntüle
Diyelimki istediğim yeri yazdırdı ozaman b16 11 eşit olunca aynı kodları birdaha altınamı eklicem bir örnek verebilirmisiniz.hocam birde sadece o seçili alanı yazdırması lazım ben yukarda dediğim gibi yazıcı ayarlarından seçim kısmını işaretledim sizce bunun için bir kod eklenmeli mi.
Alıntı:
Sub printle()
If range("b16")= 10 then
Worksheets("sayfa1").Range("g32:at51").printout ' basmadan görmek isterseniz printpreview
end if

If range("b16")= 11 then
Worksheets("sayfa1").Range("CH32:CH51").printout ' basmadan görmek isterseniz printpreview
end if
...
......
..............
end sub
Birinci kodu deneyin , dosyanızda çalışırsa kopyalayın ve çoğaltın. Çalışmadığı durumda dosyanızı görmek bu mesaj trafiğini engeller. Buradaki range lar baskıalanını söylüyor zaten , onemli olan sizin sayfada duruşunu ayarlamanız. Ayrıca alan vermeye gerek yok.
cems Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-01-2018, 20:47   #5
sinan05
 
Giriş: 16/11/2017
Şehir: istanbul
Mesaj: 76
Excel Vers. ve Dili:
Excel 2016 Türkçe
Varsayılan

Alıntı:
cems tarafından gönderildi Mesajı Görüntüle
Birinci kodu deneyin , dosyanızda çalışırsa kopyalayın ve çoğaltın. Çalışmadığı durumda dosyanızı görmek bu mesaj trafiğini engeller. Buradaki range lar baskıalanını söylüyor zaten , onemli olan sizin sayfada duruşunu ayarlamanız. Ayrıca alan vermeye gerek yok.
Anladım Hocam çok teşekkür ederim Allah Razı olsun. Yarın ilk fırsatta deneyeceğim inşallah. Hayırlı akşamlar, Saygılar.
sinan05 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 03-01-2018, 17:32   #6
sinan05
 
Giriş: 16/11/2017
Şehir: istanbul
Mesaj: 76
Excel Vers. ve Dili:
Excel 2016 Türkçe
Varsayılan

Cems Hocam makro çok güzel çalışıyor dediğiniz gibi yaptım çok güzel oldu. Tekrar teşekkürler sağolun. Hayırlı akşamlar.
sinan05 Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 10:21


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil ve Konuşma Terapisti- Çorlu Dil ve Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Çorlu Su Arıtma- Gebze Emlak- Rampa- Rotary- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Çorlu Sürücü Kursu- Şişli Avukat- Edirne Serbest Muhasebeci- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kaplan Tekstil- Çorlu Perde- Çorlu Havuz- Makina- Danışmazlar-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden