แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - MiKu

หน้า: [1] 2
1
แก้โค้ดจาก Query อันเดิม เป็นแบบนี้ดูนะครับ
สาเหตุเกิดจากข้อจำกัดของข้อมูล มันจะแสดงแค่ 255 เท่านั้น
ใน Memo Field นั้นสามารถบรรจุได้ถึง 64,000 characters
วิธีที่จะให้คิวรี่แสดงข้อมูลของ Memo field คือการใช้ First ที่ Field ที่เป็น Memo แทน Group By ครับ


โค๊ด: [Select]
SELECT Table1.N1, First(Table1.[รายละเอียด]) AS ส่วนรายละเอียด
FROM Table1
GROUP BY Table1.N1;

โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

2
หนูมี textรายละเอียด เก็บขู้ลแบบ Long Text ข้อมูลนี้มีข้อความยาวมาก พอนำไปทำ qurey ตอนยังไม่ Group By ข้อความมาปกติ พอ Group By ข้อความถูกตัดหายไป พอจะมีธีแก้ไขหรือป่าวค่ะ
คือ หนูจำเป็นต้อง Group By query ไว้ คะ
ทำไฟล์ตัวอย่างคร่าวๆมาได้ไหม
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

3
อ้างถึง
พอเอาไปคิด not in โปรแกรม ก็จะไม่โชวราคา 30 20 40 ออกมา (หนูเข้าใจถูกหรือป่าวค่ะ)

เข้าใจถูกแล้วครับ ในส่วนคิวรี่ ที่ 2 นั้น ค่าที่ได้มาจะไม่รวม กับ ราคาหลังสุด(คิวรี่ที่ 1)

พอเราได้ คิวรี่  1 กับ 2 แล้ว
ก็ใช้ การ Join Query ในส่วนของ ID เพื่อจะได้ข้อมูลมาต่อกันคือ(คิวรี่ที่3)
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

4
ได้ครับ :cool: :cool:
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

5
สามารถ รีโมท Anydesk ไปเช็คได้ไหม
ผมส่ง ID LINE ไปทางข้อความนะครับ


ถ้าวิธีนี้ไม่เวิค หรือช้าเกินไป อาจจะหาวิธีอื่นๆ ที่ดีกว่าต่อไปแต่ขอไปเทสก่อน
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

6
Join table มักเจอปัญหาแบบนี้ครับ ความช้ามาเยือนทันที
มั่นใจใช่ไหมครับว่า ทำตามขั้นตอนแล้วช้า
ข้อมูลสินค้าเยอะขนาดไหนครับ ประมาณกี่เรคคอร์ดได้

โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

7
Ex
รหัสสินค้า          ราคา
  A                    5          บาท
  A                    10        บาท
  A                    15        บาท
อยากให้ query แสดง (ใน query มีแต่ first กับ Last)
รหัสสินค้า          ราคารวมทั้งหมด        ราคาก่อนหน้า     ราคาหลังสุด
  A                        30                      10                  15       


อาจจะมีวิธีดีกว่านี้นะครับ
เท่าที่คิดวิธีได้ก็แบบนี้ คือ หา Last แล้วเอาไปเก็บไว้ แล้วหา Last อีกครั้ง (ใช้ 3 คิวรี่เลย)
1.เมื่อเราสร้างคิวรี่ ได้ Last คือตัวสุดท้ายของ รหัสนั้นมาแล้ว
2.สร้างคิวรี่ใหม่เข้ามาอีกแล้วกำหนดให้ แสดงข้อมูลโดยไม่ให้นำ Last จากข้อ 1 มาแสดง ใช้โค้ด ตรง Criteria ว่า
Not In (select ราคาหลังสุด from [Queryราคาหลังสุด])
เราก็จะได้ราคา ที่เหลืออันอื่นๆ โดยเว้น Last ข้อ 1 ครับ
3.เมื่อได้ข้อ 2 มาแล้วสั่ง Last อีกครั่ง เพื่อหา Last เพิ่มอีกตัว
4.นำมา Join Table กันเพื่อแสดงข้อมูลที่ได้ทั้งหมดครับ


โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

8
ตรงช่อง google search แว่นขยายด้านบนลองใส่คำว่า print form มีหลายๆ ตัวอย่างเลยครับ
ทำได้ครับ form filter to print (ใช้คำค้นนี้ก็ได้ครับ) ลองค้นและอ่านๆ ดูว่าคำถามไหนคล้ายของเรา
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

