textbox ใน report สามารถย่อขยายตามแนวยาว ไม่ใช่ขึ้นบรรทัดใหม่ได้ไหมค่ะ



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

21 เม.ย. 64 , 10:39:04
อ่าน 214 ครั้ง

MiKu

หนูทำรายงานโดย จะนำข้อความมาต่อกัน เพื่อจะทำตัวหนาตรงชื่อ
  label    textboxตัวหนา     label
[ข้าพเจ้า]    [นางสาวA]     [ทำอาชีพ]

 ***ส่วนชื่อบางทีชื่อมีความยาวไม่เท่ากัน ทำให้ตัวอักษรหาย
 ถ้าปรับ can Grow จะขึ้นบรรทัดใหม่แทน

 

23 เม.ย. 64 , 08:23:40
ตอบกลับ #1

PNR


ลองดูตัวอย่างนี้นะครับ ไม่รู้จะเวิคไหมนะ
โค๊ดจะแสดงผล ในมุมมอง Print Preview หรือ มุมมองเหมือนพิมพ์นะครับ
โค๊ดจะอยู่ใน Event Report Detail นะครับ

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) 'ตรง รายละเอียด ถ้าเป็นภาษาอังกฤษให้เปลี่ยนเป็น Detail_Print แทนรายละเอียด
Dim ctl As Control, strText As Variant, strName As String
    Me.ScaleMode = 1
    For Each ctl In Me.Detail.Controls 'ตรง รายละเอียด ถ้าเป็นภาษาอังกฤษให้เปลี่ยนเป็น Me.Detail แทนรายละเอียด
        If ctl.ControlType = acTextBox Then
        If ctl.Name = "CustomerName" Then 'สีแดงคือชื่อ textbox ที่ต้องการปรับขนาดข้อความ
       
        strName = ctl.Name
            If Nz(ctl.Tag, "") = "" Then
                ctl.Tag = ctl.FontSize
            End If
            ctl.FontSize = ctl.Tag
            Me.FontSize = ctl.FontSize
            strText = ctl.Value
           If Len(strText) > 0 Then
            Do Until TextWidth(strText) < ctl.Width
                ctl.FontSize = ctl.FontSize - 1
                Me.FontSize = ctl.FontSize
            Loop
            Do Until TextHeight(strText) < ctl.Height - (ctl.Height * 0.26)
                ctl.FontSize = ctl.FontSize - 1
                Me.FontSize = ctl.FontSize
            Loop
        End If
        End If
       End If
    Next ctl

End Sub
« แก้ไขครั้งสุดท้าย: 23 เม.ย. 64 , 08:31:29 โดย PNR »
Time to stop for me  :dizzy:
 
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

23 เม.ย. 64 , 13:33:55
ตอบกลับ #2

MiKu

ขอบคุณมากๆเรยค่ะ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย