ขอสอบถามเกี่ยวกับ Report ใน Access ตรวจสอบไฟล์รูปภาพว่ามีหรือไม่มีใน Drive



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

20 ก.ย. 62 , 15:02:06
อ่าน 293 ครั้ง

mtaccess

ขอสอบถามเกี่ยวกับ Report ใน Access ตรวจสอบข้อมูลพนักงานว่ามีไฟล์รูปถ่ายใน Drive ที่เก็บไว้จริงหรือไม่ ถ้ามีรูปให้แสดงข้อความว่า 'มี' ถ้าไม่พบรูปใน Drive ที่เก็บรูปให้แสดงว่า 'ไม่มี' รบกวนแนะนำด้วยค่ะ พร้อมกันนี้ได้แนบไฟล์ตัวอย่างที่ทำไว้มาด้วยค่ะ

ไฟล์รูปพนักงานจะทำการบันทึกเป็นชื่อรหัสพนักงานตามตัวอย่างไฟล์ที่แนบมาค่ะ

 

21 ก.ย. 62 , 15:34:30
ตอบกลับ #1

สันติสุข

- อย่างแรก ในเทเบิลต้องมีฟิลด์ที่เก็บว่าไฟล์รูปของเรคอร์ดนั้นอยู่ที่ไหน สมมุติชื่อฟิลด์ว่า FilePath
- ใส่นิพจน์ไว้ใน Control Source property ของเท็กซ์บ็อกซ์ [มี/ไม่มีรูปถ่าย] เป็น

= IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")  <=== เครื่องหมายเท่ากับที่ด้านหน้า ต้องมีใส่ไว้ด้วย

หมายเหตุ เพื่อลดปัญหาที่อาจเกิดขึ้นได้ เราไม่ควรสร้างชื่อของอะไรก็ตาม เป็นภาษาอื่นนอกจากภาษาอังกฤษ และไม่ควรมีช่องว่างหรืออักขระพิเศษต่างๆในชื่อเช่นกัน
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

23 ก.ย. 62 , 10:00:17
ตอบกลับ #2

mtaccess

- อย่างแรก ในเทเบิลต้องมีฟิลด์ที่เก็บว่าไฟล์รูปของเรคอร์ดนั้นอยู่ที่ไหน สมมุติชื่อฟิลด์ว่า FilePath
- ใส่นิพจน์ไว้ใน Control Source property ของเท็กซ์บ็อกซ์ [มี/ไม่มีรูปถ่าย] เป็น

= IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")  <=== เครื่องหมายเท่ากับที่ด้านหน้า ต้องมีใส่ไว้ด้วย

หมายเหตุ เพื่อลดปัญหาที่อาจเกิดขึ้นได้ เราไม่ควรสร้างชื่อของอะไรก็ตาม เป็นภาษาอื่นนอกจากภาษาอังกฤษ และไม่ควรมีช่องว่างหรืออักขระพิเศษต่างๆในชื่อเช่นกัน



ลองทำตามวิธีแล้วติดให้ใส่ Dir กับ Me ค่ะ ตามไฟล์ที่แนบมา รบกวนแนะนำด้วยค่ะ ขอบคุณค่ะ






 

23 ก.ย. 62 , 12:37:38
ตอบกลับ #3

สันติสุข

เอาใหม่ ผมบอกผิดไป

- อย่างแรก ในเทเบิลต้องมีฟิลด์ที่เก็บว่าไฟล์รูปของเรคอร์ดนั้นอยู่ที่ไหน สมมุติชื่อฟิลด์ว่า FilePath
- วางฟิลด์ FilePath ลงใน Detail section และกำหนด Visible property เป็น No
- Control Source ของ [มี/ไม่มีรูปถ่าย] ให้เว้นว่างไว้
- ใส่โค้ดข้างล่างนี้ไว้ใน Format event ของ Detail section

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
        Me.[มี/ไม่มีรูปถ่าย] = IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")
End Sub
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

23 ก.ย. 62 , 13:10:16
ตอบกลับ #4