9
>ถ้าให้ qurey ออกเลขรอคำแนะนำจากท่านอื่นนะครับ
>บนหน้าฟอร์มใช้ชุดคำสั่งออกเลข(เลขที่ออกฝังตัวบันทึกลงตาราง)ลองดูกระทู้นี้ครับ https://www.thai-access.com/index.php?topic=1181.msg5215#msg5215
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

10
วิธีทำให้ qurey ใส่หมายเลขเรียงอัตโนมัติลองดูกระทู้นี้ครับ https://www.thai-access.com/index.php?topic=1434.msg6261#msg6261
ว่าแต่อันไหนคือชนิดของพัสดุที่จะนำมาเรียงครับนี่ :question:

หรือว่าจะให้ qurey ออกเลขแยกตามหน่วยงานที่เบิกครับ เช่น คลังเบิกครั้งที่1,2,3,... ช่างเบิกก็นับแยกครั้งที่1,2,3,...
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

11
ไม่รู้ว่าแบบนี้หรือเปล่านะครับ
ถ้าเป็นการอ้างอิงวันที่ไปใส่ ลองวิธีนี้ดูครับ


ผมสมมุติ textbox ชื่อตามในรูปนะครับ
โค๊ด: [Select]
Private Sub DtDateBorrow1_AfterUpdate()
If Not IsNull(Me.DtDateBorrow1) Then
Me.DtDateBorrowBack = Me.DtDateBorrow1
Me.DtDateBorrowOut = Me.DtDateBorrow1
End If
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

12
ลองสร้างคิวรี่แล้ว Run SQL นี้ดูคับ
โค๊ด: [Select]
SELECT Format([วันที่],"mmm") AS เดือน
FROM Table1
ORDER BY Month([วันที่]);
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

13
ในคิวรี่นั้นลองเพิ่มเป็น 2 คอลัมน์ดูครับ
คอลัมน์ 1 ใช้ฟังก์ชัน format ที่คุณทำ
คอลัมน์ 2 เลือกฟิลด์วันที่มาวาง แล้วก็เรียงลำดับจากน้อยไปหามากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

14
ไม่เคยเจอเหมือนกัน คิดว่าอาจต้องสร้างไฟล์ MS Access เปล่าๆ ขึ้นมาใหม่ แล้วใช้การ Import ทุกอย่างจากไฟล์เดิมเข้ามา โปรแกรมมันจะปรับการจัดเรียงตาราง Relationships ให้ใหม่ ไม่รู้ว่ากรณีนี้จะหายไม๊ เป็นอีกวิธีให้ลองดูแล้วกันครับ
(น่าจะคล้ายการ Clear Layout ที่ อ.สันติสุข บอก 'ลืมดูว่า อาจารย์ตอบไปแล้ว')
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

15
ลองดูวิธีนี้ แต่ไม่แน่ใจว่าจะได้กับกรณีตารางหลุดนอกจอหรือเปล่านะครับ ให้คลิกที่ตารางอะไรก็ได้ในวินโดว์ Relationships แล้วกดปุ่ม TAB หรือ SHIFT-TAB เพื่อไปตารางถัดไปหรือก่อนหน้า ก็กดไปจนกว่าจะเจอตารางที่หลุดจากจอ แล้วก็ค่อยเอาเมาส์เลื่อนมันกลับเข้าไปอีกที

หรืออีกวิธีคือ คลิก Clear Layout ก็จะลบไดอะแกรมออกไป (ไม่ได้ลบ Relationship) แล้วคลิก All Relationships อีกที ทุกๆความสัมพันธ์ที่มีอยู่แล้วก็จะแสดงออกมาเป็นไดอะแกรมแบบทื่อๆ ซึ่งเราต้องมาจัดเรียงตำแหน่งทั้งหมดอีกที
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

16
ลองศีกษาฟังชั่น DateDiff() ดูครับ สิ่งที่จะได้คือเวลาที่สาย
จากนั้นใช้คำสั่ง If เพื่อใช้คัดกรองผู้ที่มาสาย = 1

ลองเพิ่มรูปแบบคำสั่งนี้เข้าไปใน Query ดูครับ LateChk: IIf(DateDiff("n",[StrtWrk],"08:00")<0,"1","")





ขอขอบคุณความรู้เกี่ยวกับ MS-Access จาก อ. สุภาพ ไชยา
ก็ฝากไว้เผื่อจะสามารถช่วยให้มิตรรักแฟนเพลงท่านหนึ่งท่านใด ก้าวพ้นปัญหาที่กำลังแก้อยู่ได้เร็วขึ้น
โพสต์นี้ได้รับคำขอบคุณจาก: MiKu

หน้า: [1] 2