แสดงกระทู้

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 ... 3 4 5 [6] 7
91
ผมชื่นชมการตั้งกระทู้แบบนี้ครับ
มีการตั้งโจทย์สอบถามเป็นขั้นเป็นตอนมีการยกตัวอย่างด้วยรูป
และบอกถึงปัญหาที่พบ หรือ ผลลัพธ์ที่อยากได้ อย่างชัดเจนง่ายต่อการตอบมากๆ ครับ  :grin: :grin:
ท่านอื่นถ้าสะดวก ตั้งกระทู้แบบนี้จะดีต่อผู้ตอบและคนตอบจะได้คำตอบที่รวดเร็วครับ
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

92
ห้อง MS Access / DLookup บนฟอร์มโดยใช้โค้ด
« เมื่อ: 22 ต.ค. 62 , 09:57:18 »
ต้องการใส่ข้อมูลในช่องที่ 1 แล้วให้ปรากฏข้อมูลช่องที่ 2 ค่ะ (ทำตารางฐานข้อมูลแล้ว)


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


รบกวนผู้รู้ช่วยดูให้หน่อยค่ะ ขอบคุณค่ะ  :prettiness:
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

93
ขอบคุณมากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

94
ขอบคุณมากครับ โมดูลนี้สำเร็จแล้วครับ _/|\_ งมอยู่กับเรื่องนี้ร่วมเดือน
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

95
ห้อง MS Access / : [VBA] การทำ search โดย combobox error
« เมื่อ: 04 ก.ย. 62 , 14:52:44 »
มาอัพเดทค่ะ ชื่อผิดจริงๆด้วยค่ะ ตอนนี้เป้ทำได้แล้ว ฮรืออออออออออออดีใจมากๆเลยค่ะ ขอบคุณมากๆเลยนะคะ ขอบคุณจริงๆค่ะ  :love: :love: :love:
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

96
- คิวรี่นี้ซับซ้อนเสียหน่อย ถ้าเขียนจริงๆคงจะเป็น SELECT ซ้อนกัน 3 ชั้น แต่เพื่อให้ดูง่าย(หรือเปล่าไม่รู้)และคงการใช้ DCount() เอาไว้ ก็จะออกมาเหลือ 2 ชั้น
- ในนี้ผมสมมุติให้ชื่อเทเบิลว่า TB และชื่อฟิลด์ว่า dt,status,type คุณไปเปลี่ยนเองแล้วกัน
- ผมเขียนเพื่อให้ดูสะอาดตาขึ้นโดยขึ้นบรรทัดใหม่ แต่สามารถนำเอามาต่อกันโดยมีช่องว่างคั่นสักตัวนึงก็ได้นะครับ เช่น บรรทัดที่ 1 และ 2 สามารถเขียนเป็น SELECT [Month-Year], Inprogress, Complete, [Inprogress]+[Complete] AS Total, ก็ได้
โค๊ด: [Select]
SELECT
[Month-Year], Inprogress, Complete,
[Inprogress]+[Complete] AS Total,
Format([Complete]/([Inprogress]+[Complete])*100,"0.00") AS [% Complete]
FROM
(SELECT Format([dt],"mmm-yyyy") AS [Month-Year],
First(Month([dt])) AS M,
First(Year([dt])) AS Y,
First(Val(DCount("*","TB","Status = '2' and Type = '1' and (month(dt) = " & Month([dt]) & ") and (year(dt) = " & Year([dt]) & ") "))) AS Inprogress,
First(Val(DCount("*","TB","Status = '1' and Type = '1' and (month(dt) = " & Month([dt]) & ") and (year(dt) = " & Year([dt]) & ") "))) AS Complete
FROM TB
GROUP BY Format([dt],"mmm-yyyy"))  AS Q1

ORDER BY Y, M;
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

97
ผม มี ตาราง ดังนี้
ID     Date         Status          Type
1      1-7-2019       1                2
2      2-7-2019       2                1
3      3-7-2019       1                1
4      4-7-2019       1                1
5      1-8-2019       1                1
6      2-8-2019       2                1
7      3-8-2019       2                2
8      4-8-2019       1                1
status 1 = complete
status 2 = Inprogress

ต้องการ query ออกมาให้ได้แบบตารางข้างล่าง โดย เอาเฉพาะ Type 1

Month   Inprogress    complete    Total    %complete           
July            1                2              3             66.66 (2/3)
August        1                2              3             66.66 (2/3)

ตอนนี้ ลองใช้ Dcount รันออกมา ได้  Inprogress เป็น 0 ครับ
โค๊ด: [Select]
SELECT Format([workorderDate],"mmm-yy") AS [Date],
DCount("[workstatusID]","[tbl_workorder]","[workstatusID"="1") AS Inprogress
FROM tbl_workorder
GROUP BY Format([workorderDate],"mmm-yy"), tbl_workorder.worktypeID
HAVING (((tbl_workorder.worktypeID)=1));

รบกวนอาจารย์ ช่วยทีครับ
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

98
ห้อง MS Access / : Import excel file แบบมีเงื่อนไข
« เมื่อ: 04 ส.ค. 62 , 10:28:03 »
Import เข้ามาทุกบรรทัดลงในเทเบิลชั่วคราว T1  แล้วสั่ง UPDATE SQL statement ข้างล่างเพื่อเอาข้อมูลของคอลัมน์ V ใน T1 ไปใส่ลง V ของเทเบิล T2 ที่มีอยู่ก่อนใน Access อยู่แล้ว  โดยเลือกเฉพาะที่มี ID เหมือนกัน

UPDATE T1 INNER JOIN T2 ON T1.ID = T2.ID SET T2.V = T1.V
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

99
ทำได้หลายวิธีครับ

วิธีนึงคือใช้ CrosstabQuery ก็จะได้ผลสรุปเป็นตารางแบบนี้
ID 2 หยุดวันที่ 5
ID 3 หยุดวันที่ 4




อีกวิธีก็สร้างคิวรีแบบผลคูณ Cartesian เพื่อแสดง ID กับ Date ทั้งหมด รวมทั้งวันที่หยุดไปด้วย


จากนั้นก็นำคิวรีมาสร้างคิวรี เพื่อเลือกเฉพาะวันที่หยุดไปออกมาแบบนี้



โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

100
ภาพตัวอย่างรายงานที่ได้ ขอตัดเป็นภาพมาให้ดูนะ

ภาพที่ 1 หน้าแรก


ภาพที่ 2 จะได้ยอดยกมาและยอดรวม



และหน้าสุดท้ายก็จะได้ยอดรวมครับ




โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

101
ได้ละครับผม ตามอาจารย์เลยครับ

ขอบคุณมากๆเลยครับอาจารย์ :miao:
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

102
ยินดีครับ thai access บอร์ดแห่งการแชร์ประสบการณ์ การแบ่งปันและการเรียนรู้ครับ ผมเริ่มจากไม่เป็นเลยได้เรียนรู้จากบอร์ดนี้แหละครับ จนพอที่จะแนะนำได้บ้าง :meaw:
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

103
เรียนท่านอาจารย์ปิ่นณรงค์ ผมได้ทำตามขั้นตอนที่อาจารย์แนะนำแล้วครับ ผมขอโทษอาจารย์ด้วยครับที่บอกรายเอียดไม่ชัดเจนและบอกไม่ครบครับ เรคราคาในตาราง tbl_Rate การคิดราคาบริษัทขนส่งจะคิดแบบ
ถ้าไม่เกิน 1 kg คิด 1 kg
ช่วง 2-3 kg คิด 3 kg
ช่วง 4-5 kg คิด 5 kg
ช่วง 6-10 kg คิด 10 kg
ช่วง 11-15 kg คิด 15 kg
ช่วง 16-20 kg คิด 20 kg
ช่วง 20 kg ขึ้นไป หลักการคิดผมยังไม่แน่ใจเดียวผมไปขอข้อมูลกับบริษัทขนส่งและจะอัพเดทอาจารย์อีกครั้งครับ

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

ขอบคุณมากครับผม
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

104
ใช้การกำหนด Zone โดยใช้ Dlookup ครับ
Copy SQL นี้ไปวางทับ แล้วรันดูครับ

ถ้าจะให้แสดง Rate โดย กำหนดให้ตรวจสอบ Zone และช่วงของ Weight ต้องเหมือนกันใส่แบบนี้ครับ
โค๊ด: [Select]
SELECT tbl_DLV.ID, tbl_DLV.Weight_Chg, tbl_Area.Zone, tbl_DLV.Total_Exception, tbl_DLV.VAS, tbl_Remote.Amount, Nz([Total_Exception])+Nz([VAS])+Nz([Amount]) AS Audit, IIf([Weight_Chg] Between 1 And 2,"1") & IIf([Weight_Chg] Between 3 And 4,"3") & IIf([Weight_Chg] Between 5 And 9,"5") & IIf([Weight_Chg] Between 10 And 14,"10") & IIf([Weight_Chg] Between 15 And 19,"15") & IIf([Weight_Chg]=20,"20") AS Weight_ChgRate, IIf([Zone]="BKK",DLookUp("BKK","tbl_Rate","Weight = " & Nz([Weight_ChgRate],0))) & IIf([Zone]="UPC1",DLookUp("UPC1","tbl_Rate","Weight = " & Nz([Weight_ChgRate],0))) & IIf([Zone]="UPC2",DLookUp("UPC2","tbl_Rate","Weight = " & Nz([Weight_ChgRate],0))) AS Rate
FROM tbl_Remote RIGHT JOIN (tbl_Area RIGHT JOIN tbl_DLV ON tbl_Area.Postal_Code = tbl_DLV.Postal_Code) ON tbl_Remote.Postal_Code = tbl_DLV.Postal_Code;

โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

105
เช่น พนักงาน ID  A001 อยากจะให้ดึงรูปภาพ ของพนักงานคนนั้น มาแสดงในฟอร์ม หรือ รายงาน โดยอยากให้ผูก ID กับชื่อ image file ทำอย่างไรครับ

\images\A001.jpg
\images\A002.jpg
\images\A003.jpg
\images\A004.jpg

ขอบคุณมากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

106
ขอบคุณอ.ปิ่นณรงค์เป็นอยากมากครับ
โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

107
ขอบคุณครับ ผมยังต้องปรับขนาดกระดาษ และ รูปภาพ ด้วยครับเพราะกระดาษที่ใช้พิมพ์มีขนาดประมาณ 3*5 นิ้ว ครับ
ยังหาที่ปรับไม่ได้...แต่จะมีประโยชน์สำหรับผู้ที่ทำเต็มกระดาษเอ4ใช้ได้ทุกกลุ่มสาระการเรียนรู้
เลยครับ



ที่ตั้งรายงานกด ตรงนี้เพื่อกำหนดขนาดที่ต้องการครับ ปกติจะไม่มีขนาดกระดาษ 3 x 5 ให้กด Edit เข้าไปเพื่อเพิ่มขนาดที่เราต้องการ
กำหนด หน่วยเป็น Inch นะครับ


แล้วกำหนดขนาดกระดาษ
เป็นขนาดที่เรากำหนดไว้



ถ้ากำหนดเองแต่ยังไม่ได้ ก็ส่งรหัส TeamView มาที่กล่องข้อความเดี่ยวผมตั้งค่าให้

โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

108


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

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


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

โพสต์นี้ได้รับคำขอบคุณจาก: SakDa

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