แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

05 มี.ค. 61 , 14:35:05
อ่าน 633 ครั้ง

UnKnown

คุณ JEN Original post

อ้างถึง

ตอนนี้ทำช่องสำหรับimportข้อมูลลงตาราง โดยคลิกที่ปุ่มReport
แล้วอยากให้ แสดงวันที่ที่import ล่าสุดด้วย เก็บไว้แสดงค่ะ

« แก้ไขครั้งสุดท้าย: 04 เม.ย. 61 , 18:42:03 โดย UnKnown »

 

05 มี.ค. 61 , 14:56:03
ตอบกลับ #1

ปิ่นณรงค์

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #1 เมื่อ: 05 มี.ค. 61 , 14:56:03 »
ขอดูคำสั่งที่ กด report หน่อยครับเดี่ยวผมคำสั่งให้
:love: :grin:
 

05 มี.ค. 61 , 15:06:10
ตอบกลับ #2

UnKnown

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #2 เมื่อ: 05 มี.ค. 61 , 15:06:10 »
คุณ JEN Original post
อ้างถึง
Me.reporttxt= ""
Dim s As String
    If IsNull(reporttxt) Or reporttxt= "" Then
        s = GetOpenFile("D:\")
    Else
        s = GetOpenFile(Me.reporttxt)
    End If
    If s = "" Then

    Else
        If Dir(s) = "" Then
            Beep
            MsgBox "????????? " & s
        Else
            reporttxt= s
                Application.DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "table1", (reporttxt), True   
               

        End If
    End If
Exit Sub
« แก้ไขครั้งสุดท้าย: 04 เม.ย. 61 , 18:42:24 โดย UnKnown »

 

05 มี.ค. 61 , 15:52:13
ตอบกลับ #3

ปิ่นณรงค์

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #3 เมื่อ: 05 มี.ค. 61 , 15:52:13 »
อ่อจะนำเข้าข้อมูลโดยกำหนด ให้เลือกตำแหน่งของไฟล์  ที่จะนำเข้าก่อน
เมื่อนำเข้าข้อมูลเสร็จ ล้วให้ เก็บวันที่ Import ครั้งล่าสุดไว้ว่าอัพเดทวันที่เท่าไหร่ แบบนั้นไหมครับ
:love: :grin:
 

05 มี.ค. 61 , 16:25:05
ตอบกลับ #4

UnKnown

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #4 เมื่อ: 05 มี.ค. 61 , 16:25:05 »
คุณ JEN Original post
อ้างถึง
ใช่เลยค่ะ
« แก้ไขครั้งสุดท้าย: 04 เม.ย. 61 , 18:43:16 โดย UnKnown »

 

05 มี.ค. 61 , 17:20:14
ตอบกลับ #5

ปิ่นณรงค์

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #5 เมื่อ: 05 มี.ค. 61 , 17:20:14 »
สวัสดีครับได้แล้วครับพี่

ผมทำตัวอย่างด้วย กดปุ่มเพื่อไปเลือกไฟล์ที่จะ นำเข้าข้อมูลโดย ใช้ Function ไปไว้ใน Module
โค๊ด: [Select]
Function selectFile()
    Dim fd As FileDialog, fileName As String
 
On Error GoTo ErrorHandler
 
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
 
    fd.AllowMultiSelect = False
 
    If fd.Show = True Then
        If fd.SelectedItems(1) <> vbNullString Then
            fileName = fd.SelectedItems(1)
        End If
    Else
       
        End
    End If
 
   
    selectFile = fileName
 
    Set fd = Nothing
 
Exit Function
 
ErrorHandler:
    Set fd = Nothing
    MsgBox "Error " & Err & ": " & Error(Err)
 
End Function

ส่วนคำสั่งในการนำเข้าผมใส่ไว้ใน ปุ่ม CommandButton
โค๊ด: [Select]
Private Sub Import_Click()
Dim today As String
today = Now()
          DoCmd.SetWarnings False
          DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, "table1", selectFile, True
          Me.stamp = "Update : " & today
              Call saveMemoDate
              Call filltextbox
          DoCmd.SetWarnings True
End Sub
ตรง table1 คือ table ใน Access ที่จะนำเข้าข้อมูล จากไฟล์ Excel
ส่วนการกำหนด วันที่ เราอัพโหลดนั้น ผมใช้ Today() เพราะมันจะเก็บเวลาไว้ด้วย จึงกำหนดตัวแปรเก็บค่าไว้ และเมื่อกด นำเข้าไฟล์
ที่ textBox ชื่อ Stamp จะแสดงวันที่และเวลานำเข้า และจะบันทึกไว้ใน Table ชื่อ MemoDate ที่ได้สร้างไว้เก็บวันที่ นำเข้าข้อมูล
ส่วน คำสั่งในการบันทึกเวลา นำเข้าก็คือ
โค๊ด: [Select]
Sub saveMemoDate()
 On Error GoTo Err_Err
        Set DB = CurrentDb()
        Set rs = DB.OpenRecordset("Memodate", DB_OPEN_DYNASET)
   
    rs.Edit
    rs![Date] = stamp
   
    rs.Update
   
Exit_err:
        Exit Sub
Err_Err:
        MsgBox Error$
        MsgBox ("Data fail try again")
        Resume Exit_err
End Sub

คำสั่งดึงข้อมูลจาก Record ของ ตาราง Memodate ชื่อ Date มาแสดงบน Textbox ชื่อ Stamp
โค๊ด: [Select]
Sub filltextbox()
 On Error GoTo Err_Err
        Set DB = CurrentDb()
        Set rs = DB.OpenRecordset("Memodate", DB_OPEN_DYNASET)
           Me.stamp = rs![Date]
Exit_err:
        Exit Sub
Err_Err:
        MsgBox Error$
        MsgBox ("Data fail try again")
        Resume Exit_err
End Sub
ขั้นตอนสุดท้ายถ้าเราจะให้เปิดฟอร์มมาแล้ว แสดงวันที่นำเข้าล่าสุดก็ไปที่ form event  on load
ใส่
Call filltextbox
เพื่อให้แสดงค่าวันที่ๆเราบันทึกล่าสุดของตาราง MemoDate นั้นเองครับ
« แก้ไขครั้งสุดท้าย: 07 มี.ค. 61 , 11:53:26 โดย Newbies »
:love: :grin:
 

06 มี.ค. 61 , 10:54:35
ตอบกลับ #6

UnKnown

> แสดงวันที่ที่อัพโหลดข้อมูลล่าสุด
« ตอบกลับ #6 เมื่อ: 06 มี.ค. 61 , 10:54:35 »
คุณ JEN Original post
อ้างถึง
ทำได้แล้วค่ะ ขอบคุณนะคะ
« แก้ไขครั้งสุดท้าย: 04 เม.ย. 61 , 18:43:33 โดย UnKnown »

 


บอร์ดเรียนรู้ Access สำหรับคนไทย