Page 1 of 1

ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Sun Aug 09, 2015 3:32 pm
by nilathxay
อยากสอบถามว่า ใน access มีวิธี ปรับให้ ตาราง ข้อมูลในตาลางขึ้นไป เป็นหัวข้อ ใน Report ได้ไหมครับ


ตัวอย่าง

ใน form "tracking" ผมจะสร้างการลง course ลงเป็นแถว ก่อเพาะถ้ามีมากกว่า หลื จะเพี่ม ผมก่อจะให้เพี่มที่ form course

แต่เวลาโชใน report ผมต้องการให้ course ทังหมด ขื้นไปเป็น field ปะมานนี้ครับ

Form tracking:

Emp ID: 1001
Full Name: Mr. Anan Phontisan
Title: HR Manager

Sub Form:
Date train Course Code Status
10-Jan-15 ODSD01 C
07-Aug-15 ODSD02 NYA
15-Oct-14 ODSD03 ExP

-----------------------------------------------

show report:
Emp ID | Full Name | Title | Site| Department | Sub Department | ODSD01 | ODSD02 | ODSD03
1001 Mr. Anan Phontisan HR Manager PKM HR & Training HR & Training C NYA ExP




ึึ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 1:39 pm
by bank9597
เท่าที่อ่าน สามารถทำได้น่ะครับ แต่ผมอยากได้ไฟล์ตัวอย่างมาดูด้วยครับ พร้อมทั้งวาดภาพ Report ที่ต้องการมาดูหน่อยครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 4:32 pm
by nilathxay
bank9597 wrote:เท่าที่อ่าน สามารถทำได้น่ะครับ แต่ผมอยากได้ไฟล์ตัวอย่างมาดูด้วยครับ พร้อมทั้งวาดภาพ Report ที่ต้องการมาดูหน่อยครับ
ไฟล์ตัวอย่าง และ รูปReport ที่ต้องการ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 5:04 pm
by bank9597
ภาพที่แนบมาเล็กมากเลยครับ รบกวนแนบแต่ภาพ(ใหญ่)มาอีกครั้งครับ

เท่าที่ดูจากที่คุณออกแบบไว้ น่าจะเป็น Group Header ครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 7:55 pm
by nilathxay
bank9597 wrote:ภาพที่แนบมาเล็กมากเลยครับ รบกวนแนบแต่ภาพ(ใหญ่)มาอีกครั้งครับ

เท่าที่ดูจากที่คุณออกแบบไว้ น่าจะเป็น Group Header ครับ
ให้ course ไปเป็น Header แล้วให้ status มาโชอในตาลาง

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 8:33 pm
by snasui
:D เข้าใจว่าต้องการทำ Crosstab Report ลองศึกษาเพิ่มเติมจาก Link เหล่านี้ครับ Crosstab Report

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 8:53 pm
by bank9597
ผมเห็นภาพรายงานชัดเจนแล้วครับ รายงานลักษณะนั้นผมคิดว่าทำไม่ได้ครับ (ไม่เคยทำ) เนื่องจากเป็นการจัดรูปแบบตามยาว ซึ่งรายงานที่ทำด้วย Access นั้น ส่วนของเนื้อหานั้นจะต้องขยายลงล่างไม่ใช่ออกด้านข้าง เว้นแต่จะมีจำนวนคอลัมน์ที่ชัดเจนก็จะสามารถทำได้ครับ

เท่าที่ทราบ รายงานลักษณะนั้นต้องทำด้วย Excel ครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Mon Aug 10, 2015 9:23 pm
by snasui
:D สามารถนำ Crosstab Query ไปทำ Crosstab Report ได้ครับ ตัวอย่าง :arrow: http://www.fmsinc.com/MicrosoftAccess/q ... index.html

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Tue Aug 11, 2015 9:42 am
by nilathxay
snasui wrote::D สามารถนำ Crosstab Query ไปทำ Crosstab Report ได้ครับ ตัวอย่าง :arrow: http://www.fmsinc.com/MicrosoftAccess/q ... index.html
ผมลองในรูบปแบบ Crosstab แล้ว มัน แต่ว่าผมต้องการ ให้ table status show "C, NYA, ExP" ไม้ต้องการออกเป็นตัวเลบ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Tue Aug 11, 2015 12:58 pm
by snasui
:D ก็ต้องประยุกต์มาใช้งานครับ สำหรับ Link ที่ให้ไปนั้นใช้ดูเป็นตัวอย่างเท่านั้นครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Wed Aug 12, 2015 9:07 am
by nilathxay
ผมดืงข้อมูล course ขื้นไปเป็น Column Heading ได้แล้ว

