Arkadaşlar aşağıdaki makrom 2003 excel kullanırken hiç sorun çıkartmadan çalışıyordu. Bu makroyu ; Bir workbook içerisinde yer alan her bir sheete ayrı ayrı maille göndermek için kullanıyorduk.
Ancak şu anda excel 2007 kullanmaya başladım ancak göndereceğim yerlerde halen 2003 formatı kullanıldığından sorunla karşılaşıyorum. (outlook 2003 bu arada)
Aslında xls formatında kaydet dediğim için maile xls formatında sheeti atıyor ancak nedense excel 2003 te bu dosya açılamıyor. Sadece xls olarak kaydet seçeneği yeterli değil anladığım kadarıyla. Makrom aşağıda. Bu konuda acilen yardımcı olursanız gerçekten sevinirim
Sub SendEmail()
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Dim ShName As String, WbName As String
Dim i As Integer
Dim ModX As Object, VBComp As Object
ShName = ActiveSheet.Name
WbName = "C:\" & ShName & ".xls"
ThisWorkbook.SaveCopyAs WbName
Application.DisplayAlerts = False
Workbooks.Open WbName
For i = Sheets.Count To 1 Step -1
If ActiveWorkbook.Sheets(i).Name <> ShName Then Sheets(i).Delete
Next
On Error Resume Next
For Each ModX In ActiveWorkbook.VBProject.VBComponents
Set VBComp = ActiveWorkbook.VBProject.VBComponents(ModX.Name)
ActiveWorkbook.VBProject.VBComponents.Remove VBComp
Next
On Error GoTo 0
Application.DisplayAlerts = True
ActiveWorkbook.Close SaveChanges:=True
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.Subject = "dosya"
.Attachments.Add WbName
.Display
End With
Set NewMail = Nothing
Set OutApp = Nothing
Set VBComp = Nothing
Kill WbName
End Sub
Ancak şu anda excel 2007 kullanmaya başladım ancak göndereceğim yerlerde halen 2003 formatı kullanıldığından sorunla karşılaşıyorum. (outlook 2003 bu arada)
Aslında xls formatında kaydet dediğim için maile xls formatında sheeti atıyor ancak nedense excel 2003 te bu dosya açılamıyor. Sadece xls olarak kaydet seçeneği yeterli değil anladığım kadarıyla. Makrom aşağıda. Bu konuda acilen yardımcı olursanız gerçekten sevinirim
Sub SendEmail()
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Dim ShName As String, WbName As String
Dim i As Integer
Dim ModX As Object, VBComp As Object
ShName = ActiveSheet.Name
WbName = "C:\" & ShName & ".xls"
ThisWorkbook.SaveCopyAs WbName
Application.DisplayAlerts = False
Workbooks.Open WbName
For i = Sheets.Count To 1 Step -1
If ActiveWorkbook.Sheets(i).Name <> ShName Then Sheets(i).Delete
Next
On Error Resume Next
For Each ModX In ActiveWorkbook.VBProject.VBComponents
Set VBComp = ActiveWorkbook.VBProject.VBComponents(ModX.Name)
ActiveWorkbook.VBProject.VBComponents.Remove VBComp
Next
On Error GoTo 0
Application.DisplayAlerts = True
ActiveWorkbook.Close SaveChanges:=True
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.Subject = "dosya"
.Attachments.Add WbName
.Display
End With
Set NewMail = Nothing
Set OutApp = Nothing
Set VBComp = Nothing
Kill WbName
End Sub
