แสดงกระทู้

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

หน้า: [1] 2 3 4 5
1
มีคนถามว่า อยากให้เช็คเท็กซ์บ็อกซ์ ถ้าว่างให้เปลี่ยนสีให้หน่อย
Text box name = HomeMobile

What event should I use on the report: • Private Sub Report_Load() • Private Sub Report_Open(Cancel As Integer)

Private Sub Report_Open(Cancel As Integer)

If IsNull(Textbox.Value) = True Then
Textbox.BackColor = vbRed

End If

End Sub

อีกคำตอบ


You could try with the Format or Print event, and also arrange for the colour to be reset:

Textbox.BackColor = IIf(IsNull(Textbox.Value), vbRed, vbWhite)

อันนี้คำถามว่า อยากให้ฟอร์มโหลดขึ้นมาแล้วเปลี่ยนสีทุกกล่องข้อความ

You can place this code in the Onload event of your form and this will change all of your boxes at one time.
Delcare the control:
Dim tb as Control
Code:
 For Each tb In Me.Controls
        If TypeOf tb Is TextBox Then
            tb.BackColor = 'your color goes here
        End If
    Next
-----------------------------------------------------------------------------
อันนี้โค้ดของคนถาม
For Each Ctl In Detail.Controls
'ตรวจสอบเฉพาะที่เป็นประเภท TextBox / Combo Box
If Ctl.ControlType = acTextBox Or Ctl.ControlType = acComboBox Then 'Or ctl.ControlType = acCheckBox
'และเฉพาะที่ชื่อชื้นต้นด้วย Status
If Ctl.Name Like "Status*" Then
'ถ้าได้ค่าว่างๆ
If Ctl &"" = "Less than 1 day" Then
isBlank = "LT"
Elsef Ctl &"" = "More than 1 day" Then
isBlank = "MT"
Elsef Ctl &"" = "Card expired" Then
isBlank = "C"
Exit For
End If
End If
Next
If isBlank = "LT" Then
Ctl.BackColor = vbYellow
Elself isBlank = "MT" Then
Ctl.BackColor = vbGreen
ElseIf isBlank = "C" Then
Ctl.BackColor = vbRed
Exit Sub
End If
End if


3
ตอนนี้ทำคิวรี่ออกมาเรียบร้อยแล้ว ดังตาราง

injectDate   +++++++1Day++++7Day++++++++++14Day+++++เลขประชาชน++++++ชื่อ นามสกุล
8/10/2564.........9/10/2564........15/10/2564........22/10/2564........999 999 999 999 9.......a
8/10/2564.........9/10/2564........15/10/2564........22/10/2564........999 999 999 999 9.......b
8/10/2564.........9/10/2564........15/10/2564........22/10/2564........999 999 999 999 9.......c
8/10/2564.........9/10/2564........15/10/2564........22/10/2564........999 999 999 999 9.......d

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

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

ขอบคุณล่วงหน้าครับ

4
ใช่ครับ... วันเป้าหมาย คือ อยากรู้ว่ากลุ่มข้อมูลนี้มีจะมีอายุเท่าไหร่ ในวันที่เราต้องการ

5
"อ่านหลายรอบ ก็ไม่เข้าใจว่าต้องการอะไร นอกจากอายุน้อยกว่า 12 แม้แต่วันเดียวไม่เอา หรือ มากกว่า 18 ปี แม้แต่วันเดียวก็ไม่เอา"
ใช่ครับ สมมติ เงื่อนไขของวัคซีนตัวนี้คือ จะฉีดได้ อายุตั้งแต่ 12 ปี บริบูรณ์ - 18 ปี บริบูรณ์ คือถ้าในวันและเวลา ที่จะต้องส่งข้อมูลวันสุดท้าย ขั้นต่ำคุณควรไม่ต่ำกว่า 12 ปีเป๊ะๆ และ อายุต้องไม่เกิน 18 ปี เป๊ะๆ ครับ
ผมโหลดไฟล์มาดูแล้วครับ ก็นำข้อมูลไปใช้ต่อได้ครับ (เป็นการเทียบอายุกับวันในเครื่องคอมพิวเตอร์ปัจจุบัน) แต่ถ้าเราต้องการคำนวณล่วงหน้าไปอีกสัก 5 วัน เราก็จะแก้ไขโดยการเปลี่ยนวันที่ที่เครืองคอมพิวเตอร์ก่อน แล้วค่อยมาใช้ฟอร์มนี้ทำงานได้

6
กลับมาทำเพิ่มเติมแล้ว แต่ยังไม่ได้ตรงตามใจ ใช้ฟังก์ชั่นอายุของ อาจารย์สุภาพ ม.ขอนแก่นเพิ่มแล้ว แต่อายุไม่ตรงกับฟังก์ชั่นจากกระทู้ที่อ้างถึงข้างบน ส่วนไฟล์ในคิวรี่ ก็ถือโอกาสเช็คอายุของเด็กไปด้วยว่า
ถ้ายังไม่ถึง 12.0 ปี (อายุไม่ตรงเผ็ง ในวันที่ฉีดวัคซีน ก็ไม่ให้ฉีด ข้อมูลสมมติ หรือดูจากผังการฉีดวัคซีนแล้วคำนวณคร่าวๆ ได้(ดูจากเคยลงทะเบียนแล้วแม่อายุไม่ถึง 70 ปี บริบูรณ์เหลืออีก 15 วัน ก็ยังไม่สามารถลงทะเบียนฉีดวัคซีนว่าต้องเอาคนอายุ 70 ปีขึ้นไป)
และอีกคอลัมน์หนึ่งก็ถือโอกาสตรวจว่า มากกว่าหรือเท่ากับ 18.0 ปีไหม ในวันที่ฉีดวัคซีน ถ้ามากกว่า 18.0 ปี ก็ไม่ให้ฉีด
เพื่อส่งต่อข้อมูลครับ
ไม่รู้พอจะเข้าใจไหม สรุปว่า อยากตรวจดูว่า ถ้าอายุ ไม่ถึง 12 ปีบริบูรณ์ ไม่ต้องส่งชื่อสมัครฉีด และ อายุเกิน 18 ปีบริบูรณ์ ก็ไม่มีสิทธิ์ฉีดวัคซีนที่กำหนด
โดยแสดงข้อมูลแจ้งเตือนว่า "อายุยังไม่ถึง 12 ปีบริบูรณ์", กับ "อายุตอนนี้ ... ปี เดือน วัน" แบบนี้ครับ เวลาเอาไปแสดงในคิวรี่

7
https://www.thai-access.com/topic_post.asp?CategoryID=1&TopicID=371
ผมลองแทนค่าแล้ว เปลี่ยนจาก 20 เป็น 18 คาดว่าน่าจะเป็นชื่อฟิลด์วันเกิดที่จัดรูปแบบไม่ตรงกับกระทู้นี้...เลยไม่ได้คำตอบ

8
ตอนนี้หาความรู้ในบอร์ดนี้แล้ว ได้ อายุมาเป็น ปี เดือน วัน เรียบร้อยแล้ว ต้องการตรวจดูว่า ในฐานข้อมูลจะมีคนอายุเกิน 18 ปี 1 วัน ขึ้นไปไหม ที่จะถูกตัดสิทธิ์รับวัคซีนไฟเซอร์ที่กำหนดให้ >=12ปี -18 ปีบริบูรณ์ในวันที่จะฉีด (สมมติตรง ถ้า 17 ปีกับ 2 เดือน ยังไงๆ เขาคงได้ฉีด วัคซีนไม่น่านานขนาดนั้น) ทีนี่อยากรู้ว่า ในวันที่ 11/10/2564 ที่จะถึงนี้ มีรายการฉีดวัคซีนเคลื่อน และวัคซีนที่โซนอายุเขา ไม่มาแน่นอน เลยอยากจะหาคนที่จะถูกตัดสิทธิ์จะไม่ได้รับวัคซีนดังกล่าว ระหว่างรอคำตอบ ผมก็จะนับด้วยมือไปพลางๆ

SELECT DateDiff("yyyy",[bdNoZero],Now())+Int(Format(Now(),"mmdd")<Format([bdNoZero],"mmdd")) AS NowYYAgeDetails, tbl_Students.bdNoZero, Int(DateDiff("m",[bdnozero],Now())/12) & " ปี   " & (DateDiff("m",[bdnozero],Now()) Mod 12) & " เดือน " & (DateDiff("d",[bdnozero],Now()) Mod 12) & " วัน" AS AgeYYMMDD, 11/10/2564-DateDiff("m",[bdnozero],Now())/12 & " ปี   " AS 111064AgeGreaterThan18
FROM tbl_Students;

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

11
ขอคำแนะนำ หรือคำที่จะเอาไปค้นในเว็บต่อเป็นภาษาอังกฤษก็ได้ครับ
ผมค้นเว็บเจอคล้ายการจองห้องประชุม จองห้องพักโรงแรม คิดว่าโจทย์ของตัวเองก็ไม่เหมือนเพราะเราเป็นคนจับวางตำแหน่งให้เลยโดยเรียงตามลำดับ
ยังอยู่แถวๆพิมพ์สติกเกอร์สติกเกอร์ครับ
คำถาม "มีตาราง 2 ตาราง ตารางที่ 1 คือตาราง stickerNo จะบอกตำแหน่ง 1-52  อีกตารางคือ TempToPrint ข้อมูลที่ถูกเรียงมาเรียบร้อยแล้ว โดยอยากเอาเลข stickerNo ของตารางแรก ไปแทรกเข้าในตาราง จนกว่าจะครบ 52 ตำแหน่งแล้วค่อยเริ่มนับ 1 ใหม่" ยังไม่อยากทำแบบเอาเอ็กเซลมาวางในฐานแอคเซสครับ จะเป็นคิวรี่ก็ได้ครับ

ขอบคุณครับ

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

13
ถ้าแบบทำด้วยตนเองก่อนคือสั่งอัพเดทคิวรี่ ที่ฟิลด์ print ว่าถ้าเป็น no ให้ข้อมูลใน L-details เป็นค่า “ “ ตอนสั่งพิมพ์ก็จะพิมพ์ออกมาเป็นแบบเปล่าไม่ลงหมึก หรือ อีกวิธีหนึ่งตรงรายงานเงื่อนไขเป็นสีขาวกรณีมีค่าเป็น no วิธีหลังคาดว่ามันต้องสั่งพิมพ์โดยให้เป็นสีขาวคงไม่ดีวิธีนี้...คิดรอคำตอบ

14
SELECT [56].l_no, [56].la_id, [56].l_details, [56].Print, [56].LandC, [56].LineX, [56].ColumnX
FROM 56
WHERE ((([56].l_details)=IIf([print]=-1,[l_details]," ")));
อยากให้แทนข้อความในฟิล์ว l_details ด้วยความว่างเปล่าแม้จะข้อความอยู่ในนั้น กรณีที่ field print เป็นค่า No แต่ยังคงป้ายลาเบลอยู่บนกระดาษสติกเกอร์ ใช้วิธีแบบง่ายๆ คือ ทำฟอร์มสติกเกอร์เรียบร้อยแล้ว บางช่วงกระดาษสติกเกอร์เหลือจำนวนดวง2แถวล่าง จาก 14 แถว เราจะขอพิมพ์ดวงที่ 1ของแถวที่13 แบบนี้ครับ โดยที่ไม่ต้องตัดแถวที่ 1-12 ทิ้ง จะทำให้พิมพ์ไม่ตรงกับแถวในกระดาษสติกเกอร์สำเร็จรูปของคิวบิซ  ดัดแปลงจากคำตอบในเว็บ IIf(IsNull([ADDRMU]),"-",Replace(Replace([ADDRMU],"ม.",""),"หมู่ที่ ","")) แล้วไม่สำเร็จครับ ในไฟล์แนบมี mdb กับ ภาพสติกเกอร์ที่ใช้ ภาพอันเดียวกันกับที่แสดงบนหน้าเว็บครับ

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

15
กรณีเลข 2 ตัว และ เลข 3 ตัว ที่มันสลับตำแหน่งกัน ผมจะใช้การแยกทีละตัวด้วยคิวรี่ได้ ทีนี้ถ้าจะเอาไปตรวจกับเฉลยว่ามีเลขเหมือนกันไหม จะทำอย่างไรดีครับ ผมค้นเจอในบอร์ด อาจารย์ไชยา มีอยู่ 1 คนถาม มีความสงสัยในการหาคำตอบ

16
ไม่ได้ช่วยอะไรครับ ใช้คำค้น combobox report ในช่องค้นหานี้พอได้แนวไหมครับ
--ผมก็เขียนโค้ดไม่เป็นใช้วิธีแบบบ้านๆสำหรับผมก็ เพิ่มฟิลด์คำไปในตารงว่าติกเป็นแบบ y/n ถ้าโดนเลือกช่วยเอาไปออกคิวรี่ ทำปุ่มดูรายงานทั้งสองแบบ แบบ 1 คือครบทุกรายการ แบบที่สองก็เอาที่ทำเครื่องหมายไปออกรายงาน--

หน้า: [1] 2 3 4 5