ต้อง Key ข้อมูลซ้ำๆหลาย Field ที่ Form
กระทู้เก่าบอร์ด อ.Yeadram

 2,746   16
URL.หัวข้อ / URL
ต้อง Key ข้อมูลซ้ำๆหลาย Field ที่ Form

ผมมี Form ดังนี้ (งานจริงมี Field มากกว่านี้)
Posting Date      Shift      Team      Machine No.       Customer Name
06/11/12              Day        A              EN-1                      AA
06/11/12              Day        A              EN-1                      BB
06/11/12              Day        A              EN-2                      BB

จะเห็นว่าจะต้อง Key ข้อมูลซ้ำๆหลาย Field ทำให้เสียเวลามาก
เพราะงานจริงต้อง Key 200 บรรทัด/วัน
จะต้องทำยังไงให้ Key "Machine No." หรือ 'Posting Date" ครั้งเดียว
ช่วยหน่อยครับ

16 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R14686
ได้หลายวิธี เช่น
- วางเป็น header detail ให้พวกข้อมูลซ้ำอยู่ใน header
- กำหนด default ตามข้อมูลล่าสุด
- ปล่อยว่างไปก่อน แล้วเลือกแก้ข้อมูลเป็นชุดทีหลัง
2 @R14687
คือคุณอยาก คีย์ที่ ช่อง Machine No. แล้วช่อง Shif กับ ช่อง Team มา Auto ใช่ไหมครับ
3 @R14690
ตอบ K.akung
ไม่ใช่ครับ แค่ไม่อยากคีย์ข้อมูลซ้ำๆ จะคีย์แค่ครั้งเดียวครับ
4 @R14691
ตอบคุณ PichaiTC
ขอวิธีการด้วยได้ไหมครับ ทำยังไงครับ
5 @R14693
ช่วยเลือกวิธีก่อนได้ไหมครับ บอกทุกวิธีไม่ไหวครับ
6 @R14697
- วางเป็น header detail ให้พวกข้อมูลซ้ำอยู่ใน header
7 @R14699
ผมใช้กับโปรแกรมที่ทำงานอยู่ครับใช้วิธีเขียนโค้ด SendKeys "^'", True ฝังไว้ที่เหตุการ On Enter ที่ฟิลด์ที่ต้องการให้ข้อมูลซ้ำครับ
8 @R14705
ช่วยอธิบายเพิ่มเติมหน่อยครับไม่ค่อยเข้าใจน่ะครับ
9 @R14707
หากออกแบบให้ข้อมูลที่มักจะซ้ำ วางไว้บน Header ส่วนที่เหลือวางใน Detail
ในกรณีนี้ ให้ Machine No กับ Posting Date วางบน Header
เช่น ในส่วน Header วาง Combo Box ชื่อ cboMachineNo bound ข้อมูล field [MachineNo]
และ Text Box ชื่อ txtPostingDate bound กับข้อมูล [PostingDate]
Field ที่เหลือวางใน Detail
แล้วสร้าง code ใน event Before Update ของ Form ดังนี้

Private Sub Form_BeforeUpdate(Cancel As Integer)
    If Not IsNull(cboMachineNo) Then
        Me!MachineNo = cboMachineNo
    End If
    If Not IsNull(txtPostingDate) Then
        Me!PostingDate = txtPostingDate
    End If
End Sub

เวลาใช้งานก็ต้องระบุค่าให้ cboMachineNo และ txtPostingDate ก่อนทำการ save

* ตัวอย่างที่ให้ไม่สามารถตอบได้ทุกความต้องการ กรุณานำไปประยุกต์ให้เข้ากับความต้องการ, การควบคุมข้อมูลของผู้ใช้งาน
10 @R14710
พอวาง Combo Box ที่ Page Header แล้วไปที่ Design View มองไม่เห็น
ก็เลยวางที่ Form Header คราวนี้มองเห็น
จะต้องวางไว้ที่ใหนครับ Page Header หรือ Form Header
11 @R14723
Private Sub Form_BeforeUpdate(Cancel As Integer)
    If Not IsNull(cboMachineNo) Then
        Me!Line_No = cboMachineNo
    End If
    If Not IsNull(txtPostingDate) Then
        Me!Posting_Date = txtPostingDate
    End If
End Sub
ลองทำแล้วครับเอา Combo Box ไปวางที่ Form Header แล้วใส่ Code
ตามด้านบน
ยังทำงานเหมือนเดิมคือยังให้เลือกข้อมูลทุกครั้ง เพียงแต่ต้องเลือกที่ Combo Box ที่ Form Header ที่เดียวกัน
12 @R14725
ขอโทษครับ (เขียนบรรยายโดยไม่ได้เปิด Access จริงมักจะลงรายละเอียดผิดเป็นประจำ)
control ที่วางบน header ไม่ต้อง bound ข้อมูลครับ
Form View ให้เป็นแบบ Continuous
13 @R14745
- กำหนด default ตามข้อมูลล่าสุด
ขอวิธีนี้ด้วยได้ไหมครับ
14 @R14747
ทำได้แล้วครับ ใช้คำสั่งตามด้านล่าง ขอบคุณทุกท่านที่พยายามช่วยครับ
private sub combobox_afterupdate()
combobox.defaultvalue= """" & combobox & """"
end sub
15 @R14748
ส่วนวิธี "วางเป็น header detail ให้พวกข้อมูลซ้ำอยู่ใน header "
พยายามทำตามคำแนะนำแล้วทำยังไงก็ไม่ได้ครับ
16 @R14749
.... รอคุณพี่ PichaiTC มาตอบละกันน๊า...... คุณ chatree
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2527s