ขอคำแนะนำเพี่มเตีม ในกานใช้สูตร ดืง status ขื้นมาโชว์ของแต่ละ course (โดยเอาข้อมูลล่าสุด)

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Wed Aug 12, 2015 9:50 am
by snasui
:D ตัวอย่างตามภาพครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Wed Aug 12, 2015 3:33 pm
by nilathxay
:cp: :cp: ได้แล้วครับ

ถ้าผมต้องการให้ วันทีขื้นไป Date Train ไปโชว์ข้าง status จะได้ไหมครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Wed Aug 12, 2015 4:45 pm
by snasui
:shock: Value ใน Query แบบ Crosstab สามารถโชว์ได้ค่าเดียวเท่านั้น การจะให้แสดงด้วยกันจำเป็นต้องใช้การประยุกต์ เช่นเชื่อมข้อความเข้าด้วยกันเข้ามาช่วย

ยกตัวอย่างการปรับสูตรเป็นตามด้านล่าง เมื่อได้ผลลัพธ์แล้วให้ขยายความสูงของบรรทัดก็จะเห็นวันที่แสดงอยู่ด้านบน

Code: Select all

a_status_show: IIf([a_status]=1,Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "C",IIf([a_status]=2,Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "NYC",Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "ExP"))
การจะปรับให้อยู่ด้านหน้าหรือด้านหลังก็ย่อมทำได้ ลองปรับเองตามแบบที่ต้องการครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Thu Aug 13, 2015 2:36 pm
by nilathxay
snasui wrote::shock: Value ใน Query แบบ Crosstab สามารถโชว์ได้ค่าเดียวเท่านั้น การจะให้แสดงด้วยกันจำเป็นต้องใช้การประยุกต์ เช่นเชื่อมข้อความเข้าด้วยกันเข้ามาช่วย

ยกตัวอย่างการปรับสูตรเป็นตามด้านล่าง เมื่อได้ผลลัพธ์แล้วให้ขยายความสูงของบรรทัดก็จะเห็นวันที่แสดงอยู่ด้านบน

Code: Select all

a_status_show: IIf([a_status]=1,Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "C",IIf([a_status]=2,Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "NYC",Format([a_datetrain],"dd/mm/yyyy") & Chr(13) & Chr(10) & "ExP"))
การจะปรับให้อยู่ด้านหน้าหรือด้านหลังก็ย่อมทำได้ ลองปรับเองตามแบบที่ต้องการครับ

ขอบคุณมากครับ อาจารย์

ขอถามอีกครับว่า Chr(10) Chr(13) หมายถึงอะไรครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Thu Aug 13, 2015 2:36 pm
by snasui
:D หมายถึงขึ้นบรรทัดใหม่ครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Thu Aug 13, 2015 7:41 pm
by nilathxay
ได้แล้วครับ ผมเชื่อมข้อความเข้าด้วยกัน ตามที่ อจ แนะนำ

แต่จะติดเวลาทำ report ถ้าผมต้องกานให้ status เปลี่ยนสีตัวอักษรตามเงื่อนไข

โดยให้ C สีเขียว NYC สีแดง ExP ดำ แต่จะติดที่ว่า ในตาลางเดียวกันจะมี date status อยู่นำกัน

ขอแนะนำอีกครับ :D :D

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Thu Aug 13, 2015 8:18 pm
by snasui
:D การเปลี่ยนสีตัวอักษรเพียงบางอักขระคงต้องพึ่ง VBA ลองเขียนมาเองก่อน ติดตรงไหนแล้วค่อยถามกันต่อครับ

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Fri Aug 14, 2015 1:20 pm
by nilathxay
snasui wrote::D การเปลี่ยนสีตัวอักษรเพียงบางอักขระคงต้องพึ่ง VBA ลองเขียนมาเองก่อน ติดตรงไหนแล้วค่อยถามกันต่อครับ
VBA ยังไม้รู้เท่าไราเลียครับอาจารย์

ขอแหล่งศึกษาค้นคว้า ด้วยครับ :) :) :)

Re: ดืงข้อมูลในตาลางขึ้นไป เป็นหัวข้อ

Posted: Fri Aug 14, 2015 2:22 pm
by snasui
:D ผมไม่มี Link ที่เป็นการเฉพาะเรื่อง จะมีก็แต่ Link นี้ครับ https://msdn.microsoft.com/en-us/librar ... 79695.aspx