mtaccess

เอาใหม่ ผมบอกผิดไป

- อย่างแรก ในเทเบิลต้องมีฟิลด์ที่เก็บว่าไฟล์รูปของเรคอร์ดนั้นอยู่ที่ไหน สมมุติชื่อฟิลด์ว่า FilePath
- วางฟิลด์ FilePath ลงใน Detail section และกำหนด Visible property เป็น No
- Control Source ของ [มี/ไม่มีรูปถ่าย] ให้เว้นว่างไว้
- ใส่โค้ดข้างล่างนี้ไว้ใน Format event ของ Detail section

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
        Me.[มี/ไม่มีรูปถ่าย] = IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")
End Sub

ยังไม่ได้เหมือนเดิมค่ะ รบกวนอีกครั้งนะคะ


 

23 ก.ย. 62 , 13:32:43
ตอบกลับ #5

สันติสุข

โค้ดของคุณคือ

Me.Text23.Text = IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")

ปัญหาคือ
1. คุณใส่ .Text   ตรงนี้ต้องให้เอาออกครับ
2. FilePath มีบางเรคอร์ดที่ไม่มีค่าอะไรเลย 
อย่างนั้นก็ต้องแก้โค้ดเป็น

If Nz(Me.[FilePath], "") = "" Then
   Me.Text23 = "ไม่มี"
ElseIf Dir(Me.[FilePath]) = "" Then
   Me.Text23 = "ไม่มี"
Else
   Me.Text23 = "มี"
End If
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

23 ก.ย. 62 , 13:41:04
ตอบกลับ #6

mtaccess

โค้ดของคุณคือ

Me.Text23.Text = IIf(Dir(Me.[FilePath]) = "", "ไม่มี", "มี")

ปัญหาคือ
1. คุณใส่ .Text   ตรงนี้ต้องให้เอาออกครับ
2. FilePath มีบางเรคอร์ดที่ไม่มีค่าอะไรเลย 
อย่างนั้นก็ต้องแก้โค้ดเป็น

If Nz(Me.[FilePath], "") = "" Then
   Me.Text23 = "ไม่มี"
ElseIf Dir(Me.[FilePath]) = "" Then
   Me.Text23 = "ไม่มี"
Else
   Me.Text23 = "มี"
End If

ยังไม่ได้เหมือนเดิมค่ะ ไม่รู้ว่าผิดตรงไหน ลองแก้ไขตามที่แนะนำมาแล้ว ก็ยังไม่ได้เหมือนเดิมค่ะ รบกวนด้วยนะคะ

 

23 ก.ย. 62 , 13:44:06
ตอบกลับ #7

สันติสุข

ผมลองแล้วดูได้ คุณเปิดดูใน Print Preview หรือเปล่า
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: mtaccess

23 ก.ย. 62 , 13:54:41
ตอบกลับ #8

mtaccess

ผมลองแล้วดูได้ คุณเปิดดูใน Print Preview หรือเปล่า

ดูใน print preview ข้อมูลแสดงค่ะ แต่ถ้าส่งออกไฟล์เป็น Excel ข้อมูลจะแสดงว่ามีหรือไม่มีไหมคะ

 

23 ก.ย. 62 , 14:00:27
ตอบกลับ #9

สันติสุข

ถึงแม้ทำได้ แต่ Report ไม่ได้มีจุดประสงค์เอาไว้เพื่อออก Excel ครับ   ข้อมูลไปครบหรือไม่ รูปแบบยังคงเอาไว้ได้หรือไม่ ต้องลองเองแล้วครับ
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 

23 ก.ย. 62 , 14:17:21
ตอบกลับ #10

mtaccess

ถึงแม้ทำได้ แต่ Report ไม่ได้มีจุดประสงค์เอาไว้เพื่อออก Excel ครับ   ข้อมูลไปครบหรือไม่ รูปแบบยังคงเอาไว้ได้หรือไม่ ต้องลองเองแล้วครับ

ขอบคุณมากๆนะคะ ทำได้แล้วค่ะ

 


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