แสดงกระทู้

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

หน้า: [1] 2 3 4 ... 9
2
ใช้หลักการค้นหาจุดทศนิยม  แล้วก็ตัดเอาตัวเลขหน้าจุด หลังจุด มาแปลงเป็นตัวเลข  ทำแบบบ้าน  แบบง่ายกว่านี้ทำไม่เป็น  :sweat: :sweat: :sweat:

Option Compare Database

Function chkjood(tjood) As String

    Dim T1, L1 As Integer
    Dim Fn, Ln As String

        T1 = InStr(tjood, ".")
        L1 = Len(tjood)
       
        If IsNumeric(tjood) Then
            If T1 = 1 Then
                chkjood = Round("0" & tjood, 3)
            Else
                If T1 = L1 Then
                    chkjood = Round(Replace(tjood, ".", ""), 3)
                Else
                    chkjood = Round(tjood, 3)
                End If
            End If
        Else
            If T1 = 1 And L1 = 1 Then
                chkjood = ""
            ElseIf T1 = 1 And L1 > 1 Then
                If IsNumeric(Mid(tjood, T1 + 1, 3)) Then
                    chkjood = "0." & Mid(tjood, T1 + 1, 3)
                ElseIf IsNumeric(Mid(tjood, T1 + 1, 2)) Then
                    chkjood = "0." & Mid(tjood, T1 + 1, 2)
                ElseIf IsNumeric(Mid(tjood, T1 + 1, 1)) Then
                    chkjood = "0." & Mid(tjood, T1 + 1, 1)
                Else
                    chkjood = ""
                End If
            ElseIf T1 > 1 And L1 > 1 Then
                If IsNumeric(Left(tjood, T1 - 1)) Then
                    Fn = Left(tjood, T1 - 1)
                Else
                    If T1 = 2 Then
                        If IsNumeric(Left(tjood, 1)) Then
                            Fn = Left(tjood, 1)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 3 Then
                        If IsNumeric(Mid(tjood, T1 - 1, 1)) Then
                            Fn = Mid(tjood, T1 - 1, 1)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 4 Then
                        If IsNumeric(Mid(tjood, T1 - 2, 2)) Then
                            Fn = Mid(tjood, T1 - 2, 2)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 5 Then
                        If IsNumeric(Mid(tjood, T1 - 3, 3)) Then
                            Fn = Mid(tjood, T1 - 3, 3)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 6 Then
                        If IsNumeric(Mid(tjood, T1 - 4, 4)) Then
                            Fn = Mid(tjood, T1 - 4, 4)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 7 Then
                        If IsNumeric(Mid(tjood, T1 - 5, 5)) Then
                            Fn = Mid(tjood, T1 - 5, 5)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 8 Then
                        If IsNumeric(Mid(tjood, T1 - 6, 6)) Then
                            Fn = Mid(tjood, T1 - 6, 6)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 9 Then
                        If IsNumeric(Mid(tjood, T1 - 7, 7)) Then
                            Fn = Mid(tjood, T1 - 7, 7)
                        Else
                            Fn = ""
                        End If
                    ElseIf T1 = 10 Then
                        If IsNumeric(Mid(tjood, T1 - 8, 8)) Then
                            Fn = Mid(tjood, T1 - 8, 8)
                        Else
                            Fn = ""
                        End If
                    End If
                End If
               
                If IsNumeric(Mid(tjood, T1 + 1, 3)) Then
                    chkjood = Fn & "." & Mid(tjood, T1 + 1, 3)
                ElseIf IsNumeric(Mid(tjood, T1 + 1, 2)) Then
                    chkjood = Fn & "." & Mid(tjood, T1 + 1, 2)
                ElseIf IsNumeric(Mid(tjood, T1 + 1, 1)) Then
                    chkjood = Fn & "." & Mid(tjood, T1 + 1, 1)
                Else
                    chkjood = Fn
                End If
            End If
        End If
End Function

------------------------------------------------------------------------------

ใส่สูตรในคิวรี่  =IIf(chkjood([ฟิลด์ข้อมูล])="",Null,CDbl(chkjood([ฟิลด์ข้อมูล])))

3
เท่าที่เคยทำ ถ้าตาราง ที่นำมาเชื่อม คิวรี่ มี primary key (เชื่อมด้วยฟิลด์ primary key) ก็จะสามารถแก้ไขข้อมูลได้

4
น่าจะใช้ การเคลื่อนย้ายเม้าส์ และ การกำหนดเวลา ครับ  อาจใช้ทั้ง 2 ร่วมกัน หรือ อย่างใดอย่างหนึ่ง

Private Sub MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
   เงื่อนไข
      ตรงเงื่อนไข ก็เปิดฟอร์ม
End Sub

Private Sub Form_Timer()
  เงื่อนไข
     ตรงเงื่อนไข ก็เปิดฟอร์ม
