اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

ارسال نطاق من الملف الي الايميل


الردود الموصى بها

اخى

قم بوضع هذا الكود فى موديل

Option Explicit

Sub Mail_Range()
'Working in 2000-2007
    Dim Source As Range
    Dim Dest As Workbook
    Dim wb As Workbook
    Dim TempFilePath As String
    Dim TempFileName As String
    Dim FileExtStr As String
    Dim FileFormatNum As Long
 
    Set Source = Nothing
    On Error Resume Next
    Set Source = Range("A1:e15").SpecialCells(xlCellTypeVisible)
    On Error GoTo 0

    If Source Is Nothing Then
        MsgBox "The source is not a range or the sheet is protected, please correct and try again.", vbOKOnly
        Exit Sub
    End If
 
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
 
    Set wb = ActiveWorkbook
    Set Dest = Workbooks.Add(xlWBATWorksheet)

    Source.Copy
    With Dest.Sheets(1)
        .Cells(1).PasteSpecial Paste:=8
        .Cells(1).PasteSpecial Paste:=xlPasteValues
        .Cells(1).PasteSpecial Paste:=xlPasteFormats
        .Cells(1).Select
        Application.CutCopyMode = False
    End With
 
    TempFilePath = Environ$("temp") & "\"
    TempFileName = "Selection of " & wb.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")
 
    If Val(Application.Version) < 12 Then
        'You use Excel 2000-2003
        FileExtStr = ".xls": FileFormatNum = -4143
    Else
        'You use Excel 2007
        FileExtStr = ".xlsx": FileFormatNum = 51
    End If
 
    With Dest
        .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
        On Error Resume Next
        .SendMail "", _
                  "This is the Subject line"
        On Error GoTo 0
        .Close savechanges:=False
    End With
 
    Kill TempFilePath & TempFileName & FileExtStr
 
    With Application
        .ScreenUpdating = True
        .EnableEvents = True
    End With
End Sub

رابط هذا التعليق
شارك

السلام عليكم

هذا الكود الرائع حسب نظري

يعمل على جميع اصدارات الاوفيس

لا كن يعتمد على اوتولوك لارسال البريد

وانت في طلبك لا تريد التعامل مع اوتولوك

شخصيا لا اعرف  طريقة ارسال البريد من الاوفيس من دون استعمال اوتولوك

لاكن مازلت اقول ان هذا الكود رائع

تحياتي

رابط هذا التعليق
شارك

اخي الكريم

انا لا اعرف طريقه استعمال الاوتولوك مع هذا الكود ممكن شرح كيف الاستعمال او حتي توجيهي الي موضوع مشابه به الشرح

شكرا

رابط هذا التعليق
شارك

السلام عليكم

احيانا الشخص منا  يظن انه يملك الكم الكافي والازم فيما يخص برمجة الاكسل

لاكن حين يقابل او يرى بعضا من ابداعات مبدعي الاكسل يعلم ان ماتعلمه هو سوى القليل

وان برمجة vba بحر واسع وعميق

تفضل اخي الكريم هذا الكود الرائع وجدته في احد المواقع الاجنبية

هذا الكود يرسل البريد من  الاكسل مباشرة الى البريد المرسل اليه لاكن تحتاج حساب في gmail

وايضا يعتمد على اضافة  Microsoft CDO for Windows 2000

لكي تضيفها شاهد هذه الصورة

 

post-84094-0-07752600-1398615222_thumb.j

Sub SentMail()
Dim Mail As New Message

Dim Config As Configuration

Set Config = Mail.Configuration

Config(cdoSendUsingMethod) = cdoSendUsingPort
Config(cdoSMTPServer) = "smtp.gmail.com"
Config(cdoSMTPServerPort) = 25
Config(cdoSMTPAuthenticate) = cdoBasic
Config(cdoSMTPUseSSL) = True
Config(cdoSendUserName) = "بريدك الاكلتروفي GMAIL"
Config(cdoSendPassword) = "الباسوورد"
Config.Fields.Update

Mail.To = "البريد المرسل ايه"
Mail.from = Config(cdoSendUserName)
Mail.Subject = "Email Subject"
Mail.HTMLBody = "<b>Email body</b>"
' هذا هو الجزء الذي يرسل في هته الحال سيتم ارسال صورة من الجهاز الى بريد ما

Mail.AddAttachment "C:\Users\Admin\Pictures\QQ.jpg"

On Error Resume Next
Mail.Send
If Err.Number <> 0 Then
MsgBox Err.Description, vbCritical, "There was an error"
Exit Sub
End If
MsgBox "Your email hes sent!", vbInformation, "Sent"


End Sub

ان اعطاك خطاء قم باستبدال قيم البورت  من 25 الى  465

المهم هذا بداية خيط لتعامل مع البريد الالكتروني من دون الاتولوك

يبقى عليك معرفة كيفية استعمالها الانسب

ارجو ان تستفيدو من هذا الكود الرائع من وجهة نضري

 

منقـــــــــــــول

رابط هذا التعليق
شارك

السلام عليكم

ذالك ليس خطاء

ذالك مسار الملف الذي سيرسل عبر الايمايل

وهو مصار صورة جربته في جهازي والبطبع تلك الصورة ليست موجودة في اجهزتكم لذالك يعطيكم خطاء

غير المسار بمسار ملف اوصورة او أي شيء تريد ان ترسله

تحياتي

رابط هذا التعليق
شارك

أخى فى الله

بعد اذن أستاذنا القدير // شوقي 

 

هذا ليس خطأ ولكن المطلوب منكم اخى الكريم

أن تقوم بحفظ ملف الإكسيل بإمتداد يسمح بإستخدام الماكرو اى مشروع vba

 

قم بحفظ الملف ( save as ) ثم اختر مصنف به امتداد ماكرو 

 

تقبل منى وافر الاحترام والتقدير

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information