рдорд╛рд╕ рдореЗрд▓рд┐рдВрдЧ рдмрдирд╛рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ VBA рдХреЗ рд╕рд╛рде Microsoft рдЖрдЙрдЯрд▓реБрдХ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░реНрдпрд╛рд▓рдп, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред
рддреЛ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рд╡рд╛рд▓ рдХреНрдпрд╛ рд╣реИ: рдЖрдкрдХреЛ рдХрдИ рджрд░реНрдЬрдиреЛрдВ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрд▓рдЧреНрдирдХ рдХреЗ рд╕рд╛рде рдИрдореЗрд▓ рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рдд рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдореИрдХреНрд╕рдмреБрд▓рдХ рдореЗрд▓рд░ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ Microsoft Office рд╣реИ, рдФрд░ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ, Microsoft Office 2013ред

рдореИрдВ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реВрдВ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╡рд┐рдХрд▓реНрдк - рдЯреЗрдореНрдкрд▓реЗрдЯ, рдбреНрд░рд╛рдлреНрдЯ рдФрд░ рд╕реНрд╡рд░реВрдкрдг рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд┐рдирд╛ред рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЖрдЙрдЯрд▓реБрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (VBA рд╕рдВрдкрд╛рджрдХ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝реЗрдВ, рд╣рдо рдЯреВрд▓> рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ "Microsoft Excel 15.0 рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА" рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ), "рдПрдХ рдкрдВрдХреНрддрд┐, рдПрдХ рдкрддрд╛", рдкрддреНрд░ рдХреЗ рдореБрдЦреНрдп рднрд╛рдЧ рдХреЗ рд╕рд╛рде рдПрдХ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рдПрдХ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ред рдлрд╝рд╛рдЗрд▓реЗрдВ рдЬреЛ рд╣рдо рдЕрдиреБрд▓рдЧреНрдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рднреЗрдЬреЗрдВрдЧреЗред
рд╕рд╛рдорд╛рдиреНрдп рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ: рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдФрд░ рдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ, рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд▓реВрдк рдореЗрдВ рдЫрдВрдЯрдиреАред
рддреБрд░рдВрдд, рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкреВрд░реНрдг рдХреЛрдб рдирд╣реАрдВ рд╣реИ рдЬреЛ рдиреНрдпреВрдирддрдо рдЖрдХрд╛рд░ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рджрдХреНрд╖рддрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдФрд░ рдШреЛрд╖рд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдореБрдХрд╛рдмрд▓рд╛ рдХрд░рддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рд╕реНрд╡рдпрдВ рджрд░реНрдЬрдиреЛрдВ рдкрддреНрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рдерд╛ рдФрд░ рдореИрдВрдиреЗ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрд╛ рдерд╛, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рддреЛ рд╡рд╣ рдХреЛрдб рдХреЛ рдЬрд┐рддрдирд╛ рдЪрд╛рд╣реЗ рдЙрддрдирд╛ рд╕реБрдзрд╛рд░ рд╕рдХрддрд╛ рд╣реИред
VBA, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЪрд░ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рд╕реНрдкрд╖реНрдЯ рдШреЛрд╖рдгрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЖрдк рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдбрд┐рдо рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд╛рдг рдореЗрдВ "рдПрдкрд┐рд╕реЛрдбрд┐рдХ рднреВрдорд┐рдХрд╛рдУрдВ" рдореЗрдВ рдХреБрдЫ рдЪрд░ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдкрд╣рд▓реЗ рд╣рдо рд░рджреНрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдкрддреНрд░ рдХреЗ рд╡рд┐рд╖рдп рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВред
TxtSubj = InputBox(" ", "") If Len(Trim(TxtSubj)) = 0 Then Exit Sub End If 

рдЕрдм рдпрд╣ рдкрддреНрд░ рдХреЗ рдкрддреЗ рдФрд░ рдкрд╛рда рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓ рдХреА рдмрд╛рд░реА рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХрд╛ рдЙрджрдп рд╣реБрдЖред рдлрд╝рд╛рдЗрд▓ рдЪрдпрди рд╕рдВрд╡рд╛рдж рдХреИрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ? рдореИрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдард┐рди рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ред рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рд▓реЗрдХрд░ рдЖрдирд╛ рд╣реЛрдЧрд╛ред рдХрдИ рд▓реЛрдЧ Application.GetOpenFilename рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдЙрдЯрд▓реБрдХ рдореЗрдВ рдРрд╕рд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВрдиреЗ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред "рдкреНрд░рд╛рдЗрд╡реЗрдЯ рдбрд┐рдХреНрд▓реЗрдпрд░ PtrSafe рдлрдВрдХреНрд╢рди GetOpenFileName Lib" comdlg32.dll "..." рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ (Win7, x64 рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХрд╛рд░рдг PtrSafe)ред рдореИрдВрдиреЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЬрд╛рд░реА рдирд╣реАрдВ рдХреАрдВ, рд▓реЗрдХрд┐рди рдХреЙрд▓ рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рднреА рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджрд┐рдпрд╛ред рдореБрдЭреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдпрджрд┐ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ - рдореИрдВ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдореБрдЭреЗ Excel.Application рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
 Dim xlApp As New Excel.Application Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = False .Title = "   " .Filters.Add " ", "*.txt", 1 If .Show = -1 Then For Each vrtSelectedItem In .SelectedItems Path2Body = vrtSelectedItem Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing 

