German问是否有一种方法可以将工作簿中的一个工作表作为电子邮件附件发送而不发送整个工作簿。简短的答案是,您不能-工作表本身不能作为“实体”

存在。您可以将其附加到电子邮件。您只能将文件作为电子邮件的附件发送,这意味着您必须具有要发送的工作簿文件。

当然,从单个工作表制作工作簿很容易。如果您只需要偶尔执行一次,那么最简单的方法是按照以下步骤操作:

。右键单击要通过电子邮件发送的工作表的选项卡。

。从出现的上下文菜单中,选择移动或复制。 Excel将显示“移动或复制”对话框。 (请参见图1。)

。使用“到书”下拉列表中,选择“新书”。

。确保选中“制作副本”复选框。

。单击确定。

此时,您应该看到一个新工作簿,其中包含一个工作表,即您要发送的工作表的副本。通过电子邮件发送此工作簿,您已经完成了想要做的事情。通过电子邮件发送后,您也可以删除工作簿,因为您的工作表也仍在原始工作簿中。

如果您需要定期将当前工作表通过电子邮件发送给其他人,则可能需要创建一个宏来为您完成任务。您创建的宏将有所不同,具体取决于您所使用的电子邮件程序。因此,在本技巧中无法提供全面的基于宏的答案。但是,提供一个宏示例可以说明问题,该宏示例可以使用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 = "[email protected]"

'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

请注意,该宏有效地执行了先前步骤中所做的操作:

它将工作表复制到一个新的工作簿,然后通过电子邮件发送该工作簿。然后,它将删除工作簿,并使您恢复到正常使用Excel的状态。

如果您正在寻找有关如何使用各种程序通过电子邮件发送工作表的更深入的讨论,那么您肯定会希望访问以下网页:

http://www.rondebruin.nl/win/section1.htm

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(3273)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: