แสดงกระทู้

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

หน้า: 1 2 3 4 [5] 6 7 8 ... 14
73
555 อาจารย์ เนี้ย คนรู้กับคนไม่รู้
ขอบพระคุณอาจารย์มากครับ
ผมเอาไปดับแปลงใช้ได้หลายแบบเลยครับ

74
ที่ไม่บอกเงื่อนไขให้หมด เพราะจริงๆ มีเงื่อนไขมากกว่านี้
คิดว่า เดี๋ยวจะมาดัดแปลงเองอีกที ไม่น่ายาก
แต่ดัดแปลงยังัย เลขมันเริ่มต้นที่ 0 ทุกที
ทั้งๆ ที่ดูในโคต มันก็กำหนดให้เป็น 1 เลยมาสังเกตุจาก
ที่โหลดมามีปุ่มลบข้อมูลด้วย จึงลบข้อมูลก่อน สรุปว่าได้เฉยยย
เลยเพิ่มคำสั่ง ให้ลบข้อมูลเก่าออกก่อน ค่อยเรียงลำดับ
สรุปว่าได้แล้วครับ แต่ก็ได้แบบ งงงง นิดนึง
ของพระคุณอาจารย์มากครับ น่ารักเสมอ /|\

75
อาจารย์ครับ ถ้าผมจะใส่เงื่อนไขเข้าไปอีก เช่น
มีชนิดของรายการ ฟิลด์ TypeR
จะมี TypeR เป็น 1  2  3  4
แล้วเงื่อนไขนี้ ผมจะใส่ที่บรรทัดไหนครับ
รบกวนอาจารย์อีกนิดครับ

76
เมื่อเราบันทึกข้อมูลลำดับต่างๆ ลงใบฐานข้อมูลของเราแล้ว
มีการแก้ไข เช่น เพิ่มเรคคอด ลบเรคคอด หรือแก้ไขวันที่บันทึก
ทำให้ข้อมูลลำดับที่บันทึกไว้นั้นเรียงผิด
ผมจึงอยากทำปุ่มไว้เรียงลำดับ โดยเมียเงื่อนไขดังนี้
-เรียงลำดับตามวันที่ ฟิล DateR
-เรคคอดแรก เท่ากับ 1
-วันที่เดียวกันเลขเดียวกัน เช่นวันที่ 2 ถ้าเป็นลำดับที่ 7 ก็เป็น 7 ทุกเรคคอด
-วันที่ถัดไป +1 ลำดับ
ฟิลดืี่บันทึกชื่อ SEQrec
ต้องเขียนโคตปุ่มยังงัยครับ
ขอบพระคุณอาจารย์ที่ช่วยครับ

77
ขอบคุณครับ อ.PNR ผมเขียนโคตเองไม่เป็น แต่เอามาแก้ไข แล้วเอาใช้งานได้
เบื้องต้น จะเอามาลองเปรียบเทียบความเร็วกับการใช้ Query ว่าอะไรเร็วกว่ากัน
แล้วก็ ดูรูปแบบ ผมเอาไปใช้งานอื่นได้อีกด้วย ของคุณอาจารย์มากๆ ครับ

78
1. ข้อมูลแบบนี้ต้องมี MovementID ร่วมด้วย
2. "วันแรกที่รับเข้า เรคคอดแรกของโปรแกรม มันจะคิดรวมยังงัย" ขึ้นอยู่กับเงื่อนไขการรับเข้าครับ ถ้าจะไม่ให้มารวม ก็ใส่เป็น 0 แทนที่จะเป็น 1 หรือ -1
3. การเขียน Code ก็ดีนะครับ แต่ปัญหาคือมันทำงานช้ากว่า Query ครับ ผมเคยเขียน Code Loop 10,000 รอบ สำหรับข้อมูล 10,000 เรคอร์ด กว่าจะทำงานเสร็จ สุดท้ายใช้ Query ซ้อน Query เร็วกว่ากันเยอะ (กดปุ๊บ ได้ปั๊บ)

ผมก็ไม่รู้ว่าอะไรดีกว่าอะไร ใช้ Running sum มานานคิดว่ามันช้า พอ อ.PRN บอกว่าจะเขียนโคตให้
เข้าใจว่ามันจะดีกว่า แล้วยังได้เรียนรู้วิธีใหม่ๆ ก็เลยอยากได้อยู่ครับ ช่วงที่รอ ก็ลองทำไปทำมาดู
สรุปว่าได้แล้ว ขอบคุณ อ.จารย์มากครับ

ลองแบบที่อาจารย์ OddyWriter บอกดีกว่าครับ ผมก็คิดอยากจะทำกับคิวรี่แต่คิดวิธีไม่ออกครับ
เมื่อมีแนวทางแล้ว เอาแบบที่ อาจารย์ OddyWriter แนะนำดีกว่าครับ เร็วกว่าจริงๆ
ผมเข้าใจว่าใช้โคตมันจะดีกว่า แต่ก็ยังอยากได้โคตอยู่นะครับ มันเอามาดัดแปลงทำอะไรได้เยอะ
ถ้า อาจารย์พอทำให้ได้ ยังอยากได้อยู่นะครับ ขอบคุณครับ

79
ถ้าใช้ 1 กับ 2 แบบนี้ เวลาทำ Total Query เพื่อหาผลรวม มันก็ทำได้นะครับ แต่จะยุ่งยากหน่อยๆ
แนะนำให้เปลี่ยนจาก 1 กับ 2 เป็น 1 กับ -1 แล้วเพิ่มคอลัมน์ ที่นำจำนวนมาคูณกับ 1 กับ -1

จากนั้นทำ Total Query จากค่าผลลัพธ์ที่ได้

อีกอย่าง "ตัวแปร" คือ Variable ส่วน "ตัวแปล" ก็ประมาณ "วุ้นแปลภาษาของโดเรมอน" ครับ


555 ขอบคุณครับอาจารย์ รีบไปหน่อย พิมพ์ผิด

ในส่วนที่อาจารย์แนะนำ ช่วงที่รอ ผมคิดถึงจุดนี้พอดี เลยเอา -1 คูณกับค่าที่เป็นเบิกไปแล้วครับ
ปัญหาตอนนี้ ติดที่เราเบิกจ่าย ในวันเดียวกัน สงสัยต้องใช้ ตัวแปร รหัสการเบิกมาร่วมด้วย(ซึ่งต้องเรียงลำดับด้วย)
แล้ว วันแรกที่รับเข้า เรคคอดแรกของโปรแกรม มันจะคิดรวมยังงัย พอ อ.PNR มาบอกจะเขียนโคตให้ เลยคิดว่า
น่าจะดีกว่า Runnig sum เพราะถ้าข้อมูลมากๆ อาจช้า แต่ก็จะลองหลายๆ แบบ เป็นความรู้ด้วยครับ

80
ถ้าใช้คิวรี่ยังคิดไม่ออก
แต่ถ้าเป็นการ Loop check แล้วนำมาเพิ่มหรือหักลบกับค่าด้านบนเหมือนการรับยอดตัดยอดผมพอทำได้ครับ
วิธีการที่คิดได้ต้องสร้างตารางเพื่อแสดงผลครับ
เอาไหม ?
เอาสิครับอาจารย์ ได้เพิ่มความรู้ใหม่ด้วย

81

ขอ Query Running sum ฟิลด์ Totel ครับ
โดย MCode เป็นตัวแปลตามชนิดวัสดุ
      MType เป็นตัวแปลถ้ารับ(เท่ากับ1)จะเอาค่าที่รับมาบวก ถ้าเบิก(เท่ากับ2)เอามาลบ
Table แรกชื่อ qMrep

ขอความช่วยเหลือด้วยครับ

82
เผื่อไม่เข้าใจที่ อ.PNR บอกนะครับ
ทำ Query ให้ใหม่ ชื่อ Query1
ทำ Report ให้ใหม่ ชื่อ Report

83
แก้ Query ให้ใหม่ ใส่  Event ที่ Afterupdate

84
ไม่รู้ว่าต้องการทำอะไร แต่ถ้าจะใช้เป็นตัวกรองค้นหา มันก็มีหลายวิธี
แต่ในฐานข้อมูลที่แนบมา เค้าก็ไม่ค่อยทำแบบนั้นกันนะครับ

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

ผมส่งไฟล์ให้หลังไมค์แล้วนะครับ มันมีชื่อบุคคลอื่นอยู่ด้วย เลยไม่ได้โพสข้องหน้า

ขอบพระคุณอาจารย์มากครับ

86
ช่วงระหว่างรออาจารย์ตอบ
ผมลองทำแบบที่อาจารย์บอกเลยครับ(เขียนโคตไม่เป็น)
โดยใช้ Dloookup Dcount Dmax ในคิวรีที่ทำขึ้น
ขั้นตอนที่ทำคือ สร้างคิวรีกำหนดค่าต่างๆ
เปิดฟอรมขึ้นมา เมื่อเลือก คอนโทลตามเงื่อนไข
มันจะไปอ่านค่าในคิวรี มาใส่ค่าให้ในตารางครับ

ตอนแรกคิดว่าไม่มีคนตอบ เลยค่อยๆ ทำไป สังเกตุเห็น
อาจารย์ ไม่มาตอบใครด้วย จึงคิดว่าอาจารย์ไม่ว่าง
เลยลองทำดูในแบบที่พอทำได้ แต่ก็อยากทำแบบเป็นโคต
ว่ามันจะเขียนยังงัยครับ เลยรออาจารย์มาตอบ

87


ถ้ามีรายการใน 1 วัน SendCardEndNo จะรันวันละ 1 เลข
SendCardNo จะรันตามจำนวน Cashier คือใน 1 วัน
Cashier คนแรก จะรันแรก 1 พอคนอื่นมาบันทึก ก็จะเป็นเลขต่อไป คือ 2
แต่ถ้าคนเก่ามาบันทึกในวันเดิม ก็จะรันแรกเดิมของเค้า
วันต่อไป SendCardEndNo ก็จะรันต่อไป
SendCardNo ก็รันต่อไป ตามรูปตัวอย่างเลยครับ

เขียนโคตไม่ถูก ขอความกรุณาครับ

88
ขอบคุณมากๆ เลยครับ ใช่ตัวนี้เลยครับ

89
ใครโหลดโปรแกรมอ่านบัตรประชาชน ของ
Awara Thailand ตัวนี้ >> THIDSMCReaderV1.exe
ขอหน่อยครับ พอดีพอดีโหลดไว้แล้วมันหายไป

90
ห้อง MS Access / : คำสั่ง yesNoCancel
« เมื่อ: 16 มี.ค. 64 , 15:59:14 »
ฟังชันก์ IF มันไม่ยาก แต่มันจะดู งงงง
เนื่องจากมันมี 3 ตัวเลือก ยิ่ง งง ไปอีก
เวลาทำเราต้องทำเป็นชุดๆ
ชุดแรก มันจะมีตัวเลือกที่เมื่อเราเลือก NO
ก็เอาชุดที่ 2 ไปใส่ที่ NO ชุดต่อไปก็เหมือนกัน
แต่ที่คุณทำมันปนกันไปหมด อาจเพราะยังไม่เข้าใจ
ตัวรายงานที่ให้พิมพ์ ผมอาจจะเลือกผิดนะครับไปสลับกลับเอง

โค๊ด: [Select]
Dim RetValue As Variant, rst As String, rst2 As String
        RetValue = MsgBox("ต้องการพิมพ์ใบแสดงตนเพื่อลงบัญชีทหารทหารกองเกิน (แบบ สด.44) ใช่หรือไม่", vbYesNoCancel + vbDefaultButton3, "Un")
        Select Case RetValue
                    Case 6 'yes
                            DoCmd.OpenReport "SD44", acViewprint, , "[ID]=[Forms]![history].[ID]"
                    Case 7 'No
                    rst = MsgBox("ต้องการพิมพ์บัญชีทหารกองเกิน (แบบ สด.1) ใช่หรือไม่", vbYesNoCancel + vbDefaultButton3, "Un")
                            If rst = vbYes Then
                                    DoCmd.OpenReport "SD1", acViewprint, , "[ID]=[Forms]![history].[ID]"
                            ElseIf rst = vbNo Then
                                    rst2 = MsgBox("ต้องการพิมพ์บัญชีทหารกองเกิน ด้านหลัง ( แบบ สด.1)ใช่หรือไม่", vbYesNoCancel + vbDefaultButton3, "Un")
                                            If rst2 = vbYes Then
                                                    DoCmd.OpenReport "SD1", acViewprint, , "[ID]=[Forms]![history].[ID]"
                                            ElseIf rst2 = vbNo Then
                                                    DoCmd.OpenForm "certificate"
                                            Else
                                                    Exit Sub
                                            End If
                            Else
                                    Exit Sub
                            End If
                    Case 2 'Cancle
                            ''''
        End Select

หน้า: 1 2 3 4 [5] 6 7 8 ... 14