กระทู้เก่าบอร์ด อ.Yeadram
2,621 12
URL.หัวข้อ /
URL
ขอความช่วยเหลือครับ
เนื่องจากผมได้ลองทำ Form ให้ใส่รหัสผ่าน และชื่อ เพื่อไป form ข้อมูล พร้อมให้ New add rec
ผมได้ลองเขียนแล้ว มันทำให้ทุกอย่าง แต่เมื่อเข้าไปยัง form new add แล้ว มันไปเพิ่ม run rec ใหม่เลย โดยที่ยังไม่ได้ใส่ข้อมูลลงไป ถ้าผมออกหรือปิด form มันก็จะ run เลขไปแล้ว (โดยจะเป็น ข้อมูลเปล่า)
ที่ผมเขียน
On Error GoTo Err_cmdAddNew_Click
Dim stDocName As String
Dim stLinkCriteria As String
Dim USR As Variant
Dim rst As Recordset
Dim dbs As Database
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM 1_userpasword1_form" & _
" WHERE username1='" & user_name1 & "'")
If Not rst.EOF Then
UserLogin = rst!username1
stDocName = "1_Doc_in_formAdd"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
Forms("1_Doc_in_formAdd").Controls("at_username") = [user_name1]
Else
Beep
MsgBox "ªชื่อหรือรหัสผ่านไม่ถูกต้อง!", 0, "แจ้งให้ทราบว่า"
End If
Exit_cmdAddNew_Click:
Exit Sub
Err_cmdAddNew_Click:
MsgBox Err.Description
Resume Exit_cmdAddNew_Click
End Sub
จาก การเขียนข้างต้น ไม่ทราบว่ามีส่วนไหนผิด หรือต้องเขียนเพิ่มอย่างไร
และต้องเพิ่มในส่วนไหนบ้างครับ
ขอให้ท่าน อ. หรือ ท่านผู้รู้ ช่วยหน่อยครับ
ความต้องการ...
เมื่อใส่รหัสผ่าน หรือ ชื่อ แล้ว คลิ๊กปุ่มไปยัง form new add แล้ว
ยังไม่ให้เพิ่ม run rec ต้องมีการใส่ข้อมูลลงไปก่อน และถ้าผมออกหรือปิด ก่อนใส่ข้อมูล ก็จะไม่มีการ Run rec
หมายเหตุ ถ้าอธิบายไม่เข้าใจ หรือ อยากทราบส่วนอื่นเพิ่ม ช่วยบอกด้วยครับ
ขอบคุณ
ผมได้ลองเขียนแล้ว มันทำให้ทุกอย่าง แต่เมื่อเข้าไปยัง form new add แล้ว มันไปเพิ่ม run rec ใหม่เลย โดยที่ยังไม่ได้ใส่ข้อมูลลงไป ถ้าผมออกหรือปิด form มันก็จะ run เลขไปแล้ว (โดยจะเป็น ข้อมูลเปล่า)
ที่ผมเขียน
On Error GoTo Err_cmdAddNew_Click
Dim stDocName As String
Dim stLinkCriteria As String
Dim USR As Variant
Dim rst As Recordset
Dim dbs As Database
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM 1_userpasword1_form" & _
" WHERE username1='" & user_name1 & "'")
If Not rst.EOF Then
UserLogin = rst!username1
stDocName = "1_Doc_in_formAdd"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
Forms("1_Doc_in_formAdd").Controls("at_username") = [user_name1]
Else
Beep
MsgBox "ªชื่อหรือรหัสผ่านไม่ถูกต้อง!", 0, "แจ้งให้ทราบว่า"
End If
Exit_cmdAddNew_Click:
Exit Sub
Err_cmdAddNew_Click:
MsgBox Err.Description
Resume Exit_cmdAddNew_Click
End Sub
จาก การเขียนข้างต้น ไม่ทราบว่ามีส่วนไหนผิด หรือต้องเขียนเพิ่มอย่างไร
และต้องเพิ่มในส่วนไหนบ้างครับ
ขอให้ท่าน อ. หรือ ท่านผู้รู้ ช่วยหน่อยครับ
ความต้องการ...
เมื่อใส่รหัสผ่าน หรือ ชื่อ แล้ว คลิ๊กปุ่มไปยัง form new add แล้ว
ยังไม่ให้เพิ่ม run rec ต้องมีการใส่ข้อมูลลงไปก่อน และถ้าผมออกหรือปิด ก่อนใส่ข้อมูล ก็จะไม่มีการ Run rec
หมายเหตุ ถ้าอธิบายไม่เข้าใจ หรือ อยากทราบส่วนอื่นเพิ่ม ช่วยบอกด้วยครับ
ขอบคุณ
12 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R14055
คุณUnครับ
ช่วยเตือนผมด้วยเอาตัวอย่างนี้ไปในวันที่20ผมจะอธิบายให้ว่าAccess
ทำได้ง่ายๆที่คุณสมบัติของฟอร์ม
ครูต้อง
ช่วยเตือนผมด้วยเอาตัวอย่างนี้ไปในวันที่20ผมจะอธิบายให้ว่าAccess
ทำได้ง่ายๆที่คุณสมบัติของฟอร์ม
ครูต้อง
3 @R14056
ครับผม อาจารย์ต้อง
4 @R14057
Forms("1_Doc_in_formAdd").Controls("at_username") = [user_name1]
ไม่แน่ใจว่าบรรทัดนี้ของคุณหมายถึงการลงข้อมูลไปแล้วใช่หรือไม่
ลองเปลี่ยนเป็น
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
และจำกัดเฉพาะเรคคอร์ดใหม่เท่านั้น ก็ควรใส่เงื่อนไข
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
ไม่แน่ใจนะครับลองดู
ไม่แน่ใจว่าบรรทัดนี้ของคุณหมายถึงการลงข้อมูลไปแล้วใช่หรือไม่
ลองเปลี่ยนเป็น
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
และจำกัดเฉพาะเรคคอร์ดใหม่เท่านั้น ก็ควรใส่เงื่อนไข
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
ไม่แน่ใจนะครับลองดู
5 @R14063
ต้องขอโทษด้วย ผมลืมบอกไปว่า ชื่อ ของรหัสผ่าน จะไปฝังอยู่ใน ฟอร์ม1_Doc_in_formAdd ด้วย ชื่อฟิวท์ คือ at_username ซึ่งผมลองทำตามคุณ TTT แล้ว มันผ่านให้ แต่เมื่อลงข้อมูลแล้ว ชื่อรหัสผ่านมันไม่มาด้วย ผมจะต้องทำอย่างไรต่อดีครับ
ที่ผมแก้ไขไป
Dim stDocName As String
Dim stLinkCriteria As String
Dim USR As Variant
Dim rst As Recordset
Dim dbs As Database
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM 1_userpasword1_form" & _
" WHERE username1='" & user_name1 & "'")
If Not rst.EOF Then
UserLogin = rst!username1
stDocName = "1_Doc_in_formAdd"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
Else
Beep
MsgBox "ªชื่อหรือรหัสผ่านไม่ถูกต้อง!", 0, "แจ้งให้ทราบว่า"
End If
Exit_cmdAddNew_Click:
Exit Sub
Err_cmdAddNew_Click:
MsgBox Err.Description
Resume Exit_cmdAddNew_Click
End Sub
ไม่ทราบจะถูกหรือไม่
จะต้องเพิ่มคำสั่งตรงไหนอีกครับ
ขอบคุณมากครับ
ที่ผมแก้ไขไป
Dim stDocName As String
Dim stLinkCriteria As String
Dim USR As Variant
Dim rst As Recordset
Dim dbs As Database
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("SELECT * FROM 1_userpasword1_form" & _
" WHERE username1='" & user_name1 & "'")
If Not rst.EOF Then
UserLogin = rst!username1
stDocName = "1_Doc_in_formAdd"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
Else
Beep
MsgBox "ªชื่อหรือรหัสผ่านไม่ถูกต้อง!", 0, "แจ้งให้ทราบว่า"
End If
Exit_cmdAddNew_Click:
Exit Sub
Err_cmdAddNew_Click:
MsgBox Err.Description
Resume Exit_cmdAddNew_Click
End Sub
ไม่ทราบจะถูกหรือไม่
จะต้องเพิ่มคำสั่งตรงไหนอีกครับ
ขอบคุณมากครับ
6 @R14067
โทษที กรณี Me. หมายถึงฟอร์มที่เรียก ไม่ใช่ฟอร์มที่เปิด ดังนั้นมันจึงมองเป็นไม่ใช่หน้า NewRecord
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
เปลี่ยนเป็น
If Forms("1_Doc_in_formAdd").NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "='" & [user_name1] & "'"
End if
If Me.NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1] & "'"
End if
เปลี่ยนเป็น
If Forms("1_Doc_in_formAdd").NewRecord Then
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "='" & [user_name1] & "'"
End if
7 @R14141
ผมได้ลองตาม คุณ TTT แนะนำแล้ว เมื่อคลิ๊กปุ่มจาก ฟอร์ม Password มันก็ขึ้น Form NewAdd ข้อมูล (ชื่อ 1_Doc_in_formAdd) แต่มันจะมีหน้าต่างซ้อนขึ้นมาบอกว่า "Object doesn't support this property or method"
ซึ่งผมก็ไม่ทราบว่ามันไม่สนับสนุนหรือวิธีตรงไหนครับ "งง" กรุณาช่วยเหลือต่อด้วยครับ
ภาพที่ เป็นภาพ Form Password คลิ๊กที่ปุ่ม "ออกใบสำคัญรับเงินใหม่" ก็จะขึ้นภาพ Form NewAdd ข้อมูลใหม่ (ชื่อ 1_Doc_in_formAdd) แต่จะมีหน้าต่างซ้อนเกิดขึ้น โปรดช่วยเหลือด้วยครับ
ซึ่งผมก็ไม่ทราบว่ามันไม่สนับสนุนหรือวิธีตรงไหนครับ "งง" กรุณาช่วยเหลือต่อด้วยครับ
ภาพที่ เป็นภาพ Form Password คลิ๊กที่ปุ่ม "ออกใบสำคัญรับเงินใหม่" ก็จะขึ้นภาพ Form NewAdd ข้อมูลใหม่ (ชื่อ 1_Doc_in_formAdd) แต่จะมีหน้าต่างซ้อนเกิดขึ้น โปรดช่วยเหลือด้วยครับ
8 @R14142
ขอโทษครับโหลดผิด ภาพที่1 คือภาพนี้
ภาพที่ 2
ภาพที่ 2
9 @R14143
โหลดผิดอีกแล้ว เอาใหม่ ภาพที่1 คือ
...
...
10 @R14144
อ้าง Property ใน Object ผิดครับ อะไรซักอย่าง เช่น
ฟิลด์ at_username และ user_name1 คุณเป็นอะไรครับ Text Box หรือ Label หรือ...
ถ้า ฟิลด์ user_name1 เป็น Label ก็ต้องอ้าง Property Caption ด้วยถึงอ่านค่าออก
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1].Caption & "'"
อะไรประมาณนี้ครับ ลองตรวจสอบชนิด Object บนฟอร์มดู แล้วอ้างอิงให้ถูกครับ
ฟิลด์ at_username และ user_name1 คุณเป็นอะไรครับ Text Box หรือ Label หรือ...
ถ้า ฟิลด์ user_name1 เป็น Label ก็ต้องอ้าง Property Caption ด้วยถึงอ่านค่าออก
Forms("1_Doc_in_formAdd").Controls("at_username").DefaultValue = "'" & [user_name1].Caption & "'"
อะไรประมาณนี้ครับ ลองตรวจสอบชนิด Object บนฟอร์มดู แล้วอ้างอิงให้ถูกครับ
11 @R14166
ขอขอบคุณ คุณ TTT มากครับ ทำได้แล้วครับ ผมได้ความรู้เพิ่มอีกแล้ว
แต่ผมขอถามเพิ่มอีกหน่อยครับ ในฟอร์ม NewAdd ข้อมูล (1_Doc_in_formAdd) ภาพที่ 2 ผมมีปุ่มเพิ่มข้อมูลใหม่อยู่ด้วย ถ้าผมคลิ๊กปุ่มนี้แล้ว ยังจะให้ ชื่อpassword ยังคงทำหน้าที่เดิมอยู่ คือมาฝังตัวอยู่ในข้อมูลใหม่ด้วยนั้น ผมต้องเขียนคำสั่งที่ปุ่มเพิ่มข้อมูลใหม่อย่างไรบ้างครับ
โปรดช่วยเหลืออีกหน่อยนะครับ
ขอขอบคุณมาก ๆ ครับ
แต่ผมขอถามเพิ่มอีกหน่อยครับ ในฟอร์ม NewAdd ข้อมูล (1_Doc_in_formAdd) ภาพที่ 2 ผมมีปุ่มเพิ่มข้อมูลใหม่อยู่ด้วย ถ้าผมคลิ๊กปุ่มนี้แล้ว ยังจะให้ ชื่อpassword ยังคงทำหน้าที่เดิมอยู่ คือมาฝังตัวอยู่ในข้อมูลใหม่ด้วยนั้น ผมต้องเขียนคำสั่งที่ปุ่มเพิ่มข้อมูลใหม่อย่างไรบ้างครับ
โปรดช่วยเหลืออีกหน่อยนะครับ
ขอขอบคุณมาก ๆ ครับ
12 @R14169
ทำได้แล้วครับ ขอขอบคุณ คุณ TTT มากครับ
ผมได้ความรู้จากบอร์ดนี้มาก
ขอขอบคุณ อ. และท่านผู้รู้ทุกท่าน
ผมได้ความรู้จากบอร์ดนี้มาก
ขอขอบคุณ อ. และท่านผู้รู้ทุกท่าน
Time: 0.3464s
ผมว่าเอาบรรทัดนี้ออก แล้วสร้างปุ่ม เพื่อนเพิ่มเรคคอดใหม่ดีกว่าครับ