สมัครสมาชิก

แสดงกระทู้

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

หน้า: [1] 2 3 4 ... 8
1
ดูตรงปุ่ม Advanced.. ทั้ง Export และ Import ว่าตั้งค่าอะไรไว้เหมือนกันหรือเปล่า

2
Add ตาราง DropB_Surname เข้าไปใน query ด้วย แล้ว JOIN ตารางเข้าด้วยกัน

3
ห้อง MS Access / : วิธีเซฟไฟล์ MDB เป็น ACCDB
« เมื่อ: 17 ม.ค. 62 , 20:45:42 »
MDB เป็น format เก่า (ver 2000, 2003) แปลงเป็น MDE ได้
ACCDB เป็น format ใหม่ แปลงเป็น ACCDE ได้

ถ้าจะให้ MDB เป็น ACCDE น่าจะต้องแปลงจาก MDB => ACCDB =>ACCDE

4
ห้อง MS Access / : สอบถามError import csv fileค่ะ
« เมื่อ: 17 ม.ค. 62 , 20:34:34 »
ตรง VBA Reference ให้เพิ่ม Microsoft Office 1x.x Object Library เข้าไปด้วยครับ


5
ห้อง MS Access / : สอบถามError import csv fileค่ะ
« เมื่อ: 16 ม.ค. 62 , 15:22:56 »
ถ้าคุณใช้ Code ของผม คุณสามารถลบ Module และฟังก์ชั่นทั้งหมดที่เกี่ยวกับ GetOpenFile ได้เลย เพราะไม่ได้ใช้ส่วนนั้นแล้ว

6
ห้อง MS Access / : สอบถามError import csv fileค่ะ
« เมื่อ: 15 ม.ค. 62 , 14:13:38 »
ดูเหมือน GetOpenFile() จะเป็นการเปิด FileDialog สำหรับเลือกไฟล์เฉยๆ ซึ่งมีทางเลือกอื่นที่ไม่ต้องใช้ Module นี้ได้นะครับ (ดูเหมือน Module นี้จะเขียนขึ้นสมัย Access 95 ตอนที่ยังไม่มีทางเลือกให้ใช้)

โค๊ด: [Select]
Private Sub Command0_Click()
Dim Result As Integer

With Application.FileDialog(msoFileDialogFilePicker)
    .Title = "เลือกไฟล์ที่ต้องการ"
    .AllowMultiSelect = False
    .InitialFileName = "*.CSV"
    .Filters.Add "CSV Files", "*.CSV", 1
    .FilterIndex = 1
    Result = .Show
    If (Result <> 0) Then
        Me.txt_FilePath = Trim(.SelectedItems.Item(1))
    Else
        Exit Sub
    End If
End With

CurrentDB.Execute .....
Docmd.Transfertext......

End Sub

7
กำหนดให้เป็น Primary Key ถ้าเลขเดียวกันมันก็จะเพิ่มเข้าไปในตารางไม่ได้ จะเกิด Error แจ้งมา

8
ตอนสร้างลิงค์มันจะมีปุ่ม Advance ที่สามารถเข้าไปกำหนด font encoding ได้ พอดีไม่ได้ใช้เวอร์ชั่น 2010 เลยตอบยาก

9
จากความสัมพันธ์จะเห็นว่าตาราง 2divition ถ้าจะเพิ่มระเบียนเข้าไป จะต้องมีฟิลด์ ID ที่ต้องมีค่าอยู่ใน ID ของตาราง 1Name divition อยู่ก่อนหน้าแล้ว ถ้าเพิ่มระเบียนโดยไม่มีค่านี้อยู่ก็จะเกิด Error ที่ว่ามาได้ครับ

10
ระเบียนที่เพิ่มจำเป็นต้องมี Foreign key ที่เชื่อมโยงไปยัง Primary key ของอีกตารางหนึ่ง

ลองเปิดหน้าต่างความสัมพันธ์ดูว่ามีการเชื่อมโยง key ต่างๆไว้หรือไม่

