• DİKKAT

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

Ismi degisen dosyayi makro ile email olarak gondermek

  • Konbuyu başlatan Konbuyu başlatan ne3c9m
  • Başlangıç tarihi Başlangıç tarihi
Katılım
17 Nisan 2006
Mesajlar
15
Merhaba,

Makro ile ismi degisen bir dosyayi nasil email olarak gondermek istiyorum. Sitede asagidaki kodu buldum ama sabit bir dosya ismi olmadigi icin isime yaramadi.

Dosya ismini farkli kaydetmek icin kullandigim kod soyle;

End With
ChDir "c:\users\user\desktop"
Range("A1").Select
sFileName = "Stok_Durumu_" + Format(Now, "ddmmyyyyhhmm") + ".xls"
ActiveWorkbook.SaveAs sFileName
End With

dosyayi email ile gondermek icin buldugum kod ise soyle;

Sub SendEmail()
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
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 "C:\Test.xls"
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing

End Sub

Iyi gunler,
 
Kod:
Sub kaydet()
ChDir "c:\users\user\desktop"
Range("A1").Select
sFileName = "Stok_Durumu_" + Format(Now, "ddmmyyyyhhmm") + ".xls"
ActiveWorkbook.SaveAs sFileName
SendEmail
End Sub


Sub SendEmail()
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
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 "c:\users\user\desktop\" & ActiveWorkbook.Name
.Save
.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing

End Sub
şeklinde dener misiniz ?
 
Hamitcan hocam,

Ilginiz ve verdiginiz bilgi icin tesekkur ederim.

Sorun halloldu.

Iyi gunler dilerim.
 
merhaba,
aşağıdaki şekilde yazıyorum. dosyamın adı "IL TOPLAMLARI05012011.txt"
sadece tarih değişiyor ve ben bun her gün gönderiyorum.
adresi aşağıdaki makro da var. ama dosyayi bir türlü bulamıyor. yardımcı olabilir misiniz.

Sub auto_open()
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
.To = "posta@posta.com.tr"
.Subject = "deneme maili"
.Body = Chr(13) & Chr(13) & Chr(13) & Chr(13) & " İyi Çalışmalar." & Chr(13) & Chr(13) & "Adım SOYADIM" & Chr(13) & Chr(13) & " Tel: 111 11 11"
.Attachments.Add "\\199.188.187.186\c$\dosya\IL TOPLAMLARI" & Format(Now, "ddmmyyyy") & ".txt"

.Send
End With
Set NewMail = Nothing
Set OutApp = Nothing
Application.WindowState = xlNormal
End Sub
 
Son düzenleme:
ip no yerine, ilgili sürücünün adını kullanarak yolu düzenlemeyi denediniz mi ?
 
ip ile ilgili sorunum yok. dosya ismini yazarak yaparsam bu işlemi mail atabiliyorum. ama her seferinde dosya ismini değiştirmem gerekiyor. ip ile ilgili sorunum olsaydı böyle de gitmezdi.
sorunum o klasör altındaki dosyayı veya dosyaları ekletemiyorum. diğer örneklere baktım aynılarını yaptım ama yine çalışmadı.
 
merhaba,
aşağıdaki makro ile ilgili bir sorum olacak.
A değeri makinemde bir adreste klasörün altındaki dosyayı görüyor. Bu adres tarih içeriyor. hergün değişen bir tarih. bunu aşağıdaki şekilde A dan okuttuğumda adresi doğru buluyor ama altındaki dosyayı görmüyor.
C'deki gibi yazarsam görüyor. tabiki X değerindeki alana da C yerine A yazıyorum.
ama ben A daki şekilde yazmak zorundayım. çünkü hergün tarih alanı değişiyor, sabit değil. bana yardımcı olabilir misiniz?

Range("A20:A5000").ClearContents
tarih = Format(Now() - 1, " yyyymmdd")

A = Sheets(B).Cells(4, 1) + tarih + "\*"

C = "\\xx.xx.xx.xx\c$\CTML\20110120\*"

X = Dir(A, vbArchive)
I = 19
Do While X <> ""
I = I + 1
Cells(2, 5) = I
Cells(I, 1) = X
X = Dir
Loop
 
Son düzenleme:
Tam olarak anlamadım ama bu şekilde bir deneyin. ("+" karakteri yerine "&" karakterini" kullanın.)
Kod:
A = Sheets(B).Cells(4, 1) & tarih & "\*"
 
onu da denedim + ve & olması birşey değiştirmiyor. yani A alanı klasörü görüyor. o alanda bir sorunum yok gibi. sadece altındaki dosyaları gördüremiyorum.
ama C deki gibi yazarsam gördürebiliyorum.
hergün tarih değiştiği için C deki gibi yazamıyorum. istiyorum ki tarihi kendisi bulsun.
 
Kod:
A = Sheets(B).Cells(4, 1) + tarih 
C = "\\" &  A & "\c$\CTML\20110120\*"
böyle deneyin.
 
Geri
Üst