Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Outlook прикрепить аттач текущей датой и привязкой к номеру - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Outlook прикрепить аттач текущей датой и привязкой к номеру
Kaktus Дата: Пятница, 21.11.2014, 19:39 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Ребята помогите пожалуйста нужно доделать макрос, я новичок в этом деле никак не могу понять как это можно сделть
есть макрос такого вида

[vba]
Код
Sub Отчет()
Dim OutlookApp As Object, SM As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem) 'Создаем объект
SM.To = ""
SM.Subject = "" 'Заполнение поля "Тема"
SM.Attachments.Add "I:\" + "Отчет№" + " от " + Format(Now, "ddmmyy") + ".xls"
SM.Display
On Error Resume Next 'Перехват возможной ошибки

Set SM = Nothing 'Очищаем использовавшиеся объекты
Set OutlookApp = Nothing
End Sub
[/vba]

Проблема заключается в том, что в корне много одинаковых файлов отчетов они отличаются датой т е текущая и номером
по дате я разобрался, а вот с номером проблема
"I:\" + "Отчет№" не знаю как здесь дописать
там файлы идут вида Отчет№001 от 211114.xls
Отчет№002 от 221114.xls
Отчет№003 от 231114.xls
Отчет№004 от 241114.xls
как подцепить с нужным номером и текущей датой ??
или обрезать как то начало и цеплять только по дате
помогите это реализовать, зарание спасибо!!!


Сообщение отредактировал Serge_007 - Суббота, 22.11.2014, 18:56
 
Ответить
СообщениеРебята помогите пожалуйста нужно доделать макрос, я новичок в этом деле никак не могу понять как это можно сделть
есть макрос такого вида

[vba]
Код
Sub Отчет()
Dim OutlookApp As Object, SM As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem) 'Создаем объект
SM.To = ""
SM.Subject = "" 'Заполнение поля "Тема"
SM.Attachments.Add "I:\" + "Отчет№" + " от " + Format(Now, "ddmmyy") + ".xls"
SM.Display
On Error Resume Next 'Перехват возможной ошибки

Set SM = Nothing 'Очищаем использовавшиеся объекты
Set OutlookApp = Nothing
End Sub
[/vba]

Проблема заключается в том, что в корне много одинаковых файлов отчетов они отличаются датой т е текущая и номером
по дате я разобрался, а вот с номером проблема
"I:\" + "Отчет№" не знаю как здесь дописать
там файлы идут вида Отчет№001 от 211114.xls
Отчет№002 от 221114.xls
Отчет№003 от 231114.xls
Отчет№004 от 241114.xls
как подцепить с нужным номером и текущей датой ??
или обрезать как то начало и цеплять только по дате
помогите это реализовать, зарание спасибо!!!

Автор - Kaktus
Дата добавления - 21.11.2014 в 19:39
Gustav Дата: Воскресенье, 23.11.2014, 00:15 | Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Как-то так:
[vba]
Код
Sub Отчет()
Dim OutlookApp As Object, SM As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem) 'Создаем объект
SM.To = ""
SM.Subject = "" 'Заполнение поля "Тема"
    
'SM.Attachments.Add "I:\" + "Отчет№" + " от " + Format(Now, "ddmmyy") + ".xls"
Dim strDirPath$, strMaskSearch$, strFileName$
strDirPath = "I:\" 'Папка поиска
strMaskSearch = "Отчет№*" & Format(Now, "ddmmyy") & ".xls" 'Маска поиска
'Получаем первый файл соответствующий шаблону
strFileName = Dir(strDirPath & strMaskSearch)
Do While strFileName <> "" 'До тех пор пока файлы "не закончатся"
     SM.Attachments.Add strDirPath & strFileName 'прикрепляем очередной файл к письму
     strFileName = Dir 'Следующий файл
Loop
    
SM.Display
On Error Resume Next 'Перехват возможной ошибки
Set SM = Nothing 'Очищаем использовавшиеся объекты
Set OutlookApp = Nothing
End Sub
[/vba]
Если сразу не получится, дальше гуглите сами по строке: "vba получить список файлов в каталоге по маске"


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеКак-то так:
[vba]
Код
Sub Отчет()
Dim OutlookApp As Object, SM As Object
Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem) 'Создаем объект
SM.To = ""
SM.Subject = "" 'Заполнение поля "Тема"
    
'SM.Attachments.Add "I:\" + "Отчет№" + " от " + Format(Now, "ddmmyy") + ".xls"
Dim strDirPath$, strMaskSearch$, strFileName$
strDirPath = "I:\" 'Папка поиска
strMaskSearch = "Отчет№*" & Format(Now, "ddmmyy") & ".xls" 'Маска поиска
'Получаем первый файл соответствующий шаблону
strFileName = Dir(strDirPath & strMaskSearch)
Do While strFileName <> "" 'До тех пор пока файлы "не закончатся"
     SM.Attachments.Add strDirPath & strFileName 'прикрепляем очередной файл к письму
     strFileName = Dir 'Следующий файл
Loop
    
SM.Display
On Error Resume Next 'Перехват возможной ошибки
Set SM = Nothing 'Очищаем использовавшиеся объекты
Set OutlookApp = Nothing
End Sub
[/vba]
Если сразу не получится, дальше гуглите сами по строке: "vba получить список файлов в каталоге по маске"

Автор - Gustav
Дата добавления - 23.11.2014 в 00:15
Гость Дата: Воскресенье, 23.11.2014, 09:55 | Сообщение № 3
Группа: Гости
Спасибо огромное за помощь, буду пробовать.
 
Ответить
СообщениеСпасибо огромное за помощь, буду пробовать.

Автор - Гость
Дата добавления - 23.11.2014 в 09:55
Kaktus Дата: Воскресенье, 23.11.2014, 10:04 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Gustav спасибе тебе большое, буду пробовать!!!
 
Ответить
СообщениеGustav спасибе тебе большое, буду пробовать!!!

Автор - Kaktus
Дата добавления - 23.11.2014 в 10:04
Kaktus Дата: Воскресенье, 23.11.2014, 10:16 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 20% ±

Excel 2007
Gustav все получилось еще раз огромное спасибо!!!
 
Ответить
СообщениеGustav все получилось еще раз огромное спасибо!!!

Автор - Kaktus
Дата добавления - 23.11.2014 в 10:16
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!