วิธีบันทึกไฟล์แนบอีเมลที่บีบอัดโดยอัตโนมัติแตกไฟล์เป็น csv และแปลงเป็นกราฟได้อย่างไร


0

ฉันทำงานที่ Van 't Hek บริษัท ดัตช์ซึ่งมีความเชี่ยวชาญในงานฐานรากทุกประเภท (เจาะ / ตอกเสาเข็มสำเร็จรูปแผ่นชีทเป็นต้น) ฉันเป็นวิศวกร autocad จริงๆ แต่ฉันมีประสบการณ์การเขียนสคริปต์คอมพิวเตอร์หลายภาษา (html, java & lua)

ปัญหา:

  • ปั้นจั่นเพิ่มเติมของเรามี IPC พร้อมโมดูล gprs เพื่อส่งข้อมูลการผลิตเสาเข็มในรูปแบบซิปไปยังที่อยู่อีเมลที่ระบุของเรา crane-operator ต้องใส่โปรเจค # และ pile #, IPC จะเพิ่มหมายเลขโปรเจคหลังเพื่อดูลำดับของการผลิต ดังนั้นไฟล์ zip ดูเหมือนว่า:

16000_1_1.zip (โครงการ # _incrementing # _pile #)

  • ในอดีตที่ผ่านมาฉันและเพื่อนร่วมงานของฉันต้องบันทึกไฟล์แนบในโฟลเดอร์ที่ถูกต้องด้วยตนเอง ผู้ส่งอีเมลคือ crane-id และหัวเรื่องเป็น: "ไฟล์แนบอีเมล: 16000_1_1.zip"

    ขณะนี้เราใช้โปรแกรมขนาดเล็กที่ชื่อว่า Outlook SaveAttachment เพื่อความสะดวกในการค้นหา (ส่งจาก / วันที่ / โครงการ #) และจัดเก็บไฟล์ไปยังตำแหน่งที่ถูกต้อง ด้านล่างนี้เป็นตัวอย่างตำแหน่งที่จะบันทึก:

K: \ 3 โครงการ \ 16000-16050 \ 16000 การจัดสรร - ชื่อโครงการ, บริษัท ก่อสร้าง \ 06 การผลิตข้อมูล

โปรดทราบว่าบางครั้งต้องมีการสร้างโฟลเดอร์ 06 Productiondata หากไม่มีการบันทึกข้อมูลใด ๆ ไว้ก่อนหน้านี้ ส่วนอื่น ๆ ทั้งหมดของเส้นทางเป็นตัวแปรและการอ้างอิงเพียงอย่างเดียวคือหมายเลขโครงการ (เช่น 16000)

  • จากนั้นเราขยายไฟล์ zip ไปที่ csv ด้วย 7zip
  • เรามีแผ่นงาน Excel จากผู้ผลิตรถเครนเพื่อนำเข้าไฟล์ที่เลือกและพิมพ์ไปยังเครื่องพิมพ์มาตรฐาน (pdf24) ในกรณีนี้ สิ่งนี้จะส่งสัญญาณไฟล์ทั้งหมดไปยังโฟลเดอร์หนึ่งบน K: และเราจะย้ายไฟล์ไปยังไฟล์ที่ถูกต้องด้วยตนเอง

คุณทุกคนสามารถจินตนาการว่ากระบวนการนี้กลายเป็นความเจ็บปวดใน *** โดยเฉพาะอย่างยิ่งเมื่อพิจารณาว่าเรามีรถเครน +10 คันเพื่อเพิ่มจำนวนวันทำงานเป็นสิบ ๆ กอง

ฉันสามารถนำไฟล์ไปยังโฟลเดอร์ K: ไดรฟ์ด้วยกฎและสคริปต์ แต่ไม่ต้องทำการค้นหา / เปรียบเทียบสคริปต์บางอย่างเพื่อวางไว้ในโฟลเดอร์ที่ถูกต้องหรือเพื่อให้ a อัตโนมัติเพื่อเปิด Excelsheet และประมวลผลไฟล์ ( s) ฉันเล่นซอกับโปรแกรมที่เรียกว่า DirListing เพื่อสแกนโครงสร้างโครงสร้างพื้นฐานและส่งออกไปยังไฟล์ (txt / csv)

มันจะช่วยฉันได้มากในการบันทึกไฟล์โดยอัตโนมัติไปยัง projectfolder ที่ถูกต้องและในที่สุดก็จะทำการอิมพอร์ตเข้าสู่ Excel และไฟล์ PDF แบบเอาต์พุตไปยังโฟลเดอร์เดียวกันเช่น csv-files

ใครมีแนวคิดที่จะทำให้สำเร็จ อาจเป็นแฟ้มแบตช์หรือโซลูชัน PowerShell บางประเภท (ฉันยังไม่คุ้นเคย)

รหัสของฉัน:

Public Sub SaveToDisk(itm As Outlook.MailItem) 
  Dim objAtt As Outlook.Attachment 
  Dim saveFolder As String 
  Dim dateFormat dateFormat = Format(Now, "yyyy-mm-dd") 
  'Change this path to the your folder location 
  saveFolder = "c:\temp\" 
  objAtt.SaveAsFile saveFolder & "\" & dateFormat & ".xls" 
  Set objAtt = Nothing 
End Sub

ยินดีต้อนรับสู่ Super User! โปรดทราบว่าSuper Userไม่ใช่บริการเขียนสคริปต์ / รหัสฟรี หากคุณบอกเราถึงสิ่งที่คุณได้ลองมาแล้ว (รวมถึงสคริปต์ / รหัสที่คุณใช้อยู่) และที่ที่คุณติดอยู่เราสามารถลองช่วยแก้ปัญหาเฉพาะได้ คุณควรอ่านฉันจะถามคำถามที่ดีได้อย่างไร .
DavidPostill

Public Sub SaveToDisk(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String Dim dateFormat DATEFORMAT = Format (ตอนนี้ "YYYY-MM-DD") objAtt.SaveAsFile saveFolder & "\" & DATEFORMAT & ".xls" ชุด objAtt = Nothing End Sub
เท็ดฮอฟเฟอร์

โปรดอย่าใส่รหัสในความคิดเห็น (ไม่สามารถอ่านได้) แก้ไขคำถามของคุณแทน ฉันได้ทำสิ่งนี้ให้คุณในครั้งนี้ โปรดตรวจสอบว่าฉันทำถูกต้องแล้ว
DavidPostill

มีวิธีแก้ไขมากเกินไปในเรื่องนี้เพื่อให้เข้าใจได้มาก แต่: โฟลเดอร์ปลายทางของคุณดูเหมือนจะมีความละเอียดระดับ 2 หรือ 3 ระดับมากกว่ารูปแบบการตั้งชื่อสิ่งที่แนบมาดังนั้นถ้าคุณกำลังมองหาสิ่งนี้โดยอัตโนมัติคุณต้องการชื่อไฟล์ เพื่อเก็บข้อมูลทั้งหมดที่จำเป็นหรือคุณต้องการฐานข้อมูลที่สามารถ 1) ระบุความสัมพันธ์ระหว่างโอเปอเรเตอร์และโฟลเดอร์ปลายทาง; และ 2) ใช้ฐานข้อมูลนั้นเพื่อเติมช่องว่างในข้อมูล (อาจผ่านชื่อผู้ให้บริการหรือที่อยู่อีเมลต้นทาง)
Yorik
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.