рдФрд░ рджреВрд╕рд░реА рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП
 Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = False .Title = "   " .Filters.Add " ", "*.txt", 1 If .Show = -1 Then For Each vrtSelectedItem In .SelectedItems Path2To = vrtSelectedItem Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing 


рдФрд░ рдЕрдм рдирд┐рд╡реЗрд╢ред рдпрд╣рд╛рдБ рдореИрдВрдиреЗ рдПрдХ рдбрд╛рдпрдирд╛рдорд┐рдХ рдПрд░реЗ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдФрд░ рд╕рдВрд╡рд╛рдж рдХреЗ рдХрдИ рд╡рд┐рдХрд▓реНрдк рдХреА рд╕рдВрднрд╛рд╡рдирд╛ред
рдХреЛрдб
 Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = True .Title = ",   " .Filters.Add " ", "*.*", 1 If .Show = -1 Then i = 0 ReDim Preserve Path2Att(i) For Each vrtSelectedItem In .SelectedItems Path2Att(i) = vrtSelectedItem i = i + 1 ReDim Preserve Path2Att(i) Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing 


рд╣рд░ рдмрд╛рд░ рдореИрдВрдиреЗ fd рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдФрд░ рдбрд┐рд▓реАрдЯ рдХрд░ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЕрдЧрд▓реА рдХреЙрд▓ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕реЗ рд╕рд╛рдл рдХрд░рдирд╛ рдЖрд╕рд╛рди рдерд╛ред
рдкрд╛рда рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
 txtBody = ReadTXTfile(Path2Body) Item2To = ReadTXTfile2Arr(Path2To) 

рдФрд░ рдпрд╣рд╛рдБ рдЙрдирдХрд╛ рд╕реЛрд░реНрд╕ рдХреЛрдб рд╣реИ
 Function ReadTXTfile(ByVal filename As String) As String Set FSO = CreateObject("scripting.filesystemobject") Set ts = FSO.OpenTextFile(filename, 1, True): ReadTXTfile = ts.ReadAll: ts.Close Set ts = Nothing: Set FSO = Nothing End Function Function ReadTXTfile2Arr(ByVal filename As String) As Variant Const OpenFileForReading = 1 Const OpenFileForWriting = 2 Const OpenFileForAppending = 8 Const vbSplitAll = -1 Dim S As Variant Set FSO = CreateObject("Scripting.FileSystemObject") Set FSOFile = FSO.GetFile(filename) Set TextStream = FSOFile.OpenAsTextStream(OpenFileForReading) Do While Not TextStream.AtEndOfStream S = S & TextStream.ReadLine & vbNewLine Loop TextStream.Close ReadTXTfile2Arr = Split(S, vbNewLine, vbSplitAll, vbTextCompare) Set TextStream = Nothing Set FSOFile = Nothing Set FSO = Nothing End Function 


рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдРрд╕рд╛ рдХреЛрдб рдбрд╛рд▓рд╛
'' рдбреЗрдЯрд╛ рдирд┐рдпрдВрддреНрд░рдг
 'Debug.Print " " 'Debug.Print "-----------------" 'For i = 0 To UBound(Item2To) - 1 ' Debug.Print Item2To(i) 'Next i 'Debug.Print " " 'Debug.Print "-----------------" 'For i = 0 To UBound(Path2Att) - 1 ' Debug.Print Path2Att(i) 'Next i 'Debug.Print " " 'Debug.Print "-----------" 'Debug.Print TxtSubj 'Debug.Print " " 'Debug.Print "-----------" 'Debug.Print txtBody 

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдЕрдм рдмрд╛рд╣рд░ рдЯрд┐рдкреНрдкрдгреА рдХреА рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЭреВрда рд╣реИред
рдЕрдм рдЫреЛрдЯрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдкрддреНрд░реЛрдВ рдХреА рдкреАрдврд╝реА рд╣реИред
 Dim olMailMessage As Outlook.MailItem For i = 0 To UBound(Item2To) - 1 Set olMailMessage = Application.CreateItem(olMailItem) With olMailMessage DoEvents .To = Item2To(i) .Subject = TxtSubj .Body = txtBody For k = 0 To UBound(Path2Att) - 1 .Attachments.Add Path2Att(k), olByValue DoEvents Next k .Send End With Set olMailMessage = Nothing Next i 

рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ .Send рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рд╣реЗрдЬреЗрдВред рдлрд┐рд░ рдмрдирд╛рдП рдЧрдП рдЕрдХреНрд╖рд░ рдбреНрд░рд╛рдлреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред

рдпрд╣рд╛рдБ рдкреВрд░рд╛ рдореЙрдбреНрдпреВрд▓ рдХреЛрдб "рдЬреИрд╕рд╛ рд╣реИ" рд╣реИред
рдХреЛрдб
 Attribute VB_Name = "Module" Function ReadTXTfile(ByVal filename As String) As String Set FSO = CreateObject("scripting.filesystemobject") Set ts = FSO.OpenTextFile(filename, 1, True): ReadTXTfile = ts.ReadAll: ts.Close Set ts = Nothing: Set FSO = Nothing End Function Function ReadTXTfile2Arr(ByVal filename As String) As Variant Const OpenFileForReading = 1 Const OpenFileForWriting = 2 Const OpenFileForAppending = 8 Const vbSplitAll = -1 Dim S As Variant Set FSO = CreateObject("Scripting.FileSystemObject") Set FSOFile = FSO.GetFile(filename) Set TextStream = FSOFile.OpenAsTextStream(OpenFileForReading) Do While Not TextStream.AtEndOfStream S = S & TextStream.ReadLine & vbNewLine Loop TextStream.Close ReadTXTfile2Arr = Split(S, vbNewLine, vbSplitAll, vbTextCompare) Set TextStream = Nothing Set FSOFile = Nothing Set FSO = Nothing End Function Public Sub Autosender() '      (   ), '     '    ( ) Dim Path2Body As String Dim Path2To As String Dim Path2Att() As String Dim Item2To() As String Dim TxtSubj As String Dim txtBody As Variant Dim i Dim k Dim vrtSelectedItem As Variant Dim fd As FileDialog Dim olMailMessage As Outlook.MailItem Dim xlApp As New Excel.Application GenerateThis = False TxtSubj = InputBox(" ", "") If Len(Trim(TxtSubj)) = 0 Then Exit Sub End If Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = False .Title = "   " .Filters.Add " ", "*.txt", 1 If .Show = -1 Then For Each vrtSelectedItem In .SelectedItems Path2Body = vrtSelectedItem Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = False .Title = "   " .Filters.Add " ", "*.txt", 1 If .Show = -1 Then For Each vrtSelectedItem In .SelectedItems Path2To = vrtSelectedItem Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing Set fd = xlApp.FileDialog(msoFileDialogFilePicker) With fd .AllowMultiSelect = True .Title = ",   " .Filters.Add " ", "*.*", 1 If .Show = -1 Then i = 0 ReDim Preserve Path2Att(i) For Each vrtSelectedItem In .SelectedItems Path2Att(i) = vrtSelectedItem i = i + 1 ReDim Preserve Path2Att(i) Next vrtSelectedItem Else Exit Sub End If End With Set fd = Nothing Set xlApp = Nothing txtBody = ReadTXTfile(Path2Body) Item2To = ReadTXTfile2Arr(Path2To) DoEvents '   'Debug.Print " " 'Debug.Print "-----------------" 'For i = 0 To UBound(Item2To) - 1 ' Debug.Print Item2To(i) 'Next i 'Debug.Print " " 'Debug.Print "-----------------" 'For i = 0 To UBound(Path2Att) - 1 ' Debug.Print Path2Att(i) 'Next i 'Debug.Print " " 'Debug.Print "-----------" 'Debug.Print TxtSubj 'Debug.Print " " 'Debug.Print "-----------" 'Debug.Print txtBody For i = 0 To UBound(Item2To) - 1 Set olMailMessage = Application.CreateItem(olMailItem) With olMailMessage DoEvents .To = Item2To(i) .Subject = TxtSubj .Body = txtBody For k = 0 To UBound(Path2Att) - 1 .Attachments.Add Path2Att(k), olByValue DoEvents Next k .Send End With Set olMailMessage = Nothing Next i MsgBox ".", vbInformation + vbOKOnly, "" End Sub 



рдпрд╣ рдЙрджрд╛рд╣рд░рдг рд╕рд░рд▓ рдЕрдХреНрд╖рд░реЛрдВ рдХреЛ рднреЗрдЬрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрд╡рд╕рд░реЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рда рдХреЛ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреЛ рдЖрдкрдХреЛ Outlook.MailItem> GetInspector> WordEditor рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣, рдЗрд╕реЗ рд╣рд▓реНрдХреЗ рд╕реЗ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╕рдВрджреЗрд╢ рдкрд╛рда рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕реНрд╡рд░реВрдкрд┐рдд рд╡рд░реНрдб рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЖрдк рдкрддреНрд░ рдХреЗ рдХрд┐рд╕реА рднреА рдШрдЯрдХ рдХреА "рдЬрд╛рдирдмреВрдЭрдХрд░" рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рд╡рд┐рд╖рдп, рдкрд╛рда рдпрд╛ рдЕрдиреБрд▓рдЧреНрдирдХреЛрдВ рдХреЗ рдмрд┐рдирд╛ рднреЗрдЬрдиреЗ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдЗрди рддрддреНрд╡реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рд╡рд┐рдлрд▓рддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░реЗрдЧреАред
рдпрд╣ рдХреЛрдб, рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдСрдлрд┐рд╕ рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреЗрд╡рд▓ рдПрдХреНрд╕реЗрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рд▓рд┐рдВрдХ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред


Source: https://habr.com/ru/post/In185568/


All Articles