İle başlayanı yazdır

Katılım
14 Haziran 2006
Mesajlar
575
Altın Üyelik Bitiş Tarihi
10.04.2023
Belge formu dosyamın Anasayfasının B sutununda bulunan hücreleri sıra ile GR410,GR633,GR632 ile başlıyorsa tek tek sırasıynan hücreyi kopyalayıp IGF sayfasının B7 hücresine yapıştırıp sayfanın A1:K37 aralığını yazdırmak istiyorum.

Eğer Belge formu dosyamın Anasayfasının B sutununda bulunan hücreleri sıra ile GR628,GR345,GR346 ile başlıyorsa tek teksırasıynan hücreyi kopyalayıp IGF sayfasının B7 hücresine yapıştırıp sayfanın A1:K38 aralığını yazdırmak istiyorum.

Bir döngü kod yardımı ile yapabilirmiyiz.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki makroyu deneyin. Denemeden önce sayfa ayarını yapmayı unutmayın ve eğer A1:K38 dışında veri varsa yazdırılacak sayfanın yazdırma alanını A1:K38 olarak ayarlayın:

PHP:
Sub yaz()
Set s1 = Sheets("Anasayfa")
Set s2 = Sheets("IGF")
son = s1.Cells(Rows.Count, "B").End(3).Row
For i = 3 To son
    s2.[B7] = s1.Cells(i, "B")
    If Left(s2.[B7], 5) = "GR410" Or Left(s2.[B7], 5) = "GR633" Or Left(s2.[B7], 5) = "GR632" Then
        s2.Rows("38:38").EntireRow.Hidden = True
    Else
        s2.Rows("38:38").EntireRow.Hidden = False
    End If
    s2.PrintOut
Next
End Sub
 
Katılım
14 Haziran 2006
Mesajlar
575
Altın Üyelik Bitiş Tarihi
10.04.2023
Kod B sutunundan numaraları alarak hep IGF sayfasını çıkartıyor.
B sutununda GR410,GR633,GR632 ile başlıyorsa IGF sayfasına B7 hücresine yazdıraçak çıktı alaçak
B sutununda GR628,GR345,GR346 ile başlıyorsa CEN sayfasına B7 hücresine yazdıraçak çıktı alaçak.
Kod bu şekilde olursa daha güzel olur.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
İlk mesajınızda ne istediyseniz kod onu yapıyor:

Belge formu dosyamın Anasayfasının B sutununda bulunan hücreleri sıra ile GR410,GR633,GR632 ile başlıyorsa tek tek sırasıynan hücreyi kopyalayıp IGF sayfasının B7 hücresine yapıştırıp sayfanın A1:K37 aralığını yazdırmak istiyorum.

Eğer Belge formu dosyamın Anasayfasının B sutununda bulunan hücreleri sıra ile GR628,GR345,GR346 ile başlıyorsa tek teksırasıynan hücreyi kopyalayıp IGF sayfasının B7 hücresine yapıştırıp sayfanın A1:K38 aralığını yazdırmak istiyorum.

Bir döngü kod yardımı ile yapabilirmiyiz.

Belirttiğiniz durum için aşağıdaki makroyu deneyin. Sayfaların yazdırma ayarlarını yapmayı unutmayın:

PHP:
Sub yaz()
Set s1 = Sheets("Anasayfa")
Set s2 = Sheets("IGF")
Set s2 = Sheets("CEN")
son = s1.Cells(Rows.Count, "B").End(3).Row
For i = 3 To son
    If Left(s1.Cells(i, "B"), 5) = "GR410" Or Left(s2.[B7], 5) = "GR633" Or Left(s2.[B7], 5) = "GR632" Then
        s2.[B7] = s1.Cells(i, "B")
        s2.PrintOut
    Else
        s3.[B7] = s1.Cells(i, "B")
        s3.PrintOut
    End If
Next
End Sub
 
Katılım
14 Haziran 2006
Mesajlar
575
Altın Üyelik Bitiş Tarihi
10.04.2023
Sub yaz()
Set s1 = Sheets("Anasayfa")
Set s2 = Sheets("IGF")
Set s2 = Sheets("CEN")
son = s1.Cells(Rows.Count, "B").End(3).Row
For i = 3 To son
If Left(s1.Cells(i, "B"), 5) = "GR410" Or Left(s2.[B7], 5) = "GR633" Or Left(s2.[B7], 5) = "GR632" Then
s2.[B7] = s1.Cells(i, "B")
's2.PrintOut
Sayfa2.[A1:K37].PrintOut
Else
s3.[B7] = s1.Cells(i, "B")
's3.PrintOut
Sayfa3.[A1:K38].PrintOut
End If
Next
End Sub
Kodu bu şekilde yazdırma alanı bilirlediğimde Object reguired hatası veriyor
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,071
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Set s2 iki tane olmuş, CEN olanı s3 yapın. (Benim hatam :( )
 
Son düzenleme:
Katılım
14 Haziran 2006
Mesajlar
575
Altın Üyelik Bitiş Tarihi
10.04.2023
Emeğine sağlık güzel oldu
 
Üst