انتقل إلى المحتوى الرئيسي

كيفية إرسال ورقة العمل فقط من خلال Outlook من Excel؟

إذا كنت تريد إرسال ورقة عمل واحدة بالبريد الإلكتروني من مصنف في Excel عبر Outlook ، فيمكنك إرسال ورقة العمل كمرفق أو كمحتوى أساسي أو كملف PDF. ولكن هل هناك طرق أسرع للتعامل مع هذه المشكلة في Excel؟

أرسل ورقة عمل واحدة كجسم من Excel باستخدام الأمر Send to Mail Recipient

أرسل ورقة عمل واحدة كمرفق من Excel برمز VBA

أرسل ورقة عمل واحدة كملف PDF من Excel مع كود VBA


السهم الأزرق الحق فقاعة أرسل ورقة عمل واحدة كجسم من Excel باستخدام الأمر Send to Mail Recipient

يدعمنا Excel إرسال ورقة العمل النشطة بالبريد الإلكتروني كمحتوى أساسي باستخدام الأمر إرسال إلى مستلم البريد. يمكنك القيام بما يلي:

إذا كنت تستخدم Excel 2007 أو 2010 أو 2013 ، فستحتاج إلى إضافة هذا أرسل إلى مستلم البريد الأمر إلى شريط أدوات الوصول السريع لأول مرة.

1. انقر فوق أيقونة تخصيص شريط أدوات الوصول السريع، و اختار المزيد من الأوامر، انظر لقطة الشاشة:

وثيقة البريد الإلكتروني ورقة 1

2. وفي خيارات إكسيل مربع الحوار، اختر الأوامر ليست في الشريط في ال اختر أوامر من القائمة المنسدلة ، ثم حدد ملف أرسل إلى مستلم البريد الخيار، وانقر أضف >> زر لإضافة هذا الأمر ، في آخر نقرة OK لحفظ هذا الإعداد. انظر لقطة الشاشة:

وثيقة البريد الإلكتروني ورقة 2

3.أرسل إلى مستلم البريد تم إدخال الأمر في ملف شريط أدوات الوصول السريع، انظر لقطة الشاشة:

وثيقة البريد الإلكتروني ورقة 3

4. ثم انقر فوق هذا أرسل إلى مستلم البريد رمز الزر ، وينبثق مربع مطالبة في ملف البريد الإلكتروني مربع موجه ، تحقق أرسل الورقة الحالية كنص الرسالة، ثم انقر OK. انظر لقطة الشاشة:

وثيقة البريد الإلكتروني ورقة 4

5. ويتم عرض مربع تحرير البريد الإلكتروني فوق بيانات ورقة العمل ، يمكنك إدخال المستلمين والموضوع والمقدمة في مربع النص المقابل. انظر لقطة الشاشة:

وثيقة البريد الإلكتروني ورقة 5

6. ثم اضغط أرسل هذه هير لإرسال ورقة العمل النشطة هذه كنص رسالة إلى شخص معين.


السهم الأزرق الحق فقاعة أرسل ورقة عمل واحدة كمرفق من Excel برمز VBA

إذا كنت ترغب في إرسال ورقة العمل النشطة بالبريد الإلكتروني كمرفق ، فيمكن لكود VBA التالي تقديم خدمة لك.

1. قم بتنشيط ورقة العمل التي تريد إرسالها.

2. اضغط باستمرار على ALT + F11 مفاتيح ، ويفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.

3. انقر إدراج > وحدة، والصق الكود التالي في ملف نافذة الوحدة.

كود فبا: أرسل ورقة العمل الحالية كمرفق من إكسيل

Sub SendWorkSheet()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = ""
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add Wb2.FullName
    .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

ملاحظات: في الكود أعلاه ، يمكنك تغيير المعلومات التالية حسب حاجتك.

  • . إلى = ""
  • .CC = ""
  • .BCC = ""
  • .Subject = "ميزات kte"
  • .Body = "الرجاء مراجعة هذا المستند وقراءته."

4. ثم اضغط F5 مفتاح لتشغيل هذا الرمز ، وسوف يظهر مربع موجه ، انقر فوق السماح عند انتهاء شريط التقدم ، ثم يتم إرسال ورقة العمل الحالية إلى المستلم كمرفق.

وثيقة البريد الإلكتروني ورقة 6


السهم الأزرق الحق فقاعة أرسل ورقة عمل واحدة كملف PDF من Excel مع كود VBA

في بعض الأحيان ، تحتاج إلى إرسال تقرير ورقة العمل إلى الآخرين ولكن لا تريد أن يقوم الآخرون بتعديله. في هذه الحالة ، يمكنك إرسال ورقة العمل كملف PDF من Excel.

1. قم بتنشيط ورقة العمل التي تريد إرسالها.

2. اضغط باستمرار على ALT + F11 مفاتيح ، ويفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.

3. انقر إدراج > وحدة، والصق الكود التالي في ملف نافذة الوحدة.

كود فبا: أرسل ورقة العمل الحالية كملف PDF من إكسيل

Sub SendWorkSheetToPDF()
'Update 20131209
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .To = ""
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add FileName
    .Send
End With
Kill FileName
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

ملاحظة: في الكود أعلاه ، يمكنك تغيير المعلومات التالية حسب حاجتك.

  • . إلى = ""
  • .CC = ""
  • .BCC = ""
  • .Subject = "ميزات kte"
  • .Body = "الرجاء مراجعة هذا المستند وقراءته."

4. ثم اضغط F5 مفتاح ، وسوف يظهر مربع موجه ، انقر فوق السماح بعد الانتهاء من شريط التقدم ، يتم إرسال ورقة العمل النشطة إلى الشخص المحدد كملف PDF.

وثيقة البريد الإلكتروني ورقة 6

الملاحظات:

1. لا تتوفر هذه الطرق إلا عند استخدام Outlook كبرنامج البريد الخاص بك.

2. بعد إرسال ورقة العمل الحالية ، يمكنك الانتقال إلى Outlook الخاص بك للتأكد من إرسال البريد الإلكتروني بنجاح.


أنشئ قائمة بريدية ثم أرسل رسائل بريد إلكتروني

كوتولس ل إكسيل's إنشاء قائمة بريدية و  أرسل رسائل البريد الإلكتروني يمكن للأدوات المساعدة إنشاء قائمة بريدية بسرعة في ورقة عمل ، ثم إرسال نفس الموضوع ونفس المحتويات ونفس المرفقات إلى عناوين بريد إلكتروني متعددة.
القائمة البريدية للمستندات 1
السهم لأسفل
القائمة البريدية للمستندات 2

مقالات ذات صلة:

كيفية إرسال المصنف الحالي من خلال Outlook من Excel؟

كيفية إرسال / إرسال مجموعة من الخلايا عبر البريد الإلكتروني من خلال Outlook من Excel؟

أفضل أدوات إنتاجية المكتب

الميزات الشعبية: البحث عن التكرارات أو تمييزها أو تحديدها   |  حذف الصفوف الفارغة   |  دمج الأعمدة أو الخلايا دون فقدان البيانات   |   جولة بدون صيغة 
سوبر بحث: معايير متعددة VLookup    VLookup ذات القيمة المتعددة  |   VLookup عبر أوراق متعددة   |   بحث غامض ....
قائمة منسدلة متقدمة: إنشاء القائمة المنسدلة بسرعة   |  القائمة المنسدلة التابعة   |  قائمة منسدلة متعددة التحديد ....
مدير العمود: إضافة عدد محدد من الأعمدة  |  نقل الأعمدة  |  تبديل حالة رؤية الأعمدة المخفية  |  مقارنة النطاقات والأعمدة 
الميزات المميزة: التركيز على الشبكة   |  عرض تصميم   |   شريط الفورمولا الكبير    مدير المصنفات والأوراق   |  مكتبة الموارد (النص السيارات)   |  منتقي التاريخ   |  اجمع أوراق العمل   |  تشفير/فك تشفير الخلايا    إرسال رسائل البريد الإلكتروني عن طريق القائمة   |  سوبر تصفية   |   مرشح خاص (تصفية غامق / مائل / يتوسطه خط ...) ...
أفضل 15 مجموعة أدوات12 نص الأدوات (إضافة نص, إزالة الأحرف، ...)   |   +50 رسم الأنواع (مخطط جانت، ...)   |   40+ عملي الصيغ (احسب العمر على أساس تاريخ الميلاد، ...)   |   19 إدخال الأدوات (أدخل رمز الاستجابة السريعة, إدراج صورة من المسار، ...)   |   12 تحويل الأدوات (أرقام إلى كلمات, نتيجة تحويل عملة، ...)   |   7 دمج وتقسيم الأدوات (الجمع بين الصفوف المتقدمة, تقسيم الخلايا، ...)   |   ... و اكثر

عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت.  انقر هنا للحصول على الميزة التي تحتاجها أكثر...

علامة تبويب kte 201905


يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
Comments (33)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Bonjour,

Est-il possible d'utiliser le code pour joindre deux feuilles du fichier Excel dans le mail ?

Merci d'avance.
This comment was minimized by the moderator on the site
Hello, Typhaine
To send multiple sheets, please apply the below code:
Note: In the code, you should change the sheet names to your own.
Sub Mail_Sheets_Array()
    Dim FileExtStr As String
    Dim FileFormatNum As Long
    Dim Sourcewb As Workbook
    Dim Destwb As Workbook
    Dim TempFilePath As String
    Dim TempFileName As String
    Dim OutApp As Object
    Dim OutMail As Object
    Dim sh As Worksheet
    Dim TheActiveWindow As Window
    Dim TempWindow As Window
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
    Set Sourcewb = ActiveWorkbook
    With Sourcewb
        Set TheActiveWindow = ActiveWindow
        Set TempWindow = .NewWindow
        .Sheets(Array("Sheet1", "Sheet2")).Copy
    End With
    TempWindow.Close
    Set Destwb = ActiveWorkbook
    With Destwb
        If Val(Application.Version) < 12 Then
           
            FileExtStr = ".xls": FileFormatNum = -4143
        Else
            
            Select Case Sourcewb.FileFormat
            Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
            Case 52:
                If .HasVBProject Then
                    FileExtStr = ".xlsm": FileFormatNum = 52
                Else
                    FileExtStr = ".xlsx": FileFormatNum = 51
                End If
            Case 56: FileExtStr = ".xls": FileFormatNum = 56
            Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
            End Select
        End If
    End With
    TempFilePath = Environ$("temp") & "\"
    TempFileName = "Part of " & Sourcewb.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    With Destwb
        .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
        On Error Resume Next
        With OutMail
            .To = ""
            .CC = ""
            .BCC = ""
            .Subject = "KTE features"
            .Body = "Please check and read this document"
            .Attachments.Add Destwb.FullName
           
            .Display
        End With
        On Error GoTo 0
        .Close savechanges:=False
    End With
   
    Kill TempFilePath & TempFileName & FileExtStr

    Set OutMail = Nothing
    Set OutApp = Nothing

    With Application
        .ScreenUpdating = True
        .EnableEvents = True
    End With
End Sub


Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Hej,

Muszę wysłać zakres (stały) arkusza jako obraz w treści maila jednocześnie dodając cały arkusz jako plik/załącznik. Czy jest to możliwe?
This comment was minimized by the moderator on the site
Hi the program worked just fine till 2021, I tried to run it  today, but it does send the email. As does notshow any errors
This comment was minimized by the moderator on the site
This is to inform you that i have an VBA code for send email from outlook with the help of excel vba,now i want to put "MDD Code" & " MDD Name" as well as Cells(i, 1) & Cells(i, 2) in a table like that.

MDD Code MDD Name
M123 Joydip

I am sending you the VBA Code,Request you for help.
VBA Code
----------------------------------------------------------------------------------------------------------------------------------------------
Sub sendmail()

Dim olapp As Outlook.Application

Dim olmail As Outlook.MailItem

For i = 2 To 35

Application.ScreenUpdating = False

Set olapp = New Outlook.Application

Set olmail = olapp.CreateItem(olMailItem)

With olmail

olmail.To = Cells(i, 4).Value

olmail.CC = Cells(i, 6).Value

olmail.Subject = Cells(i, 7).Value

olmail.HTMLBody = "Dear Partner ," & _

"
Please find the attchment." & _

"

MDD Code : " & Cells(i, 1) & _

"
MDD Name : " & Cells(i, 2) & _

"






Joydip Bhattacharjee" & _

"
Company" & _

"
MIS" & _

"
Country" & _

"
Contact No : 7602066491"







olmail.Attachments.Add Cells(i, 8).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 9).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 10).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 11).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 12).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 13).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 14).Value

'On Error Resume Next

olmail.Send

End With

Set olmail = Nothing

Next

End Sub
This comment was minimized by the moderator on the site
merhaba ben bunu belirli periyotta otomatik mail atmasını nasıl ayarlayabilirim
This comment was minimized by the moderator on the site
Excelent code. Thanks!
This comment was minimized by the moderator on the site
Anyway I can easily send an excel worksheet through my outlook without all this ?? I can send the worksheet context, but no the workbook as an attachment. On my work computer I can send from word and excel, but am having trouble at home.
This comment was minimized by the moderator on the site
Hi! Is it possible to use this code, but instead of sending straight away it opens up the mail?
This comment was minimized by the moderator on the site
You can try this code:
Sub SendWorkSheet()
'Update 20180109
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
If Wb2.HasVBProject Then
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Else
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
End If
Case Excel8:
xFile = ".xls"
xFormat = Excel8
Case xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
.To = ""
.CC = ""
.BCC = ""
.Subject = "kte features"
.Body = "Please check and read this document."
.Attachments.Add Wb2.FullName
.Display
' .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

Please let me know if it works for you, thank you.
This comment was minimized by the moderator on the site
This code works good, however, does anyone know a way to automate a field as an alert for the email to go automatically based on a date column?
This comment was minimized by the moderator on the site
Kindly help me out urgently. This the first time I am using the send current worksheet as PDF but the below code did not work at all and the dialogue to allow did not show up when I presses ctrl+G. I also want to know what to change to reference a cell that contained the email address instead of "to a specific email address. Sub SendWorkSheetToPDF() 'Update 20131209 Dim Wb As Workbook Dim FileName As String Dim OutlookApp As Object Dim OutlookMail As Object On Error Resume Next Set Wb = Application.ActiveWorkbook FileName = Wb.FullName xIndex = VBA.InStrRev(FileName, ".") If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1) FileName = FileName & "_" + ActiveSheet.Name & ".pdf" ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName Set OutlookApp = CreateObject("Outlook.Application") Set OutlookMail = OutlookApp.CreateItem(0) With OutlookMail .To = "" .CC = "" .BCC = "" .Subject = "kte features" .Body = "Please check and read this document." .Attachments.Add FileName .Send End With Kill FileName Set OutlookMail = Nothing Set OutlookApp = Nothing End Sub
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations