แสดงกระทู้

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

หน้า: 1 2 3 [4] 5
55
สวัสดีครับ
ผมไปหาโค้ดของสีที่ต้องการแล้วแปลงให้เป็น RGB แล้วครับ จะได้ไม่เสียเวลาแปลง
แต่กลับมีปัญหากับโค้ดง่าย ๆ

error 13 : type mismatch
โค๊ด: [Select]
Private Sub Detail_Paint()
 Me.MColor.BackColor = RGB(130, 119, 118)
End Sub

แค่นี้ก็ error เฉย
งงมากเลยครับ ตัวอย่างการใช้ก็ RGB() ก็ไม่น่าผิด แบบนี้เกิดจากอะไรครับ

ผมลองแนบไฟล์มาด้วย



56
ขอบคุณมากคร้าบทุกท่าน   :love:

57
สวัสดีครับ
มีวิธีเปลี่ยนสีช่องแบบภาพตัวอย่างเป็น Continuous Forms แต่อยากให้แต่ละแถวที่ดึงข้อมูลออกมา มี 1 ช่องที่แสดงสี แต่สีจะไม่เหมือนกันเลย โดยโค้ดสีถูกเก็บไว้ในตารางนี้แหละ

โดยที่ไม่ใช้ Conditional Formatting Rules นะครับ เพราะสีเยอะมาก



ขอบคุณครับ

58
รันไม่ได้ คือไม่ขึ้นอะไรเลยหรอครับ

ลงวินโดว์ใหม่แล้วได้ แสดงว่าไฟล์บางอย่างหายไปรึป่าว

59
ขอแชร์ฟังก์ชันที่ผมเอาไว้สร้างเลขที่ invoice อัตโนมัติ ละกันนะครับ

- รันเลขที่อัตโนมัติ โดยรูปแบบเป็น ABC001-05-18 (ABC = คำนำหน้าเฉยๆ / 001 = เลขที่ / 05 = เลขเดือน / 18 = เลขปี) (INV_ID เป็น Short Text และเป็น Primary Key)
- เป็นการเรียงเลข invoice โดยตรวจสอบจากเลขที่เก่า ขึ้นเดือนใหม่ นับ 001 ใหม่
- เขียนฟังก์ชั่นเก็บไว้ที่ Modules
- ผมเรียกใช้โดยสร้างตัวแปรตอนกดปุ่ม
โค๊ด: [Select]
AutoGenINV_ID as string
AutoGenINV_ID  = AutoINV_ID

- โค้ดอาจจะเยอะไปหน่อย แต่มันสามารถเขียนให้สั้นกว่านี้ได้อยู่ ลองดูโค้ดแล้วปรับใช้ สลับลำดับเลขเดือน / ปี เองนะครับ

โค๊ด: [Select]
Public Function AutoINV_ID() As String
On Error GoTo ErrorHandlerFx

'get Now date
Dim NowMM As String 'เลขเดือนปัจจุบัน
Dim NowYY As String 'เลขปีปัจุบัน
Dim StrINV_RunNumber As String 'เลข inv สุดท้ายที่ได้จากกระบวนการทั้งหมด
Dim getLastINV As String 'เลข inv ล่าสุด
Dim IntINV As Integer 'ไว้พักค่าเฉยๆ
Dim LastINV_MM_YY As String 'เลขรวม inv+MM+YY
Dim Now_MM_YY As String 'เลขเดือน/ปี ปัจุบัน
Dim NewINV As String 'เลข inv ใหม่
Dim LastDate As String 'วันที่ออก inv ล่าสุด

'get Date
NowMM = Month(Date)
If NowMM < 10 Then
NowMM = "0" & NowMM
End If

NowYY = Year(Date) 'รับค่าปีปัจจุบัน (ไม่ได้ขึ้นอยู่กับรูปแบบเวลาของเครื่อง)
NowYY = Right(NowYY, 2) 'เอาเฉพาะ 2 ตัวท้าย *จะทำงานผิดพลาด ถ้าขึ้นปี ค.ศ.2100 ให้เขียนเช็คปีแล้วหักลบเอาเองเด้อ
Now_MM_YY = NowMM & "-" & NowYY 'เอาค่าเดือนและปีมารวมกัน จะกลายเป็น "07-18"
'----------------------------------------------

LastDate = DMax("INV_Date", "Invoice") 'ตรวจสอบวันที่ออก inv ล่าสุด
getLastINV = Nz(DLookup("INV_ID", "Invoice", "Format(INV_Date, ""ddmmyyyyhhmm"") = " & Format(LastDate, "ddmmyyyyhhmm")), "ABC000-00-00") 'ดึงเอาเลข inv ล่าสุด โดยเปรียบเทียบจากวันเวลาที่ออก inv แต่ถ้าไม่มีข้อมูลจะกำหนดใหม่เป็น "ABC000-00-00"

'สมมติให้ getLastINV มีค่าเท่ากับ "ABC051-07-18"
LastINV_MM_YY = Right(getLastINV, 5) 'ตัด 5 อักษรจากขวา ได้ "07-18"

