By เกวนเทย์เลอร์ ในวันจันทร์ที่ 29 มีนาคม 2021
โพสต์ใน Excel
ตอบกลับ 0
การกดไลค์ 0
เข้าชม 2.9K
โหวต 0
สวัสดี ฉันกำลังใช้รหัสของคุณเพื่อส่งช่วงใน excel ทางอีเมล ถ้าฉันยกเลิกช่วง ฉันจะได้รับข้อผิดพลาดรันไทม์ เป็นไปได้ไหมที่จะเพิ่มโค้ดหรือ msgbox เพื่อป้องกันสิ่งนี้และเพื่อปรับคอลัมน์ในไฟล์แนบให้พอดีอัตโนมัติ โค้ดบางส่วนอยู่ด้านล่าง
ขอบคุณ/media/kunena/emoticons/smile.png

Dim xFile เป็นสตริง
Dim xFormat ตราบเท่าที่
Dim Wb เป็นสมุดงาน
Dim Wb2 เป็นสมุดงาน
Dim Ws เป็นแผ่นงาน
Dim FilePath เป็นสตริง
หรี่ชื่อไฟล์เป็นสตริง
หรี่ OutlookApp เป็นวัตถุ
หรี่ OutlookMail เป็นวัตถุ
Dim WorkRng เป็นช่วง
xTitleId = "ตัวอย่าง"
Sและ WorkRng = Application.Selection
ตั้งค่า WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)

Application.ScreenUpdating = เท็จ
Application.DisplayAlerts = เท็จ
ตั้งค่า Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
ตั้งค่า Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.คัดลอก
ตั้งค่า Wb2 = Application.ActiveWorkbook
เลือกกรณี Wb.FileFormat
กรณี xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
กรณี xlOpenXMLWorkbookMacroEnabled:
    ถ้า Wb2.HasVBProject แล้ว
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    อื่น
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
กรณี Excel8:
    xFile = ".xls"
    xFormat = Excel8
กรณี xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
สิ้นสุดการเลือก
ดูโพสต์แบบเต็ม