• DİKKAT

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

Makroyla email gonderme

arkadaşlar peki outlook olmadan bu mail işlemini yapabilirmiyiz. örneğin bende windows live mail var excel den windows live maile veriyi nasıl aktarırız. yardımcı olabilecek arkadaşlar var mı?
 
152.mesajda konudan bahsedilmiş, ayrıca "CDO.Message" olarak arama yaparsanız
başka örneklerde bulabilirsiniz.
 
Arkadaşlar formu aradım (yahu doğru yalan bilmiyorum ama herkes bunu yazıyor ama cidden aradım )koşullubiçimlendirme ile biçimlendirilmiş bir satırı özellikler tekrar belirtmekte fayda görüyorum sadece satırı email olarak gönderebilirmiyiz
 
Arkadaşlar formu aradım (yahu doğru yalan bilmiyorum ama herkes bunu yazıyor ama cidden aradım )koşullubiçimlendirme ile biçimlendirilmiş bir satırı özellikler tekrar belirtmekte fayda görüyorum sadece satırı email olarak gönderebilirmiyiz

Koşullu biçimlendirmeye uyguladığınız koşulu baz alarak satırı tespit edin.
 
@lionamic;

ALPEN'in önerdiği linkte hemen her türlü e-mail kodu bulabilirsiniz, gerçekten güzel bir kaynaktır orası.

Aşağıdaki de, fırından yeni çıkmış dumanı üstünde kendi imalatımızdır..... :mrgreen:

Bu kod, seçilen herhangibir aktif sayfayı, sözkonusu sayfa adında bir kitap haline getirerek, eklenti şeklinde MS Outlook kullanarak e-mail ile gönderir.

Kod:
'******************************************************
'* Sadece Aktif sayfayı MS Outlook ile yollamak için 
'* yapılmış bir çalışmadır 
'* Micosoft Outlook X.0 referansı eklenmelidir ! 
'* Burası Excel vadisi ... 
'* Raider ® 
'* Şubat 2005 
'******************************************************
 
Sub SendShByEmail()
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
.To = "falan@filan.com"
.Subject = "Deneme"
.Body = "Bu e-mail deneme amacıyla gönderilmiştir."
.Attachments.Add WbName
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing
Set VBComp = Nothing
Kill WbName
End Sub

haluk hocam yukarıdaki kodlara ek yapıp gönderilecek dosyanın makrolarının da silinmesini nasıl sağlarız.
 
#161 no'lu mesajdaki örnekler işimi görüyor fakat outlook ekranın da gönder demeden mailler doğal olarak gitmiyor. bunu da bana sormadan nasıl gönderebiliriz?

Yani excel dosyasında butona tıkladığımda açık olan outlook hesabımdan direk mail atabilir miyiz?
 
Merhabalar herkese,

Öncelikle Excel’de makro yazımı ile ilgili böyle bir site kurduğunuz için teşekkür etmek istedim. Şahsen benim çok işime yaradı. Ben Kimya Mühendisliğinde master yapan bir öğrenciyim. C+ programlama dilini bilmeme rağmen Excel’de makro yazmak çok kolay olamadı benim için, birçok şeyi sitenizden öğrendim.

Ancak bir konuda yardımınıza ihtiyacım var. Sitenizde bulamadığım bir bilgi.

Benim yapmak istediğim F1 hücresi ile AO 108 hücresini, (bu hücrelerin hepsinde tarih yazılı) her gün saat 9 ‘da o günün tarihi ile çakışan bir veya daha fazla hücre olup olmadığını araştırması ve eğer çakışan hücre varsa mesela K6 hücresi, A6,B6,C6,D6,E6, hücrelerinde yazanları, 2 kişiye otomatik mail atması.

Ben her gün saat 9 da o günün tarihi ile çakışan ve çakışan bir hücre olduğunda otomatik mail atan bir makro yazmayı başardım. Ama yukarda bahsettiğim çakışma hallerinde o satıra ait ilk 5 hücreyi maile eklemeyi başaramadım. Ne yaptıysam olmadı :)

Yazdığım makroyu ekte bulabilirsiniz.

Yardımcı olabilirseniz çok sevinirim.
 

Ekli dosyalar

Merhabalar herkese,

Öncelikle Excel’de makro yazımı ile ilgili böyle bir site kurduğunuz için teşekkür etmek istedim. Şahsen benim çok işime yaradı. Ben Kimya Mühendisliğinde master yapan bir öğrenciyim. C+ programlama dilini bilmeme rağmen Excel’de makro yazmak çok kolay olamadı benim için, birçok şeyi sitenizden öğrendim.

Ancak bir konuda yardımınıza ihtiyacım var. Sitenizde bulamadığım bir bilgi.

Benim yapmak istediğim F1 hücresi ile AO 108 hücresini, (bu hücrelerin hepsinde tarih yazılı) her gün saat 9 ‘da o günün tarihi ile çakışan bir veya daha fazla hücre olup olmadığını araştırması ve eğer çakışan hücre varsa mesela K6 hücresi, A6,B6,C6,D6,E6, hücrelerinde yazanları, 2 kişiye otomatik mail atması.

Ben her gün saat 9 da o günün tarihi ile çakışan ve çakışan bir hücre olduğunda otomatik mail atan bir makro yazmayı başardım. Ama yukarda bahsettiğim çakışma hallerinde o satıra ait ilk 5 hücreyi maile eklemeyi başaramadım. Ne yaptıysam olmadı :)

Yazdığım makroyu ekte bulabilirsiniz.

Yardımcı olabilirseniz çok sevinirim.

Excel dosyanızı eklerseniz, daha çabuk cevap bulabilirsiniz.
 
Merhaba tekrar,

Eklediğim excel dosyasına bakarsanız, F sutununda tarihler yazılı. Benim yazdığım makro her gün buna benzer bir excel dosyasını tarayacak ve 03.01.2012 tarihinde çalıştığında F1,F2,F3 sütununda bu tarih yazılı olduğu için otomatik mail atacak. Ama benim yapmak istediğim 03.01.2011 gününde otomatik yollanacak mailin gövdesine şu bilgilerin eklenmesi;

Turquoıse-Turquoıse Kapsül 110812 063/2.raf-sağ (A1,B1,C1,D1,E1 hücresi)
White Opak-Scarlet Opak Kapsül 110812 063/2.raf-sağ (A2,B2,C2,D2,E hücresi)
White Opak-Dark Blue Kapsül 333712 063/2.raf-sağ
(A3,B3,C3,D3,E3 hücresi)

Aynı şekilde de19.01.2011 tarihinde makro çalıştığında F4,F5,F6,F7,F8 hücrelerinde o tarih yazılı olduğu için ;

Jelatin Kapsül 11/STB/026 1108_12_D26
Jelatin Kapsül 11/STB/026 1109_12_D39
Jelatin Kapsül 11/STB/026 1109_12_D43
Hammdde Hammdde 11/STB/026 10//050
Hammdde Hammdde 11/STB/026 10//052

Bilgilerinin otomatik yollanacak mailin gövdesinde yazması.

Umarım açıklayabildim ne yapmak istediğimi.

Yardımcı olursanız çok sevinirim.

İyi günler
 

Ekli dosyalar

Merhaba tekrar,

Eklediğim excel dosyasına bakarsanız, F sutununda tarihler yazılı. Benim yazdığım makro her gün buna benzer bir excel dosyasını tarayacak ve 03.01.2012 tarihinde çalıştığında F1,F2,F3 sütununda bu tarih yazılı olduğu için otomatik mail atacak. Ama benim yapmak istediğim 03.01.2011 gününde otomatik yollanacak mailin gövdesine şu bilgilerin eklenmesi;

Turquoıse-Turquoıse Kapsül 110812 063/2.raf-sağ (A1,B1,C1,D1,E1 hücresi)
White Opak-Scarlet Opak Kapsül 110812 063/2.raf-sağ (A2,B2,C2,D2,E hücresi)
White Opak-Dark Blue Kapsül 333712 063/2.raf-sağ
(A3,B3,C3,D3,E3 hücresi)

Aynı şekilde de19.01.2011 tarihinde makro çalıştığında F4,F5,F6,F7,F8 hücrelerinde o tarih yazılı olduğu için ;

Jelatin Kapsül 11/STB/026 1108_12_D26
Jelatin Kapsül 11/STB/026 1109_12_D39
Jelatin Kapsül 11/STB/026 1109_12_D43
Hammdde Hammdde 11/STB/026 10//050
Hammdde Hammdde 11/STB/026 10//052

Bilgilerinin otomatik yollanacak mailin gövdesinde yazması.

Umarım açıklayabildim ne yapmak istediğimi.

Yardımcı olursanız çok sevinirim.

İyi günler

Kod:
Sub auto_open()
mailat
End Sub
Function BodyOlusturma(Tarih As Date)
For i = 1 To [f65536].End(3).Row
If Tarih = Cells(i, "f") Then
a = a & Cells(i, 1) & " " & Cells(i, 2) & " " & Cells(i, 3) & " " & Cells(i, 4) & " " & Cells(i, 5) & Chr(10)
End If
Next
BodyOlusturma = a
End Function
Sub mailat()
Set OutApp = New Outlook.Application
    Set NewMail = CreateItem(olMailItem)
    With NewMail
    .To = "aaa@aaa.com"
    .Subject = "deneme"
    .Body = BodyOlusturma(Date) '   
    '.Attachments.Add "C:\deneme.txt"
    .Send
    End With
    Set NewMail = Nothing
    Set OutApp = Nothing
End Sub
 
Merhaba tekrar,

Dahaönce yardımlarınızla olusturdugum makro sorunsuz çalışıyordu. Ancak 2-3 hafta önce hata vermeye başladı. Şöyle bir hata veriyor;

bir program sizin adınıza otomatik olarak e-posta göndermeye çalışıyor. bu beklenmeyen bir durumsa engelleyi tıklayın ) gibi bir uyarı geliyor ve izin ver reddet yardım seçenekleri çıkıyor.

Yani her mail atma işleimde bilgisayarın başında olmam ve izin ver demem gerekiyor.

Bu uyarıyı engellemek için ne yapmam gerekiyor ? Outlook ayarlarıyla ilgili sanırım...
 
Uyarı almadan mail göndermek için kodu, değiştirmek gerekebilir. Zannedersem, konu içinde bu durum anlatılmıştı.
 
Sevgili arkadaşlar

aşağıdaki kodları kullanarak c:/içindeki dosyayı mail gönderiyorum fakat direk mail gönderiyor ve kodlara yazdığım mail adresine mail atıyor. Ben direk mail olarak değilde C:\ içindeki bir dosyayı ekli dosya ile göndermeyi istiyorum. Bu konuda aşağıdaki kullandığım kodu nası revize etmem gerekecek. Yardımc olursanız memnu olurum.

Sub SendEmail()

Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.To = "deneme@gmail.com"
.Subject = "Deneme"
.Body = "Bu e-mail deneme amacıyla gönderilmiştir."
.Attachments.Add "C:\mizan.xls"
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing

End Sub
 
Sorunuz anlaşılmıyor, ne yapmak istediğinizi daha net yazınız.

Üstad verdiğim kodları kullanarak c:/içindeki mizan.xls dosyasını outlook açılmadan direk mail gönderebiliyorum. Maili kodun içine editleyerek .To = "deneme@gmail.com" olarak kaydetmiş olduğum adrese outlook açılmadan direk gönderebiliyorum.

Benim istediğim yine C:\ içindeki herhangi bir dosyası örneğin mizan.xls'yis direk outlook açılmadan değilde ekli dosya ile maile ekleyip benim yazacağım mail adresine göre gönderilmeyi bekleyecek hale gelmesini istiyorum. Bilmem kendifimi ifade edebeldim mi?

Bu konuda aşağıdaki kullandığım kodu nası revize etmem gerekecek. Yardımc olursanız memnu olurum.
 
Aşağıdaki sabitler yerine bir hücre adresini kullanarak bu iki kısma değişken tanımlayabilirsiniz. Yada browser yardımıyla ek yapacağınız dosyayı seçebilir ve mail adreslerini bir liste içine alıp buradan seçebilirsiniz.
Kod:
.To = "deneme@gmail.com" 
.Attachments.Add "C:\mizan.xls"
 
Aşağıdaki sabitler yerine bir hücre adresini kullanarak bu iki kısma değişken tanımlayabilirsiniz. Yada browser yardımıyla ek yapacağınız dosyayı seçebilir ve mail adreslerini bir liste içine alıp buradan seçebilirsiniz.
Kod:
.To = "deneme@gmail.com" 
.Attachments.Add "C:\mizan.xls"

Tam olarak istediğim bu değil üstad.

Bir çok mail kodu var üst sayfalarda. Örneğin çalışma kitabını veya komple excel sayfasını maile ek olarak veya excel sayfasındaki herhangi bir hücre aralığını mailin body'sine ekleyerek vs. vs. türlü türlü örnekler var. Hepsini inceledim fakat editleyemedim.

İstediğim çok mu zor acaba.

Yukarıda verdiğim kodlar C: içindeki mizan.xls klasörünü outlok açmadan direk mail olarak gönderiyor. Benim tek istediğim outlok açmadan direk görmesi değilde yine aynı aynı dosyası maile atach yapması. Bilmiyorum istediğim çok mu zor. Excel sayfasını maile ek yapan kodlar var. C:'deki bir dosyası mail gönderen kodlarda var. Ben ikisini editleyip ortaya C:'deki bir dosyası maile ek atac. yapmasını istiyorum.
 
Geri
Üst