getLastINV = Left(getLastINV, 6) 'ตัด 6 หลักจากซ้าย ได้ "ABC051"
getLastINV = Right(getLastINV, 3) 'ตัด 3 หลักจากขวา ได้ "051" คือ inv ลำดับที่ 51 ในเดือนนี้

'ตรวจสอบถ้าเดือนและปีปัจจุบัน = เดือนและปีล่าสุดของเลขที่ inv หรือไม่
If Now_MM_YY = LastINV_MM_YY Then
IntINV = CInt(getLastINV)
IntINV = IntINV + 1 'จะได้ 51 + 1 = 52
Else
IntINV = 1 'ถ้าไม่เท่า แสดงว่าขึ้นเดือนใหม่ ให้นับ 1 ใหม่
End If

'ใส่เลข 0 ด้านหน้า เพื่อให้เป็นเลข 3 หลัก
Select Case IntINV
Case Is < 10
        StrArrayINV_Output = "00" & CStr(IntINV)
Case Is < 100
        StrArrayINV_Output = "0" & CStr(IntINV) 'ตอนนี้ IntINV = 51 จะเข้าเคส <100 ก็เติม 0 ไป 1 ตัว รวมเป็น "051"
Case Is < 1000
        StrArrayINV_Output = CStr(IntINV)
Case Else
        MsgBox "เกิดข้อผิดพลาด ไม่สามารถสร้างเลขที่ invoice ได้ !!!"
        Exit Function
End Select

StrINV_RunNumber = "ABC" & StrINV_RunNumber & "-" & Now_MM_YY 'สุดท้ายได้ "ABC052-07-18"
AutoINV_ID = StrINV_RunNumber คืนค่าเลข inv ที่ได้
Exit Function

'On Error Handler
ExitSubFx:
AutoINV_ID = "ใส่เลขที่ invoice"
Exit Function

ErrorHandlerFx:
MsgBox "Error Number:" & Err.Number & " " & "ไม่สามารถสร้างเลขที่ invoice อัตโนมัติได้ กรุณาใส่เลขที่เอง "
'Call onError_FX(Err.Number)
Resume ExitSubFx

End Function

60
ห้อง MS Access / : unrecognized database format
« เมื่อ: 07 ก.ค. 61 , 09:03:06 »
ตรง ERROR 3443
ตัวฐานข้อมูล และโปรแกรม ได้นำมาทำใหม่จาก Access เวอร์ชั่นเก่าหรือเปล่าครับ
ขอดูตรงการกำหนด reference  ของ  DAO library ตรงหน้าต่างใส่โค้ด Tools->References ว่ามีพวก "Microsoft Office 12.0 Access database engine Object Library"  หรือเปล่าถ้า   Office 10  ใช้  14.0

สร้างจากเวอร์ชั่นใหม่ 2016 ตั้งแต่แรกเลยครับ

reference 



61
ห้อง MS Access / : unrecognized database format
« เมื่อ: 06 ก.ค. 61 , 15:58:36 »
ก่อนอื่นต้องบอกว่า ใช้แค่ คอมพิวเตอร์ธรรมดา ๆ ลง windows 10 นะครับ เป็นเครื่องแม่ข่าย สำหรับเก็บไฟล์ฐานข้อมูล

ตอนเกิด error ผมก็จะไปกดเปิดไฟล์ backend (ที่มีแต่ตาราง) เปิดมาปุ๊บ access มันจะแจ้งประมาณว่าฐานข้อมูลเสียหาย พอกด OK มันก็จะซ่อมแซมให้เองเลย โดยที่ผมไม่ต้องไปเลือกดเมนู compact & repair



หลังจากเสร็จแล้ว จะแสดงแบบนี้ พอกด ok ก็จะใช้ได้ มองเห็นตาราง


แล้วผมก็กดปิดไฟล์ backend แล้วไปเปิดไฟล์ frontend ให้งานได้ปกติครับ

62
ห้อง MS Access / : unrecognized database format
« เมื่อ: 06 ก.ค. 61 , 14:33:38 »
สวัสดีครับ

จากที่ไปลองดู ๆ ping มี timed out บ้าง แต่ฐานข้อมูลก็ใช้ได้ปกติ ซักพักใหญ่ ๆ ถึงจะ error 3443
บางครั้ง เมื่อฐานข้อมูล error 3443 มาดูที่ ping ไว้ก็ปกติ ไม่มี timed out เลย จนกระทั่งฐานข้อมูล error 3443 อีกครั้ง แต่ค่า ping ก็ยังปกติ ไม่มี timed out
จึงไม่สามารถระบุได้แน่ชัดเลย ว่ามันเกี่ยวข้องกัน
(timed out ไม่เกิน 1 วิ)

แล้วก็มี error ใหม่ ตามภาพ (นาน ๆ ทีเป็นครับ)




ซึ่งผมค้นดูแล้วก็เกี่ยวข้องกับปัญหาการอ่านข้อมูลฮาร์ดดิส (แต่ไม่แน่ใจว่าเครื่องแม่หรือเครื่องลูก)
ส่วน valid bookmark ยังงง ใน access ผมไม่ได้ใช้อะไรเกี่ยวกับ bookmark เลย
ดู ๆ แล้วท่าจะเป็นหลายส่วน เหอะ ๆ


63
ห้อง MS Access / : unrecognized database format
« เมื่อ: 27 มิ.ย. 61 , 16:19:53 »
ปักครับ



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

ถ้าวางฐานข้อมูลไว้ที่เครื่องเราเองหล่ะครับ จะเกิดปัญหาหรือไม่

ไม่เคยลองใช้งานจริงจังครับ
เอามาทดลองเพิ่ม แก้ไขข้อมูลเล็ก ๆ น้อย มันก็ไม่มีปัญหาอะไร

แต่ใช้งานจริง ใช้หลายคน ไฟล์หลังบ้านอยู่ที่เครื่องผม
เครื่องลูก link table ด้วยเลข ip มาที่เครื่องผม แต่ก็ยัง error 3443: Unrecognized database format เหมือนเดิม
แม้ตอนนั้น ใช้งานแค่เครื่องลูกเครื่องเดียว (link table) ก็ error เหมือนกัน

แต่ทุกครั้งที่ error ก็จะมาเปิดไฟล์ฐานข้อมูลหลังบ้าน มันก็จะซ่อมแซมให้อัตโนมัติ แล้วก็ใช้งานได้ปกติ
เป็นแบบนี้ทุกวันซ้ำ ๆ

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

ปล. access 2016 นะครับ

64
ห้อง MS Access / : unrecognized database format
« เมื่อ: 27 มิ.ย. 61 , 14:20:51 »
ปักครับ



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

65
ห้อง MS Access / : Reserved error 1524 เวลา import
« เมื่อ: 13 มิ.ย. 61 , 16:30:54 »
compact & repair แล้วครับเป็นเหมือนเดิม

แต่ผมแก้ปัญหาโดยการ copy ทีละคอลัมน์ไปเลย ฮ่าๆ

ขอบคุณครับ

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



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

67
หลังจากที่ผมแก้โดยการเปลี่ยนเป็นเรียกผ่าน shortcut และ ยกเลิก map drive ก็ยังเป็นอยู่ครับ แต่ไม่บ่อยเท่าเดิม
จากเดิมประมาณวันละ 5 ครั้ง ตอนนี้เหลือวันละ 1 ครั้ง ประมาณนี้ครับ

ส่วน error ก็เป็นเหมือนเดิม พิมพ์ ๆ ใช้งานฐานข้อมูลอยู่ ก็เป็น

68
ผมเป็นคนทำเองทั้งหมดครับ เริ่มศึกษาจากศูนย์จากเว็บนี้แหละครับ

เป็น Windows ธรรมดาครับ และเดาว่าคงเป็นแค่การแชร์ไฟล์ธรรมดา ๆ ของเครื่องในวงแลนครับ
แต่ก็ตั้งค่าที่เครื่องแม่ให้ไม่ต้องถามรหัสผ่าน

เบื้องต้นผมจะลองถอนแล้วติดตั้งใหม่ก่อน
ยังไงขอบคุณมากครับ



69
ping ไม่ช้านะครับ 1ms ทุกเครื่อง

แต่อาการเรื่อง map drive จะเป็นเฉพาะตอนเปิดเครื่องใหม่ครับ คือ drive ที่ทำการ map ไว้จะเป็น กากบาท ดับเบิ้ลคลิกก็ยังไม่เชื่อมต่อ ต้องรอซักพัก 5-10 นาที ถึงจะเชื่อม

แล้วถ้าไม่ map drive จะทำการลิ้งฐานข้อมูลได้ยังไงบ้างครับ

ขอบคุณครับ

**เพิ่งไปส่องช่องอาจารย์มา เป็นโอตะด้วยหรอครับ 555+

70
เป็นเหมือนเดิมครับ :cry:

หลังจากช่วงอัพเดทใหญ่ของ windows ก็เป็นเเลย แล้วเหมือนจะมีปัญหาว่า path ของ map drive ฐานข้อมูล วินโดวไม่ยอมคืนค่าให้ ต้องรอนานมากกว่าจะเข้าได้

71
แล้วการเข้าด้วยการ decompile ตลอดไปเลย
มันส่งผลต่อข้อมูลรึป่าวครับ หรือมีข้อเสียอะไรรึป่าว

ขอบคุณครับ

72
โดยสร้าง shortcut แล้ว พิมพ์ path แล้วต่อด้วย decompile (ใช่มั้ยครับ ?)
ตอนนี้ทำให้เครื่องลูกหมดเรียบร้อยแล้วครับ

ลองใช้ไปก่อน ตอนนี้ยังไม่พบ error ครับ

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