كيف تُرسل نطاق خلايا من Excel عبر البريد الإلكتروني باستخدام Outlook؟
في العمل اليومي مع Excel، من المألوف إنجاز تقريرٍ ما ثم الحاجة إلى مشاركة جزءٍ معيّن من بياناته مع مستلمٍ محدّد. فعلى سبيل المثال، قد ترغب في إرسال معلومات حاسمة من نطاقٍ معيّن من الخلايا بدلاً من إرسال المصنف بأكمله، وذلك لضمان الخصوصية والملاءمة. وبطبيعة الحال، يفضّل معظم المستخدمين حلولًا لا تتطلّب التبديل يدويًّا إلى Outlook أو اللجوء إلى نسخ المحتوى ولصقه. هل هناك طرقٌ عملية وفعّالة لإرسال نطاقٍ معيّن من الخلايا مباشرةً من Excel؟
يستعرض هذا البرنامج التعليمي طرقًا متعددة لإرسال خلايا محددة عبر Outlook—باستخدام كلٍّ من حلول VBA والميزات المدمجة في Excel—لمساعدتك على تبسيط سير عملك وتقليل الجهد اليدوي. ستجد فيه طرقًا لإرسال النطاق كمرفق، أو تضمين الخلايا مباشرةً في نص الرسالة، أو حفظ نطاقات الخلايا كصور أو ملفات PDF قبل إرسالها، بالإضافة إلى استخدام ميزات البريد القديمة في Excel. كما يغطي الدليل خطوات الإعداد الأساسية، وتحليل السيناريوهات المختلفة، ونصائح استكشاف الأخطاء وإصلاحها، فضلًا عن أفضل الممارسات لتحقيق أفضل النتائج.
إرسال نطاق خلايا كمرفق من Excel باستخدام كود VBA
إرسال نطاق خلايا كنص رسالة من Excel باستخدام كود VBA
إرسال نطاق خلايا كمرفق من Excel باستخدام كود VBA
إذا كنت ترغب في مشاركة مجموعة محددة من البيانات دون منح الوصول إلى المصنف بأكمله، يمكنك استخراج نطاق خلايا معيّن وإرساله كمرفق ملف—مثل مستند .xlsx أو .xls—عبر Outlook. يُعد هذا الحل مثاليًا عندما يحتاج المستلم إلى مراجعة جزء فقط من التقرير أو عندما تكون السرية أمرًا بالغ الأهمية. فيما يلي الخطوات التي توضح كيفية إعداد واستخدام كود VBA لأتمتة هذه العملية:
1. افتح مصنف Excel المستهدف، ثم اضغط علىALT + F11 لفتح نافذةMicrosoft Visual Basic for Applications، حيث يمكنك إدراج كود VBA وتحريره.
2. انقر علىإدراج > وحدة نمطيةلإنشاء وحدة نمطية جديدة لكودك، ثم الصق النص البرمجي أدناه في نافذة الوحدة النمطية.
كود VBA: إرسال نطاق خلايا كمرفق من Excel
Sub SendRange()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim Ws As Worksheet
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Set Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.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 = "skyyang@extendoffice.com"
.CC = ""
.BCC = ""
.Subject = "information of kte"
.Body = "hello, 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
Ws.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub نصائح وتخصيصات:
- .ToTo
- .CCو.BCCيمكن تعيينهما للنسخة الكربونية أو النسخة الكربونية المخفية حسب الحاجة.
- .Subjectو.Bodyيسمحان لك بتخصيص رسالة البريد الإلكتروني.
3. شغّل الكود بالضغط علىF5. سيظهر مربع حوار لتحديد النطاق. حدّد النطاق الذي ترغب في إرساله (من الأفضل التأكد من صحة البيانات قبل الإرسال). انظر لقطة الشاشة التوضيحية:

4. بعد النقر علىموافق، قد تظهر نافذة تقدم أو إشعار طلب إذن. عند الانتهاء، انقر علىسماح. سيتم إرسال نطاق الخلايا المحدد إلى المستلم الذي اخترته كمرفق ملف Excel.

احتياطات واستكشاف الأخطاء:
- إذا لم يكن Outlook مُثبَّتًا كعميل البريد الإلكتروني الافتراضي لديك أو لم يكن قيد التشغيل، فقد لا يعمل الكود كما هو متوقع.
- تأكد من أن إعدادات أمان ماكرو تسمح بتشغيل نصوص VBA؛ فقد تحتاج إلى تمكين الماكروات أو تعديل إعدادات مركز الثقة.
- يعتمد نوع المرفق على مصدر نوع الملف والسطر المحدَّد في كود VBA.
- بعد الإرسال، تحقق من مجلد الرسائل المرسلة في Outlook لتأكيد وصول الرسالة بنجاح.
تُعد هذه الطريقة مثالية لمشاركة البيانات بشكل آمن، والاحتفاظ بالسجلات، وكذلك في السيناريوهات التي تتطلب الحفاظ على تنسيق Excel الأصلي. ومع ذلك، سيحتاج المستلمون إلى برنامج مناسب لفتح المرفقات.
إرسال نطاق خلايا كنص رسالة من Excel باستخدام كود VBA
في السيناريوهات التي ترغب فيها أن يطّلع المستلمون على المعلومات فورًا دون الحاجة إلى تنزيل المرفقات—مثل ملخصات التقارير الدورية أو تحديثات التقدّم—يمكنك تضمين نطاق الخلايا المحدد مباشرةً في نص رسالة البريد الإلكتروني. وهذا لا يحسّن إمكانية الوصول فحسب، بل يجعل المعلومات أيضًا أكثر سهولة في القراءة وأسرع في المعالجة للمستلمين.
1. انتقل إلى ورقة العمل التي تحتوي على بياناتك، ثم اضغط علىALT + F11 للوصول إلى نافذةMicrosoft Visual Basic for Applications.
2. انقر علىإدراج > وحدة نمطيةلفتح نافذة الوحدة النمطية، ثم الصق الكود التالي:
كود VBA: إرسال نطاق خلايا كنص رسالة من Excel
Sub EmailRange()
'Update by Extendoffice
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
WorkRng.Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Please read this email."
.Item.To = "skyyang@extendoffice.com"
.Item.Subject = "information of kte"
.Item.Send
End With
Application.ScreenUpdating = True
End Sub ملاحظات حول المعلمات وتعديلات عملية:
- .Introductionيتيح لك تضمين رسالة قبل النطاق نفسه.
- .Item.Toيجب تحديثه بعنوان عنوان البريد الإلكتروني المطلوب.
- .Item.Subjectيمكن تعديله ليتناسب مع تقريرك أو موضوع بريدك الإلكتروني.
3. شغّل الماكرو باستخدامF5. عند المطالبة، حدد نطاق الخلايا الذي تريد إرساله.

4. تأكد من اختيارك، ثم انقر علىموافق. راقب أي مطالبات أمان. بعد المعالجة، انقر علىسماحلتفويض الماكرو. وسيظهر تحديد النطاق مباشرةً في نص رسالة Outlook الخاص بك، منسَّقًا كجدول.

تذكيرات رئيسية:
- يتطلب هذا الحل تثبيت Outlook وتعيينه كعميل البريد الإلكتروني الافتراضي لديك.
- فعِّل الماكروات في Excel لتشغيل VBA بنجاح. وإذا ظهرت أخطاء، فتحقق من إعدادات الماكرو في مركز الثقة.
- يتم الاحتفاظ بالتنسيق—مع ذلك، قد يظهر تنسيق الخلية المعقد بشكل مختلف في البريد الإلكتروني مقارنةً بـ Excel.
- انتقِل إلى مجلد البريد الصادر (Outbox) أو المرسَلة (Sent) في Outlook للتأكُّد من إرسال الرسالة.
تُعد هذه الطريقة مثالية لتحديثات حالة الفريق، أو مشاركة البيانات السريعة، أو توزيع الأرقام الرئيسية على الزملاء أو العملاء الذين يفضلون المحتوى القابل للقراءة فورًا.
طرق أخرى مدمجة في Excel - استخدام ميزة «إرسال إلى مستلم بريدي» المدمجة لإرسال الخلايا المحددة كنص رسالة
تضمنت بعض إصدارات Excel القديمة (قبل Office 365) زرًّا مدمجًا باسم “إرسال إلى مستلم بريدي”، يتيح لك إرسال الخلايا المحددة كنص رسالة بريد إلكتروني بسرعة—بدون الحاجة إلى استخدام VBA. وعلى الرغم من أن هذه الميزة تكون مخفية افتراضيًّا في إصدارات Excel الحديثة، إلا أنها لا تزال متاحة عبر تخصيص شريط أدوات الوصول السريع. وتُعد هذه الحلول خيارًا مثاليًّا للمستخدمين الذين يعملون بإصدارات Excel القديمة أو يفضلون تجنب استخدام الماكروات.
كيفية التمكين والاستخدام:
- انقر بزر الماوس الأيمن علىشريط أدوات الوصول السريع (الموجود أعلى الشريط)، ثم اخترتخصيص شريط أدوات الوصول السريع.
- من قائمة الأوامر، غيّر خيار “اختيار الأوامر من:” إلىجميع الأوامر.
- مرِّر لأسفل وأضفإرسال إلى مستلم بريديإلى شريط أدوات الوصول السريع الخاص بك.
- بعد الإعداد، حدد الخلايا التي تريد إرسالها. انقر على أيقونةإرسال إلى مستلم بريدي—سيقوم Excel بإنشاء نافذة بريد مضمَّنة تحتوي على التحديد كنص الرسالة. أضف العناوين والموضوع، ثم أرسل مباشرةً!
ملاحظات هامة:
- تتطلب هذه الطريقة تعيين Outlook كعميل البريد الإلكتروني الافتراضي لديك.
- قد يختلف التعامل مع نافذة البريد المضمَّنة عن تأليف رسائل Outlook العادية، لذا تأكد من مراجعة التنسيق بدقة.
- قد تكون هذه الميزة معطَّلة أو غير متوفرة في بعض إصدارات Excel (خاصةً الإصدارات الأحدث من Office 365). في مثل هذه الحالات، يُوصى باستخدام حلول VBA أو تصدير النطاق كصورة أو ملف PDF.
المزايا والعيوب:
- سريعة جدًّا وبسيطة في الإصدارات المدعومة، ولا تتطلب أي كود أو إعداد متقدم.
- غير متوفرة في جميع الإصدارات؛ وقد يحتاج مستخدمو Excel الجدد إلى اعتماد طرق بديلة.
مقالات ذات صلة:
كيف تُرسل ورقة عمل واحدة فقط عبر Outlook من Excel؟
كيف يمكنك إرسال المصنف الحالي عبر Outlook مباشرةً من Excel؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في Excel باستخدام Kutools لـ Excel، وعايش الكفاءة كما لم تفعل من قبل.يقدّم Kutools لـ Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية ووقت الحفظ.انقر هنا للحصول على الميزة التي تحتاجها أكثر من غيرها...
يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير
- تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، وPublisher وAccess وVisio وProject.
- افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
- يزيد إنتاجيتك بنسبة 50% ويوفّر لك مئات نقرات الفأرة كل يوم!
جميع الإضافات من Kutools في برنامج تثبيت واحد!
Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل