Excelde Seçili Olan Sütunları Mail olarak outlookta ekli dosya olarak gönderme

Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
merhabalar

aşağıdaki linkte örnek excel dosyasında sarı renk ile blokladığım sütunlar seçtiğim sütunlar. ben bu sütunları seçtikten sonra sadece bu seçili olan sütunları ayrı bir excel dosyası halinde belirlediğim mail adreslerine outlookta ekli excel dosyası olarak göndersin istiyorum. excel dosyasını ekte gönderirken email subject ve body kısmınada belirlediğim bir şeyleride yazsın istiyorum. Bunuda atadığım bir tuş kombinasyonuyla yapayım istiyorum. Örneğin sütunları seçtim. ve ctrl+m tuşuna bastım. bunu yapınca tüm bu yukarıda yazdıklarım olsun istiyorum.

Bunun dışında bazende bu dosyanın toplu halini değil. sadece tek bir satırı göndermem icap ediyor. o satırın başına gelip sadece belirlediğim hücreleri bir tablo yapıl belirlediğim kişiye belirlediğim subject va body ile mail göndermesini istiyorum

Örneğin A4 hücresine geliyorum ve ctrl+n yaptığımda 4. satırdaki a4+b4+c4+d4+h4+i4+j4+l4+m4 kopyalayıp mailde bir tablo halinde göndersin istiyorum.

örnek görüntüdeki gibi


http://s8.dosya.tc/server2/yopfjd/sec_mailgonder.rar.html
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Konu Cevapsız kalmasın. Belki bu tür bişey arayanların işine yarar.

Yukarıdaki belirttiğim işle alakalı makro kod aşağıdaki gibidir.

Kod:
Sub dosyafarklikaydetgonder()

[COLOR="SeaGreen"]' Burada excelden outlooka mail göndermek için standart Dim ve Set kodları yazılıyor[/COLOR]
 Dim OutApp As Object, Outmail As Object
    Set OutApp = CreateObject("Outlook.Application")
    Set Outmail = OutApp.CreateItem(0)
    Outmail.BodyFormat = 2
     
    [COLOR="SeaGreen"]'Burada Eklemek istediğim sütunları seçili hale getiriyor.[/COLOR]
    Range("A:A,B:B,C:C,D:D,F:F,G:G,H:H,I:I,J:J,K:K,L:L,M:M,N:N").Select
    Range("N1").Activate
    [COLOR="SeaGreen"]'Seçtiğim sütunlar kopyalanıyor[/COLOR]
    Selection.Copy
    [COLOR="SeaGreen"]'yeni bir excel dosyası açılıp kopyalanan veriler yapıştırılıyor.[/COLOR]
    Workbooks.Add
    ActiveSheet.Paste
    Range("A1").Select
    Application.CutCopyMode = False
    [COLOR="SeaGreen"]'belirtilen yere liste.xlsm olarak dosyayı kaydedip o dosyayı kapatıyor.[/COLOR]
    ActiveWorkbook.SaveAs Filename:="C:\DosyaYolu\liste.xlsm", _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
        ActiveWindow.Close
       [COLOR="SeaGreen"] 
       'Burada Outlook açıp sırasıyla gönderilmesi istenen kişilerin to cc ve bcc kişilerinin mail adresleri yazılıp. Subject ile mail konusu yazılıp attach yapılacak dosyanın yolu belirtilip mailde body kısmına yazılacaklar yazılmıştır.
       'Daha sonra mail gönderme işlemini yapıyor.[/COLOR]
        With Outmail
                .To = ""
                .CC = ""
                .bcc = "xxx@mail.com; yyy@mail.com; zzz@mail.com"
                .Subject = "Liste"
                .Attachments.Add "C:\DosyaYolu\liste.xlsm"
                .body = "Merhabalar" & Chr(13) & Chr(13) & "en güncel liste ektedir." & Chr(13) & Chr(13) & "İyi Çalışmalar" & Chr(13) & Chr(13) & "Ad Soyad"
                .Display
                .Send
            End With
        Set Outmail = Nothing: Set OutApp = Nothing
End Sub
 
Katılım
29 Ekim 2010
Mesajlar
365
Excel Vers. ve Dili
Microsoft Office 365 ProPlus 64 bit
Altın Üyelik Bitiş Tarihi
31-05-2024
merhaba dosyanızı indirdim kodu da yapıstırdım fakat hiç bir şey olmuyor kullanımı hakkında yardımcı olabilir misiniz.
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
kod içeriğinde gerekli düzeltmeleri yapmanız gerekiyor. örneğin dosya yolu neredeyse onu yazmanız lazım. mail adres bilgisi girmeniz lazım. outlook kulanıyor olmanız lazım.
 
Üst