ซ่อน Page Header



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

05 มี.ค. 61 , 09:44:30
อ่าน 654 ครั้ง

Un

ซ่อน Page Header
« เมื่อ: 05 มี.ค. 61 , 09:44:30 »
ซ่อน Page Header ที่หน้าสุดท้าย โดย ใช้คำสั่ง เมื่อ Page = Pages
ให้ Page Header.Visible = False แต่มันไม่ได้ สังเกตุว่า เวลาพิมพ์ Page Header
มันไม่ขึ้นอัตโนมัติ เหมือนใช้คำว่า Section(?).Visible=False

คำถามมีอยู่ว่า มันคือ Section ที่เท่าไหร่ คือ Page Header
หรือมันมีวิธีอื่นที่ไม่ใช่ 2 แบบนี้ครับ

 

05 มี.ค. 61 , 10:45:56
ตอบกลับ #1

สันติสุข

> ซ่อน Page Header
« ตอบกลับ #1 เมื่อ: 05 มี.ค. 61 , 10:45:56 »
Sections("PageHeaderSection") หรือถ้าเป็นชื่ออื่นก็ใส่แทน PageHeaderSection ครับ
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

05 มี.ค. 61 , 15:20:21
ตอบกลับ #2

Un

> ซ่อน Page Header
« ตอบกลับ #2 เมื่อ: 05 มี.ค. 61 , 15:20:21 »
อ.สันติสุขครับ
ผมลองเอาไปใส่ใน Even On Current ปรากฏว่า ไม่มีไรเกิดขึ้นครับ

ลองใส่ ใน On load

Private Sub Report_Load()
        If Me.Page = Me.Pages Then
            Me.Sections("PageHeaderSection").Visible False  <<< Error บรรทัดนี้
        End If
End Sub

มัน Error ครับ

 

05 มี.ค. 61 , 15:36:57
ตอบกลับ #3

Un

> ซ่อน Page Header
« ตอบกลับ #3 เมื่อ: 05 มี.ค. 61 , 15:36:57 »
Private Sub Report_Load()
        If Me.Page = Me.Pages Then
            Me.Sections("PageHeaderSection").Visible False  <<< Error บรรทัดนี้
        End If
End Sub

ลองลบ Section ออกเหลือ

Private Sub Report_Load()
        If Me.Page = Me.Pages Then
            Me.Sections("PageHeader").Visible False
        End If
End Sub

ไม่ Error แต่ก็ไม่ซ่อน Page Header ที่หน้าสุดท้ายครับ

 

05 มี.ค. 61 , 16:25:15
ตอบกลับ #4

สันติสุข

> ซ่อน Page Header
« ตอบกลับ #4 เมื่อ: 05 มี.ค. 61 , 16:25:15 »
ใส่ใน On Format หรือ On Print event ของ Page Header Section ครับ
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: Un

06 มี.ค. 61 , 10:39:08
ตอบกลับ #5

Un

> ซ่อน Page Header
« ตอบกลับ #5 เมื่อ: 06 มี.ค. 61 , 10:39:08 »

มันไม่ซ่อนให้ครับ อาจารย์ มัน Error ตามรูปเลยครับ
 ผมลองตัด S ออก มันไม่ Error แต่ มันก็ไม่ซ่อน Page Header

 

06 มี.ค. 61 , 10:55:22
ตอบกลับ #6

TTT

> ซ่อน Page Header
« ตอบกลับ #6 เมื่อ: 06 มี.ค. 61 , 10:55:22 »
Me.Section ต้องไม่มี s ต่อท้าย ไม่ใช่หรือครับ ส่วนชื่อ PageHeaderSection ต้องเป็นชื่อของพื้นที่ ที่เราจะทำการซ่อน เช่นถ้าเราต้องการซ่อนพื้นที่ในส่วนของ Header ก็คล๊กที่พื้นที่ Header นั้น ในมุมมองออกแบบ แล้วดูที่ Property > Other > Name ว่าใช้ชื่อว่าอะไรก็ใส่ให้ตรงกับชื่อนั้น ส่วนการเทียบ Page = Pages เราจำเป็นต้องสร้าง Control Text Box ขึ้นมา โดย Control Source กำหนดเป็น [Pages] จะแสดงหรือไม่ก็ได้แต่ต้องมี เพื่อให้การนับหน้าทั้งหมดทำงาน เราถึงจะเทียบค่ากับหน้าปัจจุบันได้จริง ประมาณนี้ครับ
« แก้ไขครั้งสุดท้าย: 06 มี.ค. 61 , 10:57:04 โดย TTT »
ฐานข้อมูลเป็นเรื่องใกล้ตัว ใครๆก็ทำฐานข้อมูลเองได้นะครับhttp://www.youtube.com/c/AccessCreator link
 
โพสต์นี้ได้รับคำขอบคุณจาก: Un

06 มี.ค. 61 , 11:08:57
ตอบกลับ #7

ปิ่นณรงค์

> ซ่อน Page Header
« ตอบกลับ #7 เมื่อ: 06 มี.ค. 61 , 11:08:57 »
ใช้แบบนี้ดูครับซ่อน เลขหน้า หน้าสุดท้าย

Private Sub Report_Load()
If Me.Page = Me.Pages Then
Me.Section(acPageHeader).Visible = False
End If
End Sub

:love: :grin:
 

06 มี.ค. 61 , 13:56:14
ตอบกลับ #8

Un

> > ซ่อน Page Header
« ตอบกลับ #8 เมื่อ: 06 มี.ค. 61 , 13:56:14 »
ใช้แบบนี้ดูครับซ่อน เลขหน้า หน้าสุดท้าย

Private Sub Report_Load()
If Me.Page = Me.Pages Then
Me.Section(acPageHeader).Visible = False
End If
End Sub

ก็ยังไม่ได้ครับ

Me.Section ต้องไม่มี s ต่อท้าย ไม่ใช่หรือครับ ส่วนชื่อ PageHeaderSection ต้องเป็นชื่อของพื้นที่ ที่เราจะทำการซ่อน เช่นถ้าเราต้องการซ่อนพื้นที่ในส่วนของ Header ก็คล๊กที่พื้นที่ Header นั้น ในมุมมองออกแบบ แล้วดูที่ Property > Other > Name ว่าใช้ชื่อว่าอะไรก็ใส่ให้ตรงกับชื่อนั้น ส่วนการเทียบ Page = Pages เราจำเป็นต้องสร้าง Control Text Box ขึ้นมา โดย Control Source กำหนดเป็น [Pages] จะแสดงหรือไม่ก็ได้แต่ต้องมี เพื่อให้การนับหน้าทั้งหมดทำงาน เราถึงจะเทียบค่ากับหน้าปัจจุบันได้จริง ประมาณนี้ครับ
คำตอบนี้ ทำให้ผมเข้าใจเพิ่มว่า แต่ละ Section เปลี่ยนชื่อได้ และเอาจุดนี้ไปอ้างอิง
ที่สร้าง Control Text Box ขึ้นมา ผมลองทำแล้ว มัน Error ที่บรรทัด ที่อ้างคอนโทลเลยครับ
ผมลองเอา Control Text Box  ไปไว้ในส่วนต่างๆ ทัง Detail , ReportHeader และ PageHeader มันก็ยัง Error
ลองเปลี่ยน Event ดู ที่ On Load ยัง Error เหมือนเดิม ไปไว้ที่ On Format ไม่ Error แต่ ไม่มีผลอะไรเกิดขึ้นครับ

 

06 มี.ค. 61 , 15:15:41
ตอบกลับ #9

ปิ่นณรงค์

> ซ่อน Page Header
« ตอบกลับ #9 เมื่อ: 06 มี.ค. 61 , 15:15:41 »
ผมลองใช้
ที่ ControlTextBox ใส่
โค๊ด: [Select]
="Page " & [Page] & " of " & [Pages]
ที่ตัวรายงานใส่
โค๊ด: [Select]
Private Sub PageHeaderSection_Format(Cancel As Integer, FormatCount As Integer)
Cancel = Me.Page = Me.Pages
End Sub







มันได้ผลครับพี่ลอง Print แล้วเลขหน้าติดมา เว้นแต่หน้าสุดท้ายที่ไม่มีเลขหน้า
« แก้ไขครั้งสุดท้าย: 06 มี.ค. 61 , 15:35:29 โดย Newbies »
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: Un

06 มี.ค. 61 , 16:20:28
ตอบกลับ #10

Un

> ซ่อน Page Header
« ตอบกลับ #10 เมื่อ: 06 มี.ค. 61 , 16:20:28 »
Private Sub PageHeaderSection_Format(Cancel As Integer, FormatCount As Integer)
      Cancel = Me.Page = Me.Pages
End Sub

อันนี้เจ๋งครับ อาจารย์ Newbies ขอบพระคุณมากครับ คำสั่งนี้ ผมเอาไปประยุกต์ได้อีกเยอะเลย

 


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