แสดงกระทู้

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

หน้า: 1 2 [3]
33
กำหนดให้ คำสั่งใส่ 0 รอไว้ให้เราเลยครับ
พอได้รหัสจากบาร์โคด เช่น 1234 ข้อมูลจากคำสั่งนี้จะได้เป็น 01234.txt และทำการ Import ให้ทันทีครับ
Private Sub textbox1_AfterUpdate()
Dim StrFileName As string
StrFileName =  "d:\0" & Me.textbox1 & ".txt"
DoCmd.TransferText acImportDelim, "importdata", "import", StrFileName ,True
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: aek

34
เวลาคุณกรอกข้อมูล เป็นการสร้าง textbox1 และใส่ชื่อไฟล์รวมทั้งนามสกุลไปเลยหรือเปล่า
เช่น ใน textbox1 คุณใส่ไปว่า 1234.txt แล้วกด Enter แล้วคำสั่ง Import ก็จะทำงานแบบนี้หรือเปล่า ถ้าใช่

ให้กำหนด Event Afterupdate ของ textbox1 ดังนี้
โค๊ด: [Select]
Private Sub textbox1_AfterUpdate()
Dim StrFileName As string
StrFileName =  "d:\" & Me.textbox1
DoCmd.TransferText acImportDelim, "importdata", "import", StrFileName ,True
End Sub

หรือถ้าไฟล์ทุกอันที่จะ Import เป็นไฟล์ .txt ทั้งหมดก็ใส่คำสั่งเป็นแบบนี้ กรณีนี้ใส่แค่ชื่อไฟล์ฺ 1234
โค๊ด: [Select]
Private Sub textbox1_AfterUpdate()
Dim StrFileName As string
StrFileName =  "d:\" & Me.textbox1 & ".txt"
DoCmd.TransferText acImportDelim, "importdata", "import", StrFileName ,True
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: aek

35
เราใช้ฟอนท์ Wingding สำหรับเท็กซ์บ็อกซ์เพื่อแสดงรูปสัญญลักษณ์ได้ สมมุติ P คือชื่อฟิลด์ที่เก็บ path ของรูป ก็กำหนด Control Source ของเท็กซ์บ็อกซ์ที่แสดงสัญญลักษณ์เป็น =IIf(nz([P],"")="","","*") มันก็จะแสดงสัญญักษณ์ จดหมาย (เพราะหาไม่เจอสัญญลักษณ์รูป คลิป)  ถ้าอยากได้สัญญลักษณ์อื่นๆ ก็เปิดโปรแกรม Character Map ที่มากับวินโดว์อยู่แล้ว เลือกฟอนท์ Webding, Wingding(1-3) เอาตัวไหนก็ดับเบิลคลิกรูปแล้วคลิกปุ่ม Copy  กลับมาที่ expression ข้างบน กดคีย์ paste ลงแทนที่ * ได้เลยครับ
โพสต์นี้ได้รับคำขอบคุณจาก: aek

36
ผมมีโค้ดตัวนึง ลองเอาโค้ดนี้ไปใช้ดู แต่ไม่ยืนยันนะครับว่าจะถูกต้อง 100% หรือไม่
โค๊ด: [Select]
Public Sub CutLastCRLF(aFullFileNM As String)
    Dim B As String * 1
    Dim S As String
    Dim L As Long

    Open aFullFileNM For Binary Access Read As #1
    Do Until EOF(1)
        Get #1, , B
        S = S & B
    Loop
    Close #1

    If Right(S, 3) <> vbCr & vbLf & vbNullChar Then
        Exit Sub
    End If

    S = Left(S, Len(S) - 3)

    On Error Resume Next
    Kill aFullFileNM

    On Error GoTo 0
    Open aFullFileNM For Binary Access Write As #1
    Put #1, , S
    Close #1
End Sub
จะเรียกใช้ก็สั่ง Call CutLastCRLF("Drive:\Path\File.txt") มันจะเขียนทับไฟล์เดิมครับ
โพสต์นี้ได้รับคำขอบคุณจาก: aek

37
ไม่รู้นะครับว่าเครื่องพิมพ์คุณทำงานยังไง แต่ถ้าลบบรรทัดสุดท้ายไม่ขึ้นบรรทัดใหม่ แก้ไขเองด้วยมือเลย ยังจะมีพิมพ์กระดาษเปล่าออกมาไหม
โพสต์นี้ได้รับคำขอบคุณจาก: aek

หน้า: 1 2 [3]