ขอเทคนิคการ Import ข้อมูลหน่อยครับ
กระทู้เก่าบอร์ด อ.Yeadram

 1,304   7
URL.หัวข้อ / URL
ขอเทคนิคการ Import ข้อมูลหน่อยครับ

คือผมจะมีการ Import ข้อมูลจากทางระบบมาวางให้ทุกเช้า แต่ผมเขียน Import แบบตายตัวคือ ไฟล์ที่วางจะต้องวางทีเดียวกันทุกครั้งผมถึงจะดึงได้

ประเด็นอยู่ตรงที่ว่า ถ้าผม Import มาแล้วครั้งหนึ่ง แล้วลืมกดไปอีกครั้งหนึ่ง จะกลายเป็นข้อมูลซ้ำกัน เราจะใช้วิธีไหนดีในการ Import ไม่ให้ข้อมูลซ้ำ ไฟล์ที่ Import เป็นเข้าเป็น Excel

ืัที่คิดได้ก็คือ Import เสร็จให้ลบไฟล์ Excle นั้นทิ้งเลย แต่ไม่รู้คำสั่งในการลบไฟล์ Excel นั้นอย่างไรครับ หรือใครมีวิธีอื่น ช่วยแนะนำด้วยครับขอบคุณครับ

7 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R18356
ถ้าไฟล์ Excel มีฟิวด์ที่ใช้เป็น Primary Key ได้ ก็กำหนดที่ไฟล์ Access ให้มี Primary Key ตัวนั้นไว้ พอ Import ก็จะ Import ข้อมูลซ้ำไม่ได้ครับ
2 @R18365
Kill คือ คำสั่งลบไฟล์เป้าหมาย
Kill (pathname)

Kill ("C:\Doc\Text.txt") คือ สั่งลบไฟล์ชื่อ Text.txt ในไดร์ฟ C: โฟลเดอร์ Doc
Kill ("C:\Doc\*.txt") คือ สั่งลบไฟล์ทุกไฟล์ที่มีนามสกุล .txt ในไดร์ฟ C: โฟลเดอร์ Doc
Kill ("C:\Doc\Text.*") คือ สั่งลบไฟล์ทุกไฟล์ที่มีชื่อ Text โดยจะเป็นนามสกุลใดก็ได้ ในไดร์ฟ C: โฟลเดอร์ Doc
Kill ("C:\Doc\*.*") คือ สั่งลบไฟล์ทุกไฟล์ ในไดร์ฟ C: โฟลเดอร์ Doc
3 @R18366
ปล. เวลาทดลองต้องระวังด้วยนะครับ พลาดไปไฟล์อื่นในเครื่องอาจหายหมด
4 @R18367
ขอบคุณทุกท่านมากครับ
5 @R18368
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Table1", "C:\TTT.xls", True, "Sheet1!"
MsgBox ("      นำเข้าข้อมูลเรียบร้อยแล้ว")
Kill ("C:\TTT.xls")

ตอนนี้ผมใช้สำคัญใน Import และลบไฟล์นั้นทิ้งทันที่เสร็จ รบกวนสอบถามเพิ่มเติมอย่างนี้ครับ

ถ้าผมต้องการให้โปรแกรมตรวสอบว่าว่ามีไฟล์นี้อยู่หรือเปล่าก่อน Import เข้าระบบ จะต้องใช้คำสั่งอะไรในการตรวจสอบครับ ขอบคุณครับ
6 @R18369
If Dir("C:\...") = "" Then
   msgbox "ไม่มี file"
Else
   msgbox "มี file"
End If

7 @R18371
ขอบคุณทุกท่านอีกครั้ง สมบูรณ์แบบสักที
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2645s