End Sub

5
ประโยชน์จากที่ตั้งใจไว้ เพื่อ.....???   ถามเผื่อคนอื่นมีวิธี/ไอเดียที่คล้ายๆ กัน  แต่วิธีที่แตกต่าง  จะได้ช่วยได้ครับ

6
สร้างคิวรี่แบบแท็บไขว้  แล้วเอาคิวรี่ที่ได้  สร้างคิวรี่อีกคิวรี่หนึ่ง

7
Monday1  Monday2  1 หรือ 2 ได้มายังไงครับ

สร้างโมดูล
Function dayname(d)
    If Weekday(d) = 1 Then dayname = "Sunday"
    If Weekday(d) = 2 Then dayname = "Monday"
    If Weekday(d) = 3 Then dayname = "Tuesday"
    If Weekday(d) = 4 Then dayname = "Wednesday"
    If Weekday(d) = 5 Then dayname = "Thursday"
    If Weekday(d) = 6 Then dayname = "Friday"
    If Weekday(d) = 7 Then dayname = "Saturday"
End Function

ใส่สูตรในคิวรี่
การรัน ID : dayname([วันที่]) & "ค่า1หรือ2 จะเอามาจากไหนน้อ" & "-" & IIf([หมายเลขตัวอย่าง] Mod 100=0,100,[หมายเลขตัวอย่าง] Mod 100)

ปล. ค่าตัวเลขต่อท้ายชื่อวัน หาใส่เองนะครับ

8
Me.assdate = Now()
ตอนเพิ่มข้อมูล หรือ ตอนบันทึกข้อมูลเสร็จ เลือกเอาอย่างใดอย่างหนึ่ง  และ รูปแบบการเก็บข้อมูลของ assdate ก็ต้องเป็น General Date

9
Function updateAmountNew()
   On Error GoTo erC

        Dim db As Database
        Dim rstOut As Recordset
        Dim f As Field
        Dim taw As String
            Set db = CurrentDb
            Set rstOut = CurrentDb.OpenRecordset("ตาราง/คิวรี่")
           
        rstOut.MoveFirst
        Do Until rstOut.EOF
            If InStr(rstOut.Fields("DebitCredit").Value, "Credit") > 0 Then
                taw = rstOut.Fields("Amount").Value
            End If
        For Each f In rstOut.Fields
            DoCmd.SetWarnings False
            rstOut.Edit
            rstOut![AmountNew] = taw
            rstOut.Update
        Next
            rstOut.MoveNext
            If InStr(rstOut.Fields("DebitCredit").Value, "Credit") <= 0 Then
                taw = taw
            Else
                taw = rstOut.Fields("Amount").Value
            End If
        Loop
       
            rstOut.Close
            Set db = Nothing

Exit Function

erC:
    Select Case Err
        Case 0
        Case 3021
            Exit Function
        Case Else
            MsgBox "Function updateAmountNew" & " > " & Err.Description & " รหัส " & Err.Number
    End Select
End Function

10
ใช้แบบนี้ครับ
โค๊ด: [Select]
=DLookUp("[fname]","[students]","[code]=[Forms]![FeditGroup]![fsubEditGroup].form.[code]")

11
น่าจะแบบนี้

DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdDeleteRecord


ถ้าไม่ได้คงต้องส่งลบด้วยคิวรี่

12
ตย. แกะเอาเด้อ

13
ผมเคยทำของ สธ. คำนวณ ณ 30 ก.ย.  แต่ก็ซับซ้อน เรื่องการคำนวณ ทำ 7 คิวรี่ + 2 แมรโคร ทำงานร่วมกัน  พอถึง 1 บาท  ถ้าครุภัณฑ์ยังไม่จำหน่าย ก็ใส่ 1 บาท ไปเรื่อยๆ จนกว่าจะจำหน่าย   :sweat: :sweat: :sweat:


14
ห้อง MS Access / : การใช้ MsgBox
« เมื่อ: 01 ก.ค. 66 , 23:45:14 »
ป้องกันการปิดด้วย X
Private Sub Form_Unload(Cancel As Integer)
    Cancel = True
End Sub

ยกเลิกการป้องกันการปิดด้วย X
Private Sub Command1_Click()
   Me.OnUnload = ""
End Sub

15
ไฟล์อาจจะไม่อยู่ในรูปแบบของ Excel อาจเป็นรูปแบบ html ลองบันทึกแฟ้มเป็น Excel2003 (.xls) ลองดูครับ

17
สั่ง "พิมพ์" ออกด้วยไดรเวอร์ปริ๊นเตอร์ ของโปรแกรม Snagit   :cool: :cool: :cool: :cool:

18
ไม่รู้ใช่ป่าวแบบนี้

หน้า: [1] 2 3 4 ... 9