آلمانی پرسید آیا راهی برای ارسال یک کاربرگ در کتاب کار به عنوان پیوست ایمیل بدون ارسال کل کتاب کار وجود دارد؟ پاسخ کوتاه این است که شما نمی توانید - یک کاربرگ به خودی خود نمی تواند به عنوان یک "موجود" وجود داشته باشد که می توانید آن را به یک ایمیل پیوست کنید. شما فقط می توانید فایل ها را به عنوان پیوست به ایمیل ها ارسال کنید، به این معنی که باید یک فایل کتاب کار برای ارسال داشته باشید.
البته ساختن کتاب کار از روی یک کاربرگ آسان است. اگر لازم است این کار را هر چند وقت یکبار انجام دهید، ساده ترین راه این است که مراحل زیر را دنبال کنید:

شکل 1. کادر محاوره ای Move or Copy.
- روی برگه برگه مورد نظر برای ارسال ایمیل کلیک راست کنید.
- از منوی زمینه ایجاد شده، Move یا Copy را انتخاب کنید. اکسل کادر محاوره ای انتقال یا کپی را نمایش می دهد. (شکل 1 را ببینید.)
- با استفاده از لیست کشویی To Book، New Book را انتخاب کنید.
- مطمئن شوید که تیک Create a Copy انتخاب شده باشد.
- روی OK کلیک کنید.
در این مرحله، باید یک کتاب کار جدید با یک کاربرگ در آن مشاهده کنید - یک کپی از کاربرگ که می خواهید ارسال کنید. این کتاب کار را ذخیره کنید و آن را ایمیل کنید، و کاری را که میخواستید انجام دهید. پس از ارسال ایمیل، می توانید کتاب کار را از سیستم خود حذف کنید، زیرا کاربرگ شما همچنان در کتاب کار اصلی است.
اگر نیاز دارید که کاربرگ فعلی را به طور معمول برای شخص دیگری ایمیل کنید، ممکن است بخواهید یک ماکرو ایجاد کنید که کار را برای شما انجام دهد. بسته به برنامه ایمیلی که استفاده می کنید، ماکرویی که ایجاد می کنید متفاوت خواهد بود. به همین دلیل در این نکته نمی توان پاسخ کلان و جامعی ارائه کرد. با این حال، ارائه مثالی از یک ماکرو که می تواند یک کاربرگ را با استفاده از Outlook به عنوان برنامه ایمیل ایمیل کند، ممکن است آموزنده باشد.
Sub EmailWithOutlook()
Dim oApp As Object
Dim oMail As Object
Dim WB As Workbook
Dim FileName As String
Dim wSht As Worksheet
Dim shtName As String
Application.ScreenUpdating = False
Make a copy of the active worksheet
and save it to a temporary file
ActiveSheet.Copy
Set WB = ActiveWorkbook
FileName = WB.Worksheets(1).Name
On Error Resume Next
Kill "C:" & FileName
On Error GoTo 0
WB.SaveAs FileName:="C:" & FileName
Create and show the Outlook mail item
Set oApp = CreateObject("Outlook.Application")
Set oMail = oApp.CreateItem(0)
With oMail
Uncomment the line below to hard code a recipient
.To = "testuser@test.com"
Uncomment the line below to hard code a subject
.Subject = "Subject Line"
Uncomment the lines below to hard code a body
.body = "Dear John" & vbCrLf & vbCrLf & _
"Here is the file you asked for"
.Attachments.Add WB.FullName
.Display
End With
Delete the temporary file
WB.ChangeFileAccess Mode:=xlReadOnly
Kill WB.FullName
WB.Close SaveChanges:=False
Restore screen updating and release Outlook
Application.ScreenUpdating = True
Set oMail = Nothing
Set oApp = Nothing
End Sub
توجه داشته باشید که ماکرو کاری را که در مراحل قبلی انجام شد به طور موثر انجام می دهد: کاربرگ را در یک کتاب کار جدید کپی می کند و سپس آن کتاب کار را ایمیل می کند. سپس کتاب کار را حذف می کند و شما را به استفاده عادی خود از اکسل برمی گرداند.
ماکرو کارنامه موقت (آنی که ایمیل می شود) را در درایو C ذخیره می کند. اگر ترجیح میدهید کتاب کار در جای دیگری ذخیره شود (یا اگر محدودیتهای سیستم شما را از ذخیره فایلها در دایرکتوری ریشه سیستمتان باز میدارد)، به سادگی مکان را در دو خط کد که به درایو C: اشاره میکنند، تغییر دهید.
یک اشکال احتمالی در استفاده از رویکردی که در این نکته توضیح داده شده است وجود دارد: وقتی یک کپی از کاربرگ را در یک کتاب کار جدید ایجاد میکنید، اکسل میتواند کارهای خندهداری را با برخی ارجاعاتی که ممکن است در کاربرگ کپی شده باشد انجام دهد. به عنوان مثال، اجازه دهید بگوییم که میخواهید Sheet1 را از کتاب اصلی کپی کرده و ایمیل کنید. با این حال، Sheet1 شامل برخی از ارجاعات، در فرمول ها، به سلول های Sheet2 و Sheet3 است. هنگامی که شما یک کپی از Sheet1 را در کتاب کار جدید ایجاد می کنید، اکسل آن ارجاعات را به برگه های کتاب کار اصلی حفظ می کند. در حالی که Sheet1 کپی شده را می توان برای شخص دیگری ایمیل کرد، وقتی آن شخص سعی می کند آن را باز کند، مراجع دیگر به درستی کار نمی کنند زیرا او کتاب کار اصلی را ندارد.
سه راه حل بالقوه برای این وجود دارد. بدیهی است اولین مورد این است که مطمئن شوید که یک کاربرگ واحد را در کتاب کار جدید ایمیل نمی کنید، بلکه همه کاربرگ هایی را که ممکن است گیرنده به آن نیاز داشته باشد، ایمیل کنید. راه حل دوم استفاده از تکنیک های کپی و چسباندن برای چسباندن مقادیر در کتاب کار جدید است. در نهایت، می توانید کاربرگ اصلی را کپی کنید و سپس در کپی، تمام مراجع خارجی را جستجو کرده و حذف کنید.
اگر به دنبال یک بحث عمیق تر در مورد نحوه ارسال ایمیل یک کاربرگ با استفاده از برنامه های مختلف هستید، مطمئناً می خواهید از صفحه وب زیر دیدن کنید:
http://www.rondebruin.nl/win/section1.htm