แสดงกระทู้

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 - ปิ่นณรงค์

หน้า: 1 ... 18 19 20 [21] 22 23 24 ... 32
361
พอดีว่าต้องลง Ms Access ใหม่ เป็น 2013 จากเดิมที่เคยใช้ตัว 2010 แล้ว VBA มันไม่ทำงานครับ ต้องแก้ยังไง



ไปตั้งค่า Trust Center ครับ

1) trust center >> trust center setting > macro setting...
ตั้ง enable all...
2) trust center >> trust center setting > ActiveX setting...
ตั้ง enable all....
ไม่เลือก Save mode...

ตัวอย่างการตั้งค่า
https://www.ugetproject.com/wp/ms-office-access/ตั้งค่าให้vbaทำงาน.html

362


ถ้าต้องการให้หน้ารายงานแสดงข้อมูล หน้าละ 1 EM หรือ 1 รหัสพนักงาน
กำหนดส่วนหัวของกลุ่มEM เป็น ก่อนส่่วนนะครับ


363


ที่เพิ่มเติมคือ
1.สร้าง Module เพื่อสร้างตาราง เพื่อกำหนดช่วงวันที่ Min ของ SinceDay และ Max ของ Today ตาราง  เราก็จะได้ช่วงวันที่ๆต้องการ
2.สร้างคิวรี่ โดยจะกำหนดช่วงให้กับพนักงานแต่ละคน จากตาราง ข้อ 1 โดยกำหนด Criteria >=[SinceDay] And <=[ToDay]
เราก็จะได้ช่วงวันที่ของพนักงานแต่ละคนแล้วครับ



ส่วนตรงฟอร์ม Report ไม่ต้องกำหนดค่าใดๆ แล้ว ให้ลองดูคำสั่งที่ปุ่ม  ส่วนวันที่แสดงคือ min และ max ที่ผมกำหนดไว้ (ใช้อ้างอิงใน Module)
ข้อมูลจะขึ้นเองอัตโนมัติ

ตอนสร้างรายงาน เราใช้ EM หรือรหัสพนักงานเป็น Head Group เพื่อที่จะให้แสดงเป็นรายคนไปครับ

ตัวอย่างด้านล่าง

364


ตัวอย่างโปรแกรมครับ
มีระบบเพิ่มรูปภาพ ระบบเก็บชื่อลงในตาราง และระบบรายงานตามที่บอกครับ

(ชื่อห้ามซ้ำกันนะครับ จากตัวอย่างผมให้ ค้นหาจากชื่อ)
ตรงตั้งชื่อใหม่ ถ้าจะใช้ชื่อเดิมก็ไม่ต้องใส่ ชื่อใหม่ ข้ามไปได้เลย
ก่อนใช้โปรแกรม ให้สร้าง Folder ไว้ที่ Drive D: ชื่อ photo1 ก่อน


ตัวอย่างด้านล่าง


365
ขอบคุณครับอาจารย์ TTT

366
สวัสดีครับอาจารย์ทุกท่าน ตอนนี้ผมได้ช่วยสร้าง Project ให้กับเพื่อนสมาชิกใน Board แห่งนี้อยู่ครับผมติดตรงวิธีการสร้าง DayView WeekView ดังในตัวอย่าง


และ presonal View


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

(ขอบคุณครับ)

367
ห้อง MS Access / : Reserved error 1524 เวลา import
« เมื่อ: 13 มิ.ย. 61 , 15:06:26 »
ผมจะแก้ปัญหาฐานข้อมูล error 3343 โดยผมจะสร้างฐานข้อมูลใหม่แล้ว import ฐานข้อมูลเดิมเข้ามา
แต่ในระหว่างทำการ import ก็ติด Reserved error 1524



เท่าที่ค้นหาดู ไม่ค่อยมีวิธีแก้ปัญหา error นี้เลย ใครมีประสบการณ์เคยเจอ แนะนำหน่อยครับ
ขอบคุณครับ

อ้างถึง
For some reason, some data in one record has been corrupted. The text was replaced with strange symbols.

เว็บนอกมีคนมีปัญหาแบบนี้ครับ เขาบอกว่าเกิดจาก บาง Record มีข้อมูลที่ไม่ถูกต้องอยู่ ให้ลองเช็คดูเบื้องต้นก่อนว่ามีข้อมูลที่มีสัญลักษณ์แปลกปลอมมาหรือไม่  และลองทำ Compact and Repair (ซ่อมแซมฐานข้อมูล)  ดูด้วยครับ

อ้างอิงจากเว็บ http://www.utteraccess.com/forum/index.php?showtopic=1557019

368
ลองแล้ว ตัวเลขID ไม่มาครับ
ความต้องการของผมคือ เวลาคลิกที่ปุ่ม ถ้ามีเลข ID เหมือนกันให้โชว์รายการของ ID แต่ถ้าไม่มี จะเป็นการสร้างรายการใหม่

พอดีผมใช้เวอร์ชั่น 2010 ท่านต้องแปลงเป็น MDB แล้วส่งมาครับ

369
ผมสมมุติ Field ที่ Bound อยู่ของ textbox ของ id_รายการพิมพ์ คือ Print_ID และ อีกฟอร์มปลายทางก็ชื่อ Print_ID เหมือนกัน

ก็กำหนดตามนี้เลยครับ

DoCmd.OpenForm "frm_CoatingList", acNormal, , "Print_ID='" & Print_ID & "'"

370
ห้อง MS Access / : สอบถามการ join Output ครับ
« เมื่อ: 12 มิ.ย. 61 , 16:36:01 »
คิวรี่ sum2_1ที่ผมทำตัวอย่างผ่านการ Sumมาแล้ว จาก คิวรี่ก่อนหน้า พอมาถึง Sum3ก็ไม่ต้องSum อีกคับ

371
ห้อง MS Access / : สอบถามการ join Output ครับ
« เมื่อ: 11 มิ.ย. 61 , 18:11:56 »
ใช้ คิวรี่ Sum3 จากตัวอย่างอันใหม่นะครับ
SELECT Sum2.Date1, Sum2_1.Output AS MaterialEnd, Sum2.OUTPUT AS MaterialSum, IIf(Not IsNull([MaterialEnd] And Not IsNull([MaterialSum])),[MaterialSUm]-[MaterialEnd],[MAterialSum]) AS [OUTPUT]
FROM Sum2_1 RIGHT JOIN Sum2 ON Sum2_1.Date1 = Sum2.Date1;

และตรง Union คิวรี่ แก้เป็น

SELECT Date1, Output,  'ซื้อสุทธิ' as Source,'01' as Row
FROM TblPOFabquery
UNION
SELECT Date1, Output,  'วัตถุดิบต้นงวด' as Source, '02' as Row
FROM tblProductionQuery
UNION
SELECT Date1, Output,  'รวมวัตุดิบในการผลิต' as Source,'03' as Row
FROM sum2
UNION
SELECT Date1, Output,  'วัตถุดิบปลายงวด' as Source,'04' as Row
FROM TblMaterialEndQuery
UNION SELECT Date1, Output,  '(1)วัตถุดิบที่ใช้ไป' as Source, '05' as Row
FROM sum3;

ที่จริงจากอันเก่าใช้คิวรี่ Sum4 สำหรับผลของ (1)วัตถุดิบที่ใช้ไป ซึ่งอันใหม่ผมลบ คิวรี่ Sum3 แล้วแก้ชื่อคิวรี Sum4 เป็น Sum3 แทน

372
ห้อง MS Access / : สอบถามการ join Output ครับ
« เมื่อ: 11 มิ.ย. 61 , 01:14:59 »

ได้ละครับ

ผมกำหนดข้อมูลโดยตั้งชื่อคิวรี่ตามนี้นะครับ

SELECT Date1, Output,  'ซื้อสุทธิ' as Source,'01' as Row
FROM TblPOFabquery
UNION
SELECT Date1, Output,  'วัตถุดิบต้นงวด' as Source, '02' as Row
FROM tblProductionQuery
UNION
SELECT Date1, Output,  'รวมวัตุดิบในการผลิต' as Source,'03' as Row
FROM sum2
UNION
SELECT Date1, Output,  'วัตถุดิบปลายงวด' as Source,'04' as Row
FROM TblMaterialEndQuery
UNION
SELECT Date1, Output,  '(1)วัตถุดิบที่ใช้ไป' as Source, '05' as Row
FROM sum4;

วิธีการหาผลรวมของ รวมวัตถุดิบที่ใช้ในการผลิต  เราแค่ Union ALL ตารางทั้งสองแล้ว Format date เอาเฉพาะเดือนแล้ว Group by แล้ว Sum
(ดู Query Sum2)
โค๊ด: [Select]
SELECT Date1, Output
FROM TblPOFabquery
UNION ALL SELECT Date1, Output
FROM TblProductionquery;

