access te oluşan word dosyayı nasıl mail attach yapabilirim.

Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Merhaba Arkadaşlar,

Hepinize Kolay gelsin

Çalışmamda Word e aktar butonuna bastıktan sonra otomatik olarak oluşan word dosyasını tekrar bu tuşun olayına otomatik olarak bu dosyayı nasıl mail attach yapabilirim.

not: Ekte resimli dosyada da anlatmaya çalıştım.

Hepinize çok teşekkürler.

Kolay gelsin..
 
Son düzenleme:
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
2 farklı yoldan bahsedicem,

1 manuel:

Kod:
    Dim stDocName As String
    Dim strPath As String
    Dim tarih
    
    tarih = Replace(Date, "/", ".")

    stDocName = "qrySiparisMenuSorgu"
    strPath = "D:\ " & Me.SiparisVeren & tarih & ".rtf"
    
    'DoCmd.RunMacro stDocName
    DoCmd.OpenReport stDocName, acViewPreview, "Report Filter"
    DoCmd.OutputTo acOutputReport, stDocName, acFormatRTF, strPath
    DoCmd.Close acReport, stDocName
    
    DoCmd.SendObject acReport, stDocName, acFormatRTF
    
    MsgBox "İşlem Tamamlandı.", 48, "Word Aktar"
2 otomatik :

Kod:
Dim stDocName As String
    Dim strPath As String
    Dim tarih
    Dim objCDOMail As Object
    
    tarih = Replace(Date, "/", ".")

    stDocName = "qrySiparisMenuSorgu"
    strPath = "D:\ " & Me.SiparisVeren & tarih & ".rtf"
    
    'DoCmd.RunMacro stDocName
    DoCmd.OpenReport stDocName, acViewPreview, "Report Filter"
    DoCmd.OutputTo acOutputReport, stDocName, acFormatRTF, strPath
    DoCmd.Close acReport, stDocName
    
 
 
    Set objCDOMail = CreateObject("CDO.Message")

    objCDOMail.To = [COLOR="Red"]"Gidecek mail adresi"[/COLOR]
    objCDOMail.From = [COLOR="red"]"Gönderenin mail adresi"[/COLOR]
    objCDOMail.Subject = [COLOR="red"]"Konu"[/COLOR]
    objCDOMail.Addattachment strPath
    objCDOMail.TextBody = [COLOR="red"]"Mesaj Kısmı"[/COLOR]   
    
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = [COLOR="red"]"Smtp server"[/COLOR]
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = [COLOR="red"]"mail kullanıcı adı"[/COLOR]
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = [COLOR="red"]"şifre"[/COLOR]
    objCDOMail.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    objCDOMail.Configuration.Fields.Update
    
    objCDOMail.Send

    Set objCDOMail = Nothing
    
    MsgBox "İşlem Tamamlandı.", 48, "Word Aktar"
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
sayın pcman

öncelikle çok teşekkürler konumla ilgilendiğiniz için

verdiğiniz kodları programıma uyguladım fakat ekteki hata ekranıyla karşılaşıyorum. 2 farklı mail hesabıyla denedim fakat yapamadım bir türlü.

Ayrıca sanırım eksik bi açıklama yapmışım onu da belirtim bu program network de 5 kişi tarafından kullanılacak o yüzden belirtmiş olduğunuz yöntem sanırım tek kullnıcı için

