Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, а если есть лист, но не нет строки с адресом, тоже может быть эта ошибка?
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, ура! письма создает! только вот вопрос. после последнего созданного письма выдает ошибку на строке
Код
        Set rng = ThisWorkbook.Worksheets(arr(i, 1)).UsedRange
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, вот реально эффект присутствия! Работает ура!

А подскажите, пожалуйста, как мне добавить текст в письмо и подпись?
просто вписать текст например в какую-то ячейку и добавить между этими строками например .Body = Range("K1") ?
Код
?
1
2
           .Subject = arr(i, 2)
           .BodyFormat = 2  'olFormatHTML - ôîðìàò HTML
мне бы конечно в идеале, как файле Дмитрия
Вместто {TABLE} таблицу, а все остальное текстом  :oops:


Добрый день!

Направляю Отчет о выполнении обязательств по BDF Договоров.
Прошу обратить внимание на договора:
{TABLE}

С Уважением,/Best regards,

Maria Fokina
Customer Operation Specialist
Изменено: Мария - - 21 Май 2019 17:13:50
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, очень интересно. я отправила файл, в котором и запускала  8-0  
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, не пойму, ругается вот на эту строку
Код
        Set rng = ThisWorkbook.Worksheets(arr(i, 1)).UsedRange
выдет такую ошибку :( картинки ошибок вложила.
При этом он 1е письмо создает, а вот последующие нет

и еще вопрос, как внести текст в письмо помимо таблицы?
просто вписать текст например в какую-то ячейку и добавить между этими строками например .Body = Range("K1") ?
Код
            .Subject = arr(i, 2)
            .BodyFormat = 2  'olFormatHTML - ôîðìàò HTML
Изменено: Мария - - 21 Май 2019 15:51:46
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
я сбилась с ног. но он постоянно ругается на это:
Помогите, пожалуйста!
Код
    sManager = rngEntry.Offset(0, -2)

Set rDataR = ThisWorkbook.Sheets(sManager).Cells(Rows.count, 1).End(xlUp).Row
    sTblBody = ConvertRngToHTM(rDataR)
    sBody = Replace(sBody, "{TABLE}", sTblBody)
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, не выходит :( я не могу разобраться с таблицей. Мне же нужна не вся таблица, а в письмо менеджера только его собственную таблицу.

помогите, пожалуйста, написать все правильно
e-mail в outlook с таблицей в теле письма из Excel макросовой кнопкой
 
Nordheim, простите, у меня улетела подписка на ту тему, и ваш ответ я не увидела
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Nordheim, простите, у меня улетела подписка на эту тему, и ваш ответ я не увидела :(
e-mail в outlook с таблицей в теле письма из Excel макросовой кнопкой
 
Уважаемые ГУРУ!
Помогите, пожалуйста. Я не могу никак совладать с прикреплением файла, а также таблицы в тело письма. Пример файла во вложении.

С вложением - может ли быть проблема в том, что путь к файлу формируется формулой?
Не могу никак понять, как прописать код, чтобы таблица с листа (имя листа = имя менеджера из таблицы в email) вставлялась в тело письма :(
я уже несколько макросов разных перепробовала, не могу я их под свой файл подпилить.

Плиииз ХЕЛП!

Вот имеющийся код, который прекрасно создает и отправляет письма, однако не вставляет таблицу и файл.
А еще вопрос, как прописать определенный шрифт и цвет тексту в письме?
Код
Sub CreateMail()
    Dim stFileName As String
    Dim objOutlook As Object
    Dim objMail As Object
    Dim rngEntry As Range
    Dim rngEntries As Range

    Set objOutlook = CreateObject("Outlook.Application")
    Set rngEntries = Worksheets("emails").Range("Sales_mail")
    
    For Each rngEntry In rngEntries
    stFileName = rngEntry.Offset(0, 2)
    If Dir(stFileName) <> "" Then
    
        Set objMail = objOutlook.CreateItem(0)
        With objMail
        
       On Error Resume Next
          
            .To = rngEntry.Offset(0, 0).Value
            .CC = rngEntry.Offset(0, 3).Value
            .Subject = rngEntry.Offset(0, 2).Value
            .Body = Range("F1")
            
            .Attachments.Add (rngEntry.Offset(0, 4).Value)
            .Send '.Display or .save
        End With
        
        Else
         MsgBox "No data for" & " " & rngEntry.Offset(0, -1).Value
    End If
        Next rngEntry
        
    Set objOutlook = Nothing
    Set objMail = Nothing
    Set rngEntry = Nothing
    Set rngEntries = Nothing

End Sub
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Я смотрела. Не понимаю, как таблицу в письмо вставить
Макрос. Копирование данных в лист другого файла с изменяющимся названием
 
Kuzmich, Hugo, плиииз помогите! Оно не работает :(
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Юрий М, видимо эффект присутствия :) еще раз скачала файл и сохранила на диск, теперь все работает. Перенесла код на свой файл, все идеально и быстро! Хотя файл оооочень большой!
Спасибо ОГРОМНОЕ!
Макрос. Проверка столбца на наличие ошибки и остановка макроса
 
Ігор Гончаренко, что-то пошло не так :( пишет "Compile error: Expected list separator or)"

оно же так должно выглядеть?
Код
    Function RangeHasError(rg As Range) As Boolean
    If RangeHasError(Range("E:E") Then end
    End Function
Макрос. Разбивка листа на несколько по имени менеджера
 
Юрий М, спасибо большое макрос работает!
Макрос. Массовая рассылка писем с таблицей в теле письма и вложением
 
Уважаемые Знатоки!
Долго и упорно копалась в интеренете и так и не смогла приладить к своему файлу макрос по написанию писем.

Итак задача:
на листе emails указаны имена менеджеров, email адреса и тема письма, которая должна генериться
В теле письма должен быть текст "Добрый день! во вложении отчет. Просьба обратить внимание на .. {таблица с листа с именем менеджера}. Подпись" + Вложенный файл
Путь к файлам заложен другим макросом
Код
 sPath = ThisWorkbook.Path & "\" & RepPeriod & "\"
.SaveAs sPath & "BDF Report_" & RepPeriod & "_" & Manager & ".xlsx"
Таблицы по каждому менеджеру разносятся на отдельные листы. Имена всегда уникальны.

Помогите, пожалуйста!  :cry:  Бьюсь 2й день!
Макрос. Разбивка листа на несколько по имени менеджера
 
Добрый день! опять я с вопросом, который не смогла победить сама.
Во вложении файлик с примером общей таблицы по договорам. Мне нужно, чтобы при нажатии кнопки, Excel создавал по имени менеджера отдельный лист с данными из общей страницы в этой же книге. Все завязано на имени менеджера и название листов в том числе.
Шапка (2 первые строки) также должна копироваться на каждый лист.
Так же крайне желательно, чтобы при повторном нажатии на кнопку "макроса" предыдущие данные с листа Менеджера стирались.
Изменено: Мария - - 15 Май 2019 17:20:40
Макрос. Проверка столбца на наличие ошибки и остановка макроса
 
vikttur, Помогите, пожалуйста, еще чуть-чуть.

У меня после макроса с "ошибкой" идет еще один макрос. Он запускается автоматически.
Код
Sub Invoices_BDF_Distr()
    Call BDF_Distr_part1_Invoice_Down
    Call BDF_Distr_part2_Invoice_Formatting
    Call BDF_Distr_part3_ServRendDate
    Call BDF_Distr_part4_Copy_Data
    Call BDF_Distr_part5_Save
End Sub

как сделать так, чтобы при возникновении ошибки, следующие макросы также не запускались?
Код
    Dim LastRow As Long, i As Long
    LastRow = Cells(Rows.Count, "N:N").End(xlUp).Row
    For i = LastRow To 2 Step -1
    If Cells(i, "N:N") = "error" Then MsgBox "!!! #N/A in ServRendDate !!!": Exit Sub
    Next

    Application.ScreenUpdating = True
    
    Sheets("Macro").Select
    Range("A1").Select

End Sub

Sub BDF_Distr_part4_Copy_Data()

    Sheets("Macro").Select
    Range("D14").Select
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Макрос. Копирование данных в лист другого файла с изменяющимся названием
 
Kuzmich,и все таки я что-то делаю не так. Если лист с таким именем существует, он не делает копирование данных
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Юрий М, Ничего не происходит :( Точнее, что-то он делает, но файлы не появляются. Я его к себе на комп сохранила, ничего :(
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Юрий М, да, дело не в том, куда файл должен сохраняться. Дело в том, что у каждого менеджера несколько договоров, и по итогу разделения ои должны попасть в один файл, а не в одну папку
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Юрий М, к сожалению, этот вариант не пойдет. В оригинальном отчете вагон листов, из которых формулами на каждый листа с контрактами удут данные. Листов накопилось уже около 100, а то и больше :( файл с оригинальным отчетом весит 65Мб
Просто я не могу показать отчет из-за конфиденциальности данных в нем.
Поэтому, я и хочу прибегнуть к такому разделению, как я написала.
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Юрий М, да, читала. у меня то проблема в том, что не должно быть - 1лист=1файл. Мне нужно именно в зависимости от имени менеджера разделить по файлам.
Например, у менеджера 4 договора, должен получиться 1 файл с 4мя листами договоров
Макрос. Копирование данных в лист другого файла с изменяющимся названием
 
Kuzmich, Простите, пожалуйста. Я на счет проверки наличия листа. Да, такая проверка нужна, при чем если нет такого листа, то создать его и скопировать на него все данные из Book1.Invoice.
Но что-то у меня не выходит :(
Код
Sub Copy_Data()

    Dim sh_src As Worksheet, sh_res As Worksheet
    Set sh_src = Workbooks("Book1.xlsm").Worksheets("Invoices")
    Dim Sh_name As String
    Sh_name = Workbooks("Book1.xlsm").Worksheets("Macro").Range("E6").Text
    Set sh_res = Workbooks("Book2.xlsx").Sheets(Sh_name)
    sh_src.UsedRange.Offset(1, 0).Copy sh_res.[A1].End(xlDown)(2)
    
    For Each sh_res In Worksheets
    If sh.Name = Sh_name Then
    MsgBox "åñòü òàêîé ëèñò"
    Else
    Sheets(Sh_name).Copy Before:=Sheets(1)
    Sheets(1).Name = "Sold-to for report"
    sh_src.Cells.Copy
    sh_res.Paste
End If
Next
MsgBox ("INCOICES DOWNLIADING - Complete!")

End Sub
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Описалась. Нужно именно листы по файлам. Не знаете, как изменить тему?
Макрос. Разбивка Excel файла на разные файлы в зависимости от менеджера.в
 
Добрый день! Помогите, пожалуйста, написать макрос, который бы разбил Excel файл по менеджерам.
В файле примере есть лист Contracts (все контракты+менеджер+stl) и листы с данными по договорам. Также на листе Contracts есть колонка Sheet name, которая соответствует названию листа с договором.

Нужно разбить так, чтобы все литы с договорами разбились по отдельным файлам в зависимости от менеджера, т.е. 1 менеджер = 1 файл = несколько листов.
При этом, чтобы листы копировались как Value+Format (без формул).
Макрос. Если ячека = значение, Удалить строку
 
Я боюсь, в моем случае одной укладкой не обойтись  :D  :D  :D  Тут нужен полный комплект и смена цвета (с блондинки на брюнетку) )))))
Макрос. Копирование данных в лист другого файла с изменяющимся названием
 
Kuzmich, А помогите, пожалуйста, подпилить для другого отчета  :oops: . Если скопировать нужно все с 2й строки 1й колонки, а вот вставить с 6й колонки в последнюю строку?
Код
Sub Copy_Data()

    Dim sh_src As Worksheet, sh_res As Worksheet
    Set sh_src = Workbooks("Book1.xlsm").Worksheets("Invoices")
    Dim Sh_name As String
    Sh_name = Workbooks("Book1.xlsm").Worksheets("Macro").Range("E6").Text
    Set sh_res = Workbooks("Book2.xlsx").Sheets(Sh_name)
    sh_src.UsedRange.Offset(1, 0).Copy sh_res.[A1].End(xlDown)(2)
    
MsgBox ("INCOICES DOWNLIADING - Complete!")

End Sub
Макрос. Если ячека = значение, Удалить строку
 
Юрий М, Спасибо Вам ОГРОМЕННОЕ!!!!!!!!
Макрос. Копирование данных в лист другого файла с изменяющимся названием
 
Вот я ТУПЕНЬ!!! Конечно же. В примере Book2 нет шапки таблицы!!

СПАСИБО ОГРОМЕННОЕ!
Страницы: 1 2 След.
Наверх