วิธีหาวัตุดิบที่ใช้ไป นำตารางวัตถุดิบปลายงวด(tblMaterialEndQuery) มา Group By แล้ว Sum ไว้ก่อน Format Date เอาแค่เดือนเหมือนเดิม ตั้งชื่อว่า Sum2_1
แล้วไปสร้างอีกคิวรี่นึง
กำหนดดังนี้
โค๊ด: [Select]
SELECT Sum2.Date1, Sum2_1.Output AS MaterialEnd, Sum2.OUTPUT AS MaterialSum, IIf(Not IsNull([MaterialEnd] And Not IsNull([MaterialSum])),[MaterialSUm]-[MaterialEnd],[MAterialSum]) AS [OUTPUT]
FROM Sum2_1 RIGHT JOIN Sum2 ON Sum2_1.Date1 = Sum2.Date1;
ก็จะได้ (1)วัตถุดิบที่ใช้ไป ครับ


373
ผมได้ลองสร้างตัวรายงานขึ้นมาให้โดยกำหนดให้กดเลือกรหัสพนักงานที่ต้องการก่อนแล้ว วันที่เริ่มลา และเวลาจะแสดงอัตโนมัติ



เมื่อกดเปิดรายงานจะได้ประมาณนี้ครับ


รายงานจะแสดงวันที่เรียงลำดับมาเริ่มจากวันเริ่มต้นลา และวันสิ้นสุดการลาของบุคคลนั้นครับ

ตัวอย่างด้านล่าง

374
ขอบคุณครับอาจารย์
แต่ผมต้องการแสดงวันที่ของคนนั้นเลยครับ
เช่นในคิวรีผมเป็นแบบนี้ครับ

แต่ผมต้องการReport ออกมาเป็นแบบนี้ครับแต่ทำอย่างไรครับ

ขอบคุณครับ :prettiness:
ส่งอTable นั้นมาครับผมทำตัวอย่างให้ดู

375
ห้อง MS Access / : สอบถามการ join Output ครับ
« เมื่อ: 09 มิ.ย. 61 , 12:05:42 »
ก่อนเอามา union สร้างคิวรี่ มา บวก หรือ ลบให้เสร็จก่อน แล้วเอาคิวรี่นั้นมา union กันคับเดี่ยว ไว้จะเพิ่มเติมให้นะครับ

376
วันที่ลา 01/04/2561ถึง10/04/2561

เริ่มบอกตั้งแต่วันที่
01/04/2561     ลาป่วย
02/04/2561     ลาป่วย
03/04/2561     ลาป่วย
...
...
10/04/2561    ลาป่วย
ผมต้องทำในคิวรี่หรือใน Report จึงยากรบกวนอาจารย์หน่อยครับ


ที่ Criteria ของ Field Date ใส่ไปว่า
โค๊ด: [Select]
Between #1/4/2561# And #10/4/2561#
จะแสดง ข้อมูลช่วงระหว่างวันที่ 1 ถึง 10 ครับ

แต่สมมุติช่องสถานะการมาทำงาน มีหลายตัวเลือกเช่น ลาป่วย ประชุม ทำงาน หรือ อื่นๆ ก็ไปกำหนด Criteria ของช่องสถานะการทำงานด้วย


377
รบกวนอีกครับ

Sub CalTotal()
Me.Total = CDbl(Nz(Me.Amount, 0)) * CDbl(Nz(Me.Price, 0))
Me.Text37.Requery
End Sub

ช่่วยอธิบาย
CDbl(Nz  คืออะไร
.Requery คืออะไร


ขอบคุณครับ

CDbl คือ การแปลงเป็น double ใช้กรณี ที่ข้อมูลเป็น text หรือจำนวนเต็ม หรืออื่นๆ เมื่อกำหนด double ก็จะได้ค่าเป็นจำนวน มีทศนิยมด้วย


.Requery คือ การสั่ง แสดงผลใหม่เพื่อแสดงค่าล่าสุดที่เปลี่ยนแปลงไป ใช้ใน control หรือ Form หรืออื่นๆแล้วแต่กรณี

378
ห้อง MS Access / : Alt+ลูกศรลง
« เมื่อ: 08 มิ.ย. 61 , 18:33:04 »
จะใช้คำสั่ง Alt+ลูกศรลง เพื่อให้  combo ลงอัตโนมัติ แต่ไม่รู้ ว่าจะโค๊ตยังงัยครับ รบกวนอาจารย์ด้วยครับ

ผมสมมุติ Combobox ชื่อ Cb1 นะครับ ใช้ Event Gotfocus
โค๊ด: [Select]
Private Sub Cb1_GotFocus()
Me.Cb1.Requery
Me.Cb1.Dropdown
End Sub
เมื่อ curser ตกที่ combobox นั่นก็จะแสดงรายการทันที


หน้า: 1 ... 18 19 20 [21] 22 23 24 ... 32