Rapor Alırken Veri Uzunluğuna Göre Sütun Genişletmek

Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
Arkadaşlar bir rapor hazırladım. Bu raporum 5 sütun dan oluşmaktadır. satırların içerisindeki metin karakteri kiminde 5-10 karekterden kiminde ise 300- 350 karekterden oluşuyor. Dolayısıyla metnin tamamını görmek için metin kutusunun özelliklerinden (Büyüyebilir = Evet
Küçülübilir = Evet) ayarlarını girdim. Metin kutusu metnin boyutuna göre açılıyor fakat benim istediğim kenarlık çizgilerinin aynı hizada açılması. yani grup halinde açılması. Aynı Exceldeki gibi hani metni kaydır diyoruz da metin açılırken satırıda o kadar açılıyor.

Edit xxrt:"RAPOR İLE İLGİLİ SORUNUM VAR YARDIM LÜTFEN" Soru Başlığınız " Rapor Alırken Veri Uzunluğuna Göre Sütun Genişletmek" Olarak değiştirildi.

Forum Kurallarına uymayan Bölümde bir başlığınız bulunmaktadır.

Lütfen Burayı Okuyunuz.
 
Katılım
5 Eylül 2004
Mesajlar
571
Excel Vers. ve Dili
Excel 2003 SP1 Ingilizce
Mrb :hey:

Bir zamanlar bende bunun için çok uğraşmıştım.Sonunda aşağıdaki kodlarla çözüldü sorunum.

Aşağıdaki kodları bir modüle kopyalayın.
Kod:
Option Compare Database

'

' Name: MakeBoxesGrow
' Author:   Dave Healey - (based on function from Microsoft Online Support)
' Date:     11/04/1998
' Description:  Places a rectangle around each control in the Detail section of a report.
'               Simulates a table in which row height can vary.
' Variables:
'   ThisReport: Report object to format
' Queries:  None
' Returns:  Nothing
' Notes:
'

Public Sub MakeBoxesGrow(ThisReport As Report)
    Dim X1 As Single
    Dim X2 As Single
    Dim Y1 As Single
    Dim Y2 As Single
    Dim Offset As Single
    Dim Color As Long
    Dim ThisControl As Control
    Dim MaxHeight As Single
    
    ' Determine the maximum height of all of the controls
    For Each ThisControl In ThisReport.Section(acDetail).Controls
        If ThisControl.Visible = True Then
            If ThisControl.Height > MaxHeight Then
                MaxHeight = ThisControl.Height
            End If
        End If
    Next ThisControl
     
    ' Specify unit of measurement for coordinates on a page...
    ThisReport.ScaleMode = 1 ' ...in twips (1440 twips = 1 inch).

    ' Define no offset so that the rectancles overlap and give a tabular appearance
    Offset = 0
    ThisReport.DrawWidth = 3        ' Width of the line (in pixels).
    Color = RGB(0, 0, 0)    ' Use black line color.

    ' Now set all of the controls to MaxHeight
    For Each ThisControl In ThisReport.Section(acDetail).Controls
        If ThisControl.Visible = True Then
            ' X and Y coordinates for the top left corner of the box.
            X1 = ThisControl.Left - Offset
            Y1 = ThisControl.Top - Offset
            
            ' X and Y coordinates for the bottom right corner of the box.
            X2 = ThisControl.Left + ThisControl.Width + Offset
            Y2 = ThisControl.Top + MaxHeight + Offset
            
            ' Draw the rectangle with the Line method.
            ThisReport.Line (X1, Y1)-(X2, Y2), Color, B
        End If
    Next ThisControl
    
    Set ThisControl = Nothing
End Sub
Raporunuza da aşağıdaki kodu ekleyin.

Kod:
Option Compare Database

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    MakeBoxesGrow Me
End Sub
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
dosyayı gönderiyorum

selam. ben gene rahatsız ediyorum ama. kusura bakmayın.
benim için örnek olacak bir dosya oluşturdum. asıl dosyamı gönderemedim. fakat ekte ki dosya üzerinde de yaparsanız sanırım anlarım. şimdiden çok teşekkür ederim.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
çok sağolun

size nekadar teşekkür etsem azdır. beni büyük bir dertten kurtardınız.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
inanırmısınız bende sizden gelen cevapla hemen hemen aynı şeyleri yapmışım ama asıl çalıştığım dosyada bu olmadı. acaba alt form eklemem den mi kaynaklanıyor. tekrar çok çok teşekkür ederim.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
selam Jale hanım vt1.mbd dosyası üzerinde yaparsanız çok sevinirim. şimdiden teşekkür ederim.
 
Katılım
5 Eylül 2004
Mesajlar
571
Excel Vers. ve Dili
Excel 2003 SP1 Ingilizce
Herhalde bugün ben kafayı yedim.
Zaten sizin göndediğini vt1 dosyasında yapmıştım ve sizde tşk etmiştiniz yaaaaa...
Þimdi ne oldu?.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
jale hanım kenarlık çizgileri tamam oldu. şimdiki sorunda başta kalan sütünün metnini de ortalamak. bunu ancak manuel olarak sabit ölçü kullanarak yapabildim bu da istediğime cevap vermiyor. bunu otomatik hale getirebilirmiyiz?
 
Katılım
26 Mayıs 2005
Mesajlar
122
Excel Vers. ve Dili
excel 2003- ingilizce
Slm

Ben Jale Hanım değilim ama :p
Baştaki sütunu seçip properties-Format-Text Align-center deseniz olmaz mı?
 
Üst