แสดงกระทู้

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.


Topics - 001Jetnipit

หน้า: [1] 2 3 4
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
โค๊ด: [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 หรอครับ ประมาณนี้ครับ



3
ห้อง 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 ทางไหน รบกวนขอความกรุณาครับ



4


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 เม้าหมุนๆครับ

5




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

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


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

7


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

8

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

9
 
โค๊ด: [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:

10




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

11


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

12




ไม่ทราบว่าเกิดจากอะไรหรอครับ

13
เหมือนกัน Autonumber ครับ แต่ผมจะเอาใส่ใน VBA ตัวเองผมก็คิดไม่ได้ด้วย  :dizzy: :dizzy: :dizzy:

14


1. 3 ตารางนี้เชื่อมความสัมพันธ์กันอยู่ ฟิลด์ ID ของ Tblmain ไม่สามารถเลือกแบบ Autonumber ได้ เวลา User กรอก ต้องกรอกทั้ง NameTH และ ID ด้วย สามารถตั้งเป็น Autonumber ได้ไหม
2. เป็นไปได้ไหมที่จะให้ Tbl 1 และ 2 อัปเดตค่าล่าสุดตาม Tblmain

15


ผมลองทำแบบนีัใน Query



แต่ว่าข้อมูลไม่มาครับ มาแต่จำนวน Record ไม่ทราบว่าต้องใช้วิธีไหนครับ

16
Dim sql As String
sql = "UPDATE TblPI INNER JOIN Tbl_PI_PTT ON PI.[Code1] = Tbl_PI_PTT.[Code1] SET Tbl_PI_PTT.NameTH = [PI]![NameTH];"
DoCmd.SetWarnings False
DoCmd.RunSQL sql
DoCmd.SetWarnings True


ตรงตัวหนังสือสีแดง ถ้าหากจะเอาข้อมูลจาก TblPI ไปยัง Tbl_PI_PTT ได้นั้น Tbl_PI_PTT ต้องมี Code1 ที่ตรงกันก่อนทั้ง 2 ตาราง ข้อมูลถึงจะมา ถ้าเราอยากให้มันไม่มีเงื่อนไขตรง Code อยากให้มันมาทั้งหมดเลย ต้องแก้โค้ดยังไงครับ ขอบคุณครับ

17


การลิงค์ข้อมูลตาราง ไม่ว่า Tbl A หรือ Tbl B จะเพิ่มข้อมูลอะไร โปแกรมก็จะอัพเดตให้ข้อมูล 2 ตารางเหมือนกันตลอด
ถ้าผมอยากต้องการแค่ถ้าหาก Tbl A กรอกข้อมูลเพิ่มก็อัพเดตมา Tbl B แต่ไม่ว่า Tbl B จะเพิ่มข้อมูลอะไร ก็ไม่สามารถเพิ่มกลับไปยัง Tbl A ได้แบบนี้ต้องใช้วิธีไหนหรอครับ

18




ผมให้ตรวจสอบว่าถ้าว่างให้ใส่ -
แต่ไม่สามารถตรวจสอบได้ แปลว่าค่ามันไม่ว่างหรอครับ หรือต้องใส่ยังไงครับ เพื่อให้มันตรวจว่า "ถ้าว่างให้ใส่ -"

หน้า: [1] 2 3 4