แสดงกระทู้

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 - 001Jetnipit

หน้า: [1] 2 3 4 ... 12
1
ห้อง MS Access / Insert ค่าใน sql
« เมื่อ: 02 พ.ย. 64 , 13:45:12 »
โค๊ด: [Select]
DoCmd.RunSQL "INSERT INTO Table2Temp (ID) values (1)"

สอบถามครับ ผมต้องการ Insert ค่าในฟิลด์ ID ว่า 1 แต่ไม่ทราบว่าตรง Values จะให้มันใส่คำว่า 1 ยังไงหรอครับ ใส่แบบนี้ไปแล้ว Error

2
อ่านแล้วผมนึกถึงตอนเขียน VB ใช้ Application.Doevents() ใน VBA Access ใช้เหมือนกันหรือเปล่าผมยังไม่เคยใช้
ในตอนที่เราสั่งทำงานอะไรสักอย่างนาน ๆ ก็จะใช้ progress bar เพื่อแสดงสถานะที่ทำถึงไหนแล้วก็ใส่ Application.Doevents() ไว้ในการทำงานมันทำให้สามารถเลื่อนขยับทำอย่างอื่นได้ด้วย



เดี๋ยวจะลองดูครับ ขอบคุณครับ

3
โค๊ด: [Select]
For Each ctl In Detail.Controls
        If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
            If ctl.Name Like "Text*" Then
                If ctl.Locked = True Then
                        ctl.Locked = False
                        ctl.ForeColor = vbRed
                        Me.Form1.Form.LabelEdit.Visible = True
                Else
                        Me.Form1.Form.LabelEdit.Visible = False
                        ctl.Locked = True
                        ctl.ForeColor = vbBlack
               End If
           End If
        End If
Next

อันนี้เป็นโค้ด loop ของผมครับ แต่ไม่ทราบว่าต้องสั่งยังไงให้มันไป loop ใน Sub form หรอครับ ประมาณนี้ครับ



4
ห้อง MS Access / ค้นหาจากทุกฟิลด์
« เมื่อ: 27 ต.ค. 64 , 16:14:00 »
โค๊ด: [Select]
Private Sub CmdSearch_Enter()
Dim sql As String
Dim FindRecordCount  As Long
Dim rstRecords As Recordset
sql = "SELECT * FROM Table1 Where [Name] like '*" & Nz(Me.Text1, "*") & "*' AND [F1]  [F2] [F3] like '" & Nz(Me.Combo1, "*") & "'"
Set rstRecords = CurrentDb.OpenRecordset(sql)
Forms!Form1!Table1subform.Form.RecordSource = sql
Forms!Form1!Table1subform.Form.Form.Requery

    If rstRecords.EOF Then
            FindRecordCount = 0
        Else
            rstRecords.MoveLast
            FindRecordCount = rstRecords.RecordCount
        End If
   If FindRecordCount = 0 Then
   MsgBox "Not Found!", vbCritical, "Status"
   End If


ตรง
โค๊ด: [Select]
AND [F1]  [F2] [F3] like '" & Nz(Me.Combo1, "*") ไม่แน่ใจว่ามันต้องเชื่อมยังไงหรือต้องเขียน VBA ทางไหน รบกวนขอความกรุณาครับ



5


Main Form ผมใช้เวลาเปิดบนเครื่องประมาณ 21 วินาที ถือว่านานเลยครับ อาจจะเกี่ยวที่ไม่มี SSD

ผมจึงพยายามทำหน้า Loading โดยการเมื่อเปิดโปรแกรม > Popup form1 และเมื่อกดปุ่ม Go > Open form2(เป็นฟอร์มที่มีแต่คำว่า Loading) > ที่ Main form ตรง On open ก็ให้ Close form1 และ 2

ผลปรากฏออกมาว่ามเม้าหมุนติ๊วตั้งแต่หน้า Form1 ไม่แสดงหน้า Form 2 เลยครับ  มันให้เรารอ 21 วินาที แล้วแสดง Main form ที่เดียวเลย


ตอนนี้ไม่ทราบว่าจะทำยังไงแล้วครับ ความต้องการแค่อยากให้ Popup หน้า Form loading เวลามันโหลดเพื่อไม่ให้ User มอง Cursor เม้าหมุนๆครับ

6
เบื้องต้นเมื่อวานลอง งมๆมั่วๆดูครับได้โค้ดออกมาเป็นแบบนี้

โค๊ด: [Select]

Private Sub Detail_Paint()

For Each Ctl In Detail.Controls
        If Ctl.ControlType = acTextBox Or Ctl.ControlType = acComboBox Then
            If Ctl.Name Like "Status*" Then
               If Ctl & "" = "Less than 1 day" Then
                        Ctl.BackColor = vbYellow
               ElseIf Ctl & "" = "More than 1 day" Then
                        Ctl.BackColor = vbGreen
                ElseIf Ctl & "" = "Card expired" Then
                        Ctl.BackColor = vbRed
                  Exit For
               End If
           End If
        End If
Next

End Sub


แต่ติดปัญหาตรงคำว่า Card Expire มันไม่ลงสีทุกช่อง



พอลองลบคำว่า Exit For ออก ตอนนี้หายแล้วครับ สำเร็จแล้วครับ ขอบคุณครับผม


7




ไม่ทราบว่า ผมติดตรงที่ใส่สีให้ Textbox แต่ผมเขียนโค้ดผิดหรือเปล่าครับเลย Error ตรงนั้น

8
ห้อง MS Access / คำสั่ง Sql ไม่ทำงาน
« เมื่อ: 21 ต.ค. 64 , 16:14:39 »


ตอนแรกผมคอนเม้นโค้ดเส้นสีเขียวไว้ โค้ดเส้นสีแดงก็ทำงานปกติ พอเปิดทั้ง 2 โค้ด มันกลับทำงานแค่เส้นสีเขียวอย่างเดียวครับ ไม่ทราบว่าเกิดจากอะไรหรอครับ

9
docmd.runsql "Delete from BB where รหัส not in (select รหัส from AA)"
หรือ สร้าง Delete คิวรี่ จากตาราง BB ตรงฟิวด์รหัส ใส่ criteria not in (select รหัส from AA)

ขอบคุณครับใช้วิธีแรก ไม่ทราบวิธีนี้เลย ขอบคุณครับ

10


ไม่ทราบว่าต้องเขียน VBA ไปทางไหนหรอครับ

11

มันสามารถเขียนคำสั่งให้มันเอา row ที่ 2 เป็น fields เองได้ไหมครับ หรือว่าต้องจัดให้ Row บนสุดเป็น ห้ามมีอะไรครับ

12
 
โค๊ด: [Select]
Presentaddress1: [House_NO] & " ม." & [Village_No] & " " & [VillageName]
ที่ฟิล Presentaddress1 จะรวมข้อมูลฟิล [House_NO], [Village_No], [VillageName] ไว้

ตัวอย่างตาราง

โค๊ด: [Select]
House_NO  Village_No  VillageName
    45/7        3       หมู่บ้านไท
    65/2        -       หมู่บ้านสอง
    44/3        5       -

ในฟิล Presentaddress1 จะได้เป็น 45/7 ม.3 หมู่บ้านไท(คนแรก)
                                            65/2 - หมู่บ้านสอง(คนสอง)

คำถามคือ Default ของฟิลคือ "-" ครับ ไม่ทราบว่าต้องใส่ iif ตรงไหนเพื่อที่จะบอกว่า ถ้าเจอ "-" ให้โชว์ " " เท่านั้น
ผลลัพธ์ 65/2  หมู่บ้านสอง แบบนี้อะครับให้ - ตรง ม.หาย  :dizzy: :dizzy: :dizzy:

13




ไม่ทราบว่าสามารถทำได้ไหมครับ ที่จะทำให้เมื่อเราเลือกแล้ว ทุก Record ก็ Save ค่าตามๆ กัน รบกวนอาจารย์ทุกท่านครับ :dizzy: :dizzy:

14
String ="00" & [Text30] ตรงนี้เอาไปใส่ไว้ในไหนหรอครับ

15


ต้องการ Running sum ไปเรื่อยๆครับ โดยมี 00 นำหน้า ลองใส่แล้ว แต่ไมมันแสดงเป็น 1 แทน

16
ได้แล้วครับ ขาด Where ตัวเดียวครับ

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