• DİKKAT

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

Yazdırma alanı belirlemeden son satırı öğrenebilir miyim ?

  • Konbuyu başlatan Konbuyu başlatan ongbey
  • Başlangıç tarihi Başlangıç tarihi
Katılım
29 Aralık 2004
Mesajlar
82
Merhabalar

Ben Excel'de Yazdırma alanı belirlemek istemiyorum. Fakat mevcut durumda 1. sayfaya kaç satır sığdığını bilmek istiyorum. Başka bir deyişle PRINT komutu verildiğinde 1. sayfanın sonunda hangi satır yer alacak, ve 2. sayfanın başında hangi satır yer alacak bilmek istiyorum.
Mümkün müdür acaba? Forumu aradım ama herkes Yazdırma alanı tanımlayarak işlem yapıyor, bunun şart olmadığını düşünüyorum. Yardımcı olursanız sevinirim.

Ongbey
 
Sanıyorum sorunumu ben anlatamadım

Baskı önizleme bizler için yani insana hitap ediyor. Ben ise 1. sayfanın son satırını öğrenerek onu makromda kullanmak istemekteyim. Yani bana sayısal veri lazım.
 
Selam,
Sayın Ongbey,
aşağıdaki kodu inceler misiniz?
A sütunundaki en son dolu satırın no.sunu vermektedir.
Kod:
=BÜYÜK(EĞER($A$1:$A$65535<>"";SATIR($A$1:$A$65535));1)
Dizi formülüdür.
CTRL+SHIFT+ENTER ile birlikte uygulayınız.
 
Teşekkürler fakat

Öncelikle cevabınız için teşekkürler.
Formülünüzü uygulamadım, fakat formül A sütunundaki dolu satır sayısını veriyor. Yani formülünüz en soyfadaki en son satırı veriyor. Benim ise ihtiyacım PRINT komutu verildiğinde birinci sayfada en son hangi satırın yer alacağıdır.
Benim istediğim şekilde bir çözümünüz var mıdır ?
 
Acaba bende mi sorun var ?

Sayın Menteşoğlu

Verdiğiniz linlere giderek oraki kodları kopyalayıp, yeni açtığım bir excel dosyasının yeni açtığım bir modülüne kopyalayarak çalıştırdım ve aşağıdaki sonuçları aldım :

Sub satırsay()
For i = 2 To Worksheets.Count
Cells(i, 1) = Sheets(i).Range("a65536").End(3).Row
Next
End Sub

Yukarıdaki kod 1. sayfaya A2 ve A3 ' ye "1" yazıp bitiriyor.


Sub sayfasayisi()
Application.ScreenUpdating = False
ActiveWindow.View = 2
say = ActiveSheet.HPageBreaks.Count
For A = 1 To say
sat = ActiveSheet.HPageBreaks.Item(A).Location.Row - 1
toplam = sat - ilk
ilk = sat
yaz = yaz & isaret & A & ".sayfa " & toplam & " satırdır."
isaret = Chr(10)
Next
If [A65536].End(3).Row > sat Then
MsgBox yaz & Chr(10) & say + 1 & ".sayfa " & [A65536].End(3).Row - sat & " satırdır."
Else
MsgBox yaz
End If
ActiveWindow.View = 1
End Sub

Yukarıdaki kod ise 1. sayfa 1 satırdır diye bir mesaj veriyor. (Oysa ki 1. sayfa 56 adet boş satırdan oluşuyordu)


ActiveSheet.HPageBreaks.Item(1).Location.Row - 1 Kodu ise "Subscript out of range" hatası veriyor


Sub test()
For i = 1 To [A65536].End(3).Row
If Worksheets(1).HPageBreaks(1).Location <> 0 Then
MsgBox Worksheets(1).HPageBreaks(1).Location - 1
Exit For
End If
Next i
End Sub

Yuakrıdaki kod da "Subscript out of range" hatası veriyor.


ActiveSheet.HPageBreaks.Item(1).Location.Row-1
Kodu da aynı "Subscript out of range" hatası veriyor.

Yanlış yaptığım birşey mi var acaba ? Bu kodları modülden alıp Sayfa alanlarına yazsam bile sonuç değişmiyor.
 
Geri
Üst