• DİKKAT

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

Excel 2016 Makro Hata

Fuatckmk

Altın Üye
Katılım
21 Aralık 2017
Mesajlar
84
Excel Vers. ve Dili
Excel 365 - Türkçe
Merhabalar;

Microsoft 2013 den 2016 ya geçiş yaptığımda bazı makrolardan hata alıyorum.

Hataların neyden kaynaklanabileceğini öğrenmek istiyorum. Otomatik gönderdiğim mail vardı fakat aldığım hata aşağıdaki gibi.

" Run-time error '-2147417851 (80010105)':
Method 'To' of object'_Mailtem'failed.

Başka makrolarım da olduğu için alacağım hatalarda nereye odaklanmam gerekiyor? 1 gün önce aktif olarak kullanıyordum.
 
"Mailtem" metodu ile ilgili bir hata mesajı almışsınız. Kullandığınız kod içinde iki versiyon arasında uyuşmayan bir özellik buna sebep oluyordur. Buna odaklanın.
 
"Mailtem" metodu ile ilgili bir hata mesajı almışsınız. Kullandığınız kod içinde iki versiyon arasında uyuşmayan bir özellik buna sebep oluyordur. Buna odaklanın.

Korhan Bey teşekkürler,

O kadar baktım fakat bulamadım. Yani iki versiyon için farklılıkları nereden tespit edeceğimi bilemedim. Yardımcı olabilir misiniz?

Kod:
Sub MAIL_GONDER()
    Dim Outlook_App As Object
    Dim Outlook_Mail As Object

    Dim S1 As Worksheet, X As Long
    Dim dosya, altdosyalar
    Set Outlook_App = CreateObject("Outlook.Application")
    Set S1 = Sheets("Sayfa1")
    For X = 2 To S1.Cells(S1.Rows.Count, 1).End(3).Row
        If S1.Cells(X, 6) = "" Then
        dosya = S1.Cells(X, 5).Value
  If CreateObject("Scripting.FileSystemObject").GetFolder(dosya).Files.Count > 0 Then
            Set Outlook_Mail = Outlook_App.CreateItem(0)
            With Outlook_Mail
            .display
                .To = S1.Cells(X, 3)
                .CC = S1.Cells(X, 4)
                .Subject = S1.Cells(X, 2)
                .HTMLBody = S1.Cells(X, 1) & .HTMLBody
                
Dim say As Integer
For Each altdosyalar In CreateObject("scripting.filesystemobject").GetFolder(dosya).Files
.Attachments.Add altdosyalar.Path
say = say + 1
Next
If say > 0 Then
                '.Attachments.Add dosya
                .Save
                .send
                S1.Cells(X, 6) = "Gönderildi."
 
End If
            End With
        End If: End If
    Next
    Set S1 = Nothing
    Set Outlook_Mail = Nothing
    Set Outlook_App = Nothing
    
  MsgBox "Gönderildi..", vbInformation

  
End Sub
 
Güncel...Çözebilmiş değilim :)
 
Kodu F8 tuşu ile adım adım çalıştırabilirsiniz. Bu şekilde hata veren satırı kolayca tespit edebilirsiniz.
 
Merhaba,

Küçük bir detaydan dolayı hata alıyorsunuz. Aşağıdaki gibi düzeltip deneyiniz.

Kod:
.To = S1.Cells(X, 3).Value
.CC = S1.Cells(X, 4).Value
.Subject = S1.Cells(X, 2).Value
.HTMLBody = S1.Cells(X, 1).Value & .HTMLBody
 
Merhaba,

Küçük bir detaydan dolayı hata alıyorsunuz. Aşağıdaki gibi düzeltip deneyiniz.

Kod:
.To = S1.Cells(X, 3).Value
.CC = S1.Cells(X, 4).Value
.Subject = S1.Cells(X, 2).Value
.HTMLBody = S1.Cells(X, 1).Value & .HTMLBody

İlgi ve yardımınıza teşekkür ederim.

Sorun çözüldü :)
 
Geri
Üst