Aslında asıl istedğim Word dosyası oluştuktan sonra ms outlook veya outlook express mail gönderme ekranının (oluşan word dosyası attach de olacak şekilde gelmesini sağlayabilir miyiz?

Tekrar çok teşekkürler

Kolay gelsin
 
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
Dostum ilk verdiğim örnekteki gibi kullanmalısın ozaman istediğin gibi mail attach olur...


Dim stDocName As String
Dim strPath As String
Dim tarih

tarih = Replace(Date, "/", ".")

stDocName = "qrySiparisMenuSorgu"
strPath = "D:\ " & Me.SiparisVeren & tarih & ".rtf"

'DoCmd.RunMacro stDocName
DoCmd.OpenReport stDocName, acViewPreview, "Report Filter"
DoCmd.OutputTo acOutputReport, stDocName, acFormatRTF, strPath
DoCmd.Close acReport, stDocName

DoCmd.SendObject acReport, stDocName, acFormatRTF

MsgBox "İşlem Tamamlandı.", 48, "Word Aktar"
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Sayın Pcman

Onuda denedim fakat o zamanda qrySiparisMenuSorgu.rtf olarak oluşuyor mail de dosya ismi maalesef.

Teşekkürler
 
Katılım
23 Kasım 2007
Mesajlar
245
Excel Vers. ve Dili
2003
evet o komut raporun adını olduğu gibi yazdırıyor dosya ismine bunu değiştirmenin yolu varmı bilmiyorum ama program networkte çalışacak dediniz bu rft dosyası herkesin kendi bilgisayarındamı oluşacak yoksa server damı ?
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın selcukkahya,

mail attach için şu kodları kullanabilirsiniz:

Kod:
 Dim mess_body As String
        Dim appOutLook As Outlook.Application
        Dim MailOutLook As Outlook.MailItem
        Set appOutLook = CreateObject("Outlook.Application")
        Set MailOutLook = appOutLook.CreateItem(olMailItem)
            
            Set appOutLook = CreateObject("Outlook.Application")
            Set MailOutLook = appOutLook.CreateItem(olMailItem)
            With MailOutLook
            .BodyFormat = olFormatRichText
            .To = Me.Email_Address      'Veya e-mail adresi
            .Subject = Me.Mess_Subject 'veya konu
            .HTMLBody = Me.Mess_Text 'veya mail gövdesine yazılacaklar
            If Left(Me.Mail_Attachment_Path, 1) <> "<" Then
                .Attachments.Add (EkleyeceğinizDosyanınVeriYolu)
            End If
            '.DeleteAfterSubmit = True   'This would let Outlook send th note without storing it in your sent bin
            .Send
            End With
            'MsgBox MailOutLook.Body
            Exit Sub
email_error:
            MsgBox "Bir hata oluştu." & vbCrLf & "Hata mesajı:: " & Err.Description
            Resume Error_out
Error_out:
İyi çalışmalar
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Sayın Modalı

Verdiğiniz kodları word butonunun olay yordamına ilave ettim fakat olmadı ,sonra e-mail gönder butonuna ilave ettim fakat yine olmadı :( ekteki hata ekranıyla karşılaştım.

Rica etsem çalışmamı da ekte gönderiyorum yardımcı olabilirseniz çok sevinirim.

teşekkürler.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın selcukkahya,

Uygulamaya daha sonra bakabileceğim.

Ama resimden referans hatası olduğunu anladım. Referanslarda MS Office Outlook xx Library yi eklemeye çalışın.

Olmazsa haberim olsun.

İyi çalışmalar
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Sayın Modalı

referansları kontrol ettim.işaretli gözüküyor.

hattan resmini çektim ekte bulabilirsiniz.

teşekkürler.

kolay gelsin
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın selcukkahya,

Denedim çalışıyor. Yaptığım referansı biraz yukarıya taşımak.

Yanlız kodları değiştirin, çünkü tüm e-mailler bana gelecek:rolleyes:

Bir de tabi mesaj özeti ve mesaj gövdesine de uygun şeyler yazmanız gerekiyor. Veya atamanız.

İyi çalışmalar:)
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Sayın Modalı

Ellerinize Sağlık güzel olmuş fakat ;

neden dosya uzantısında belli bir rtf uzantılı dosyanın yolunu belirttiğinizi anlamadım ya da sanırım ben durumu yanlış anllattım size.(özür dilerim.)

benim asıl yapmak istediğim,

word e aktar tuşuna bastığımda normalde formdaki o anki verileri sipariş veren adı başa ve günün tarihi yanına eklenerek geliyor .(SELCUK27.06.2008.RTF)buraya kadar herşey çok güzel .

burdan sonra bu tuşa ilave olarak oluşan SELCUK27.06.2008.RTF Dosyasını mail attach olarak devam ettirmek ve belirlediğim kişi veya kişilere bu addaki dosyayı mail göndermek. (sadece word tuşuna bastığımda gerçekleştirmek bu 2 işlemi)

sizi uğraştırdığımı biliyorum.

son gönderdiğiniz kodları buna göre düzenleyebilir miyiz?

çok çok teşekkürler
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın selcukkahya,

Denemedim ama herhalde çalışacaktır

Kod:
Private Sub cmdWordAktar_Click()
    
On Error GoTo Err_cmdWordAktar_Click
    Dim stDocName As String
    Dim strPath As String
    Dim tarih
    Dim mess_body As String
    Dim appOutLook As Outlook.Application
    Dim MailOutLook As Outlook.MailItem
    
    tarih = Replace(Date, "/", ".")

    stDocName = "qrySiparisMenuSorgu"
    strPath = "D:\ACCESS_PROJELERİM\köksal bey\" & Me.SiparisVeren & tarih & ".rtf"
    
    'DoCmd.RunMacro stDocName
    DoCmd.OpenReport stDocName, acViewPreview, "Report Filter"
    DoCmd.OutputTo acOutputReport, stDocName, acFormatRTF, strPath
    DoCmd.Close acReport, stDocName
     
    MsgBox "İşlem Tamamlandı.", 48, "Word Aktar"
    
        Set appOutLook = CreateObject("Outlook.Application")
        Set MailOutLook = appOutLook.CreateItem(olMailItem)
            
            With MailOutLook
                .BodyFormat = olFormatRichText
                .To = "modali2006@hotmail.com"   'Veya e-mail adresi
                .Subject = "deneme" 'veya konu
                .HTMLBody = "deneme1" 'veya mail gövdesine yazılacaklar
                'If Left(Me.Mail_Attachment_Path, 1) <> "<" Then
                    .Attachments.Add strPath
                'End If
                '.DeleteAfterSubmit = True   'This would let Outlook send th note without storing it in your sent bin
                .Send
                End With
                    MsgBox "İşlem Tamamlandı", 48, "e-mail Yolla"
                Exit Sub
    
Exit_cmdWordAktar_Click:
    Exit Sub
    
Err_cmdWordAktar_Click:
    MsgBox Err.Description
    Resume Exit_cmdWordAktar_Click
    
End Sub
Bir uyarım daha olacak:

e-mail adres bilgileride sanırım bulunacak o zaman:

Kod:
.To = "modali2006@hotmail.com"
satırı
Kod:
 .To = Me.taxtemail
gibi bir şey olması gerekiyor. Burada txtemail formumuzda bulunan e-mail adresi olmalı

İyi çalışmalar
 
Katılım
17 Şubat 2008
Mesajlar
95
Excel Vers. ve Dili
excel xp tr
Sayın Modalı

Gerçekten mükemmelsiniz.

Sayenizde çok önemli bi uygulamayı gerçekleştirmiş bulunuyorum.

Ellerinize sağlık.

çok teşekkürler.

Kolay gelsin
 
Üst