Excel Ustalarına Bir Makro Fonksiyonu Hakkında Sorum
-
Merhaba arkadaşlar.
Çalıştığım firmada ihracat operasyondaki arkadaşlara hız kazanmaları için bir excel dökümanı hazırladım. Kantar'dan gelen detayları aşağıdaki turuncu ekrandaki ilgili yerlere dolduruyorlar ve YEŞİL ekranda otomatik metin oluşuyor.
Burada maksat turuncu ekrandaki veriler girildiğinde YEŞİL ekranda kendiliğinden oluşan alanları mail atmak. Aşağıdaki gibi:
Burada makro ile ilgili sorum şu. Buna bir makro kod ile GÖNDER butonu oluşturabilir miyiz? Excel ekranında GÖNDER tuşuna basığımızda OUTLOOK programında YENİ MAİL ekranı açılacak, exceldeki KONU alanı OUTLOOK'ta KONU alanına, MAİL içeriği OUTLOOK'ta mail içeriğine otomatik kopyalayacak. Bize sadece mail adresi girme işlemi kalacak.
Bunu sağlayabilir miyiz?
Şu an şirketteki bilgi işlem engeli nedeniyle excel dökümanını ekleyemedim. Yardımcı olmak isteyen arkadaşlara paylaşırlarsa mail olarak göndermek istiyorum
Yardımlarınızı rica ederim
-
güzel konu bakalım bilen biri çıkacak mı
-
http://www.megafileupload.com/tamV/deneme.xlsm
a1:b5 aralığını kendine göre düzenleyebilirsin
bugax tarafından 02/Oca/17 16:52 tarihinde düzenlenmiştir -
bugax bunu yazdı
http://www.megafileupload.com/tamV/deneme.xlsm
a1:b5 aralığını kendine göre düzenleyebilirsin
Hocam çok teşekkür ederim.
Nasıl yaptın? Bize de anlatabilir misin?
-
yapılıyor hatta mail adresini excel üzerinden bile yaza bilirsin.
vakti zamamında yaptığım bir macro.
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.To = Cells(29, 4) //hücredeki mail adresi d sütunu 29. satırdaki mail adresi
'.Subject = Cells(1, 4)
.Subject = "konu" //burası konu başlığı hücrelerden bilgi alıpta yapa bilirsin.
.Body = "mail metni" // burası mail içeriği hücrelerden veri alıp bir bütün olarak yapabilirsin.
'.Attachments.Add "C:\Asmm\Test.xls" // ek için kullanılıyor.
'.SendUsingAccount = OutApp.Session.Accounts.Item() //kullanıcı mailli. burada outlooktan hangi kullanıcı seçiliyse o kullanıcıdan mail gönderiliyor.
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing -
Esquire bunu yazdı
yapılıyor hatta mail adresini excel üzerinden bile yaza bilirsin.
vakti zamamında yaptığım bir macro.
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.To = Cells(29, 4) //hücredeki mail adresi d sütunu 29. satırdaki mail adresi
'.Subject = Cells(1, 4)
.Subject = "konu" //burası konu başlığı hücrelerden bilgi alıpta yapa bilirsin.
.Body = "mail metni" // burası mail içeriği hücrelerden veri alıp bir bütün olarak yapabilirsin.
'.Attachments.Add "C:\Asmm\Test.xls" // ek için kullanılıyor.
'.SendUsingAccount = OutApp.Session.Accounts.Item() //kullanıcı mailli. burada outlooktan hangi kullanıcı seçiliyse o kullanıcıdan mail gönderiliyor.
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = NothingHocam teşekkür ederim.
Sana zahmet biraz detay verebilir misin? Nasıl kullanacağım bu kodu?
-
-
up :)
-
dosyanın çalışan halını yükledim.
http://s3.dosya.tc/server10/69r1ov/mailGonder.rar.html
hatta kodunuda ekleyim.
Sub mailGonder1()
'Tools references microsoft outlook 14.0 object library eklemeyi unutma
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.To = Cells(1, 2) 'hücredeki mail adresi b sütunu 1. satırdaki mail adresi
.Subject = Cells(2, 2) 'hücredki mail konu başlığı b sütunu 2 satırdaki hücre içeriği
' .Subject = "konu" 'burası konu başlığı hücrelerden bilgi alıpta yapa bilirsin.
.Body = Cells(3, 2) ' burası mail içeriği b sütunu 3 satırdaki hücre içeriği
'.Attachments.Add "C:\Asmm\Test.xls" // ek için kullanılıyor.
'.SendUsingAccount = OutApp.Session.Accounts.Item() //kullanıcı mailli. burada outlooktan hangi kullanıcı seçiliyse o kullanıcıdan mail gönderiliyor.
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing
End Sub