แสดงกระทู้

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 - OddyWriter

หน้า: 1 ... 29 30 31 [32] 33 34 35
559
ที่ Event: On mouse up ให้ใส่ Code นี้เข้าไปครับ


Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Me.ชื่อฟิลด์ที่ต้องการซ่อน.ColumnHidden = False Then
    Me.ชื่อฟิลด์ที่ต้อกงารซ่อน.ColumnHidden = True
End If
End Sub

Unhide ได้แป๊บเดียว(ประมาณ 1-2 วินาที)  ก็จะกลับไปซ่อนใหม่ทันที

ถ้ามีหลายฟิลด์ก็เหนื่อยหน่อยนะ
อ้อ! ใช้ได้เฉพาะ Datasheet View เท่านั้นนะครับ

560
ห้อง MS Access / > สลับตำแหน่งFormatวันที่
« เมื่อ: 19 มี.ค. 61 , 17:43:31 »
ได้ครับ
ใส่คำสั่ง Format([ชื่อฟิลด์],"mmddyyyy") เข้าไปในช่อง Field ของคิวรี

หรือใช้การกำหนด Format ของฟิลด์ในคิวรีเป็น mmddyyyy ก็ได้

561
ห้อง MS Access / > การสร้าง report chart
« เมื่อ: 17 มี.ค. 61 , 19:21:57 »
ไฟล์ตัวอย่างครับ ไม่มีระบบป้องกันการเลือกข้อมูลผิดพลาดนะครับ

https://www.dropbox.com/s/3vrtgje04lqwdxj/DynamicChart.accdb?dl=0

562
ห้อง MS Access / > แทนค่าใน Tables
« เมื่อ: 16 มี.ค. 61 , 17:10:05 »
แนะนำว่าใช้หลักการของตารางชั่วคราวจัดการข้อมูลก่อนใส่ตารางจะจัดการได้ง่ายกว่า

สงสัยว่าที่ LineKey 3247 แล้ว QTY 810 มันหายไปไหน

565
ออบเจ็กต์ที่ชื่อ Name อาจสร้างปัญหาได้ ถ้าจำไม่ผิดมันจะเป็นคำที่สร้างปัญหาในการเขียน Code ได้ง่ายมาก อาจเปลี่ยนชื่อออบเจ็กต์เป็น txtName ดูครับ





566
ห้อง MS Access / > การแยกข้อมูลภายในแถว
« เมื่อ: 14 มี.ค. 61 , 14:02:17 »
การแปลงข้อมูลเป็นสิ่งที่ควรทำใน Excel ก่อนครับ การนำข้อมูลในรูป 1 มาใส่เลย แล้วค่อยแปลง จะเป็นอะไรที่ยุ่งยากมาก และมีโอกาสมากที่ข้อมูลจะผิดพลาดได้ เพราะถ้าอยู่ใน Excel ข้อมูลแต่ละแถวสามารถสัมพันธ์กันได้ แต่ใน Access ข้อมูลแต่ละแถวหรือก็คือเรคอร์ดนั้นเป็นอิสระต่อกันครับ

แนะนำว่าทำให้ Excel ก่อนแล้วค่อยนำมาใส่ใน Access ครับ

567
ห้อง MS Access / > การแยกข้อมูลภายในแถว
« เมื่อ: 14 มี.ค. 61 , 10:30:16 »
1. แทรกคอลัมน์ระหว่าง B กับ C
2. สร้าง Function If ธรรมดาที่ C2 ซึ่งเป็นคอลัมน์ใหม่ที่เราแทรกมา =IF(A2="head",D2,C1)
3. Copy สูตรนี้ลงมาถึงเซลล์สุดท้ายด้านล่าง
4. ที่คอลัมน์ C (ใหม่) ให้ Copy > Paste Specials > Value
5. Sort คอลัมน์ A แล้วลบ Row ที่ตรงกับ Head ของคอลัมน์ A ออกให้หมด
6. ที่เหลือจะเป็นข้อมูลอย่างที่ออเจ้าต้องการทั้งหมด

569
เพิ่ม * อีกตัว ก่อน [กรุณาใส่ชนิดสัตว์ :]

570
รูปแบบเยี่ยงนี้น่าจะใช้การ Link Table



571
ไม่แน่ใจว่าผมเข้าใจผิดหรือเปล่าอะนะ

แต่คิดว่าไม่น่าจะต้องใช้ QRCode นะครับ แค่ Barcode ธรรมดาๆ ก็พอ
โดยสร้างฐานข้อมูลแล้วให้ Access พิมพ์ Barcode ออกมา 2 ใบด้วยรหัสเดียวกัน
อันนึงก็แปะไว้กับของส่งซ่อม อีกอันก็แปะไปกับเอกสารแนบของที่ส่งซ่อม หรือจะให้ Access พิมพ์เอกสารที่ว่าพร้อม Barcode ก็ได้ โดยพิมพ์สติ๊กเกอร์ Barcode แค่อันเดียวเพื่อแปะที่ของส่งซ่อม

572
ต้องใช้ List Box ครับ ถึงจะเลือกหลายรายการได้

573
ถ้าเปิดฟอร์มในมุมมอง Datasheet สามารถกำหนด Filter ได้ครับ

574
ต้องอธิบายอย่างนี้นะครับ บางครั้งการใช้ Query นั้น บางครั้งสามารถจัดการอะไรๆ ในฟอร์มได้ดีกว่า VBA ดังนั้นอยากจะบอกว่า เพียง Query ก็ได้อย่างที่ต้องการแล้วครับ

จาก Combo Box ที่คุณสร้างนั้น ถ้าเป็นผมจะใส่ ID ให้แต่ละเรคอร์ด เพราะ Access นั้นแยกไม่ออกหรอกครับว่า GAGIU ที่เราต้องการนั้นคืออันไหน เค้าเจออันไหนก่อนเค้าก็หยิบอันนั้นมาแสดงผลทันที

การแก้ไขง่ายมากครับ
1. กำหนดให้แต่ละเรคอร์ดมี ID ของตัวเอง
2. นำข้อมูลมาใส่ใน Row Source ของ Combo Box โดยใส่ ID เข้าไปด้วย
3. กำหนด Column Width ของ Row Source ตามที่เราต้องการ โดยกำหนดให้ Column Width ของ ID เป็น 0
เช่น เรานำฟิลด์มาใช้ 3 ฟิลด์คือ ID, Desc,Date เราก็กำหนด Column Width เป็น 0,1,1 อะไรงี้
4. จากข้อ 3 ให้กำหนด Bound Column เป็น 1 เพื่อนำไปใช้งาน

ส่วนช่องอื่นๆ คุณก็ไม่จำเป็นต้องเขียน Code ใน AfterUpdate เลยครับ แค่เอา Dlookup ไปใส่ใน Control Source โดยกำหนด Criteria ของ Dlookup ให้เทียบค่ากับ Combo Box ครับ

ด้วยวิธีนี้ การทำงานจะเร็วกว่า เพราะ Dlookup ทำงานเองโดยตรง ไม่ต้องผ่าน VBA แล้วเอาค่าจะ VBA มาใส่ใน Text Box

575
คำถามกว้างงงงงงงงจัง

576
ไฟล์ตัวอย่างครับ ค่อยๆ ดู เริ่มจาก ตาราง คิวรี ฟอร์ม มาโคร ดูละเอียดๆ ครับ ไม่ได้ซ่อนคำสั่งอะไรเป็นพิเศษ ไม่มี VBA ใช้มาโครเท่านั้น

https://www.dropbox.com/s/xq2klbx7ci1djid/Cabinet.accdb?dl=0

หน้า: 1 ... 29 30 31 [32] 33 34 35