11
ห้อง MS Access / : Hide Duplicates
« เมื่อ: 23 ธ.ค. 61 , 18:09:50 »
บรรทัด Dim KeyShow() ต้องเอาไปอยู่ก่อนที่จะมีฟังก์ชั่นใดๆครับ อยู่ใต้บรรทัด Option Compare Database ครับ

12
ห้อง MS Access / : Hide Duplicates
« เมื่อ: 21 ธ.ค. 61 , 17:19:25 »
อีกทางเลือก
โค๊ด: [Select]
Dim KeyShow()  'กำหนด array ใน form scope เพื่อให้ทุก sub หรือ func มองเห็น

Private Sub Form_Load()
       
SetKeyShow "visit_No", "VD"   'ตอนโหลดข้อมูลเสร็จให้สร้าง array ที่เก็บ PK แรกของค่าที่ไม่ซ้ำ

End Sub

Private Sub SetKeyShow(PK_Name As String, FieldShow_Name As String)
Dim MyRS As Recordset, CurrentValue As Variant

ReDim Preserve KeyShow(0 To 0) 'set ขนาด array มีค่า 1 ตัว

Set MyRS = Me.RecordsetClone

If MyRS.RecordCount > 0 Then
    MyRS.MoveFirst
    KeyShow(0) = MyRS(PK_Name) 'บรรทัดแรกต้องแสดงอยู่แล้ว เก็บ PK ไว้
    Do While Not MyRS.EOF
        CurrentValue = MyRS(FieldShow_Name) 'เก็บค่าบรรทัดปัจจุบันไว้
        MyRS.MoveNext
        If Not MyRS.EOF Then
            If MyRS(FieldShow_Name) <> CurrentValue Then 'ถ้าบรรทัดถัดไปไม่ซ้ำกับบรรทัดปัจจุบันก็ดำเนินการเก็บค่าไว้
                ReDim Preserve KeyShow(0 To UBound(KeyShow) + 1) 'เพิ่มขนาด array
                KeyShow(UBound(KeyShow)) = MyRS(PK_Name) 'เก็บค่า PK ที่ไม่ซ้ำเพิ่มใน array
            End If
        End If
    Loop
End If
MyRS.Close
Set MyRS = Nothing

End Sub

Private Function IsShow(PK As Variant) As Boolean
Dim i As Long
'ตรวจสอบค่า PK ที่จะต้องแสดง
IsShow = False
For i = LBound(KeyShow) To UBound(KeyShow)
    If KeyShow(i) = PK Then
      IsShow = True
      Exit For
    End If
Next i
End Function

ในคอนโทรลที่ต้องการไม่ให้แสดงค่าเฉพาะที่ไม่ซ้ำให้กำหนด source = IIf(IsShow([visit_No]),[VD],"")

13
แนะนำให้สร้าง report แล้ว copy เอาคอนโทรลในฟอร์มไปไว้ใน report แทนครับ ใน report เราสามารถควบคุมการจัดพิมพ์ได้ดีกว่าครับ

14
ถ้าเป็น Access 2007 จะต้องเป็น service pack 2 ขึ้นไปถึงจะมีเมนู export excel ครับ แนะนำให้ติดตั้ง Office 2007 service pack 3 ซึ่งเป็น service pack ล่าสุดไปเลยครับ

15
ลองเปิดไฟล์ .accde แล้วไปดูที่ตาราง Received กับตาราง StockWMS_yesterday ว่ามันไม่มีฟิลด์ที่ชื่อ PO Number กับ Zone_ID จริงหรือไม่

16
ใช้อันนี้แทน แต่ต้องกด Enter หลังจากใส่สูตรทุกครั้ง

Private Sub Output_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo Output_Err:
Dim myValue As Variant

If KeyCode = vbKeyReturn Then
    myValue = Eval(Me.Output.Text)
    Me.Output = myValue
End If
   
Output_Err:
    'bypass error

End Sub

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