• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Excel 2010 mail atma

Katılım
24 Temmuz 2007
Mesajlar
726
Excel Vers. ve Dili
Excel 2010 tr
Arkadaşlar selam;
Excel 2003'te aşağıdaki gibi bir sub ile sorunsuz mail atabiliyordum,
Excel 2010 kullanmaya başlayınca, mailin karşı taraftada sorunsuz açılması için mail atılacak dosyayı 2003 formatında kaydettirip oyle göndermek için kırmızı satırları ekledim,
Fakat bole olunca da doğal olarak
Kill Hangi_Dosya
satırında Permission Denied hatası vermeye başladı,
bu durumdan nasıl kurtulabiliriz
.SaveCopyAs baktım onunda hiçbir parametresi yok


Sub Send_Mail(ByVal Alici As String, ByVal Hangi_Dosya As String, ByVal Baslik As String, _
ByVal Govde As String, Optional ByVal Hedef_Dosya As String)


Dim OutApp
Dim NewMail
Dim Modx
Dim VBComp
Dim i As Integer
Dim Sayfa_Sayisi As Byte
Dim TempFilePath As String
Dim ForMat As Integer


If [IV1] <> "" Then 'IV hücresi doluysa mail atma, deneme yapılacak demektir
Exit Sub
End If


If Hedef_Dosya = "" Then
Hedef_Dosya = Hangi_Dosya 'Hedef dosya adı verilmediyse kaynak dosya ismiyle kaydet
End If



TempFilePath = Environ$("temp") & "\" 'Temp klasörünün yolunu al
Hangi_Dosya = TempFilePath & Hedef_Dosya 'Dosyanın bir kopyasını al, dosya açıkken mail gönderilemiyor
ActiveWorkbook.SaveCopyAs Hangi_Dosya 'Kopya dosyayı temp klasörüne kaydet

If Val(Application.Version) >= 12 Then 'Eğer excel 2007 veya sonrası bir versiyon kullanılıyorsa
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Hangi_Dosya, FileFormat:=-4143, CreateBackup:=False 'dosyayı excel 2003 uyumlu kaydet
Application.DisplayAlerts = True
End If



'Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)

With NewMail
.To = Alici
.Subject = Baslik
.Body = Govde
.Attachments.Add Hangi_Dosya
.Save
.Send

End With
Set NewMail = Nothing
Set OutApp = Nothing
Set VBComp = Nothing

Kill Hangi_Dosya
End Sub
 
Geri
Üst