Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Добрый день!!!!! Есть такая проблема........ В екселевской таблице ведется реестр постановлений. При помощи слияния на основании информации, внесенной в ексель, в ворде формируются распоряжения. Распоряжение идет на 1 л. После завершения слияния пользователю приходится сохранять каждое распоряжение. Имя вордовского документа вносится вручную (имя документа совпадает с переменным полем MERGEFIELD (например "ФИО"). Вопрос: Как с помощью макроса сделать так, чтобы имя по умолчанию при сохранении бралось из переменного поля??????? Есть макрос который сохраняет лист в новом документе и имя по умолчанию Письмо 1, Письмо 2 и т.д.: Sub SaveEachPageToFile() Dim oRng As Range, oMainDoc As Document, oNewDoc As Document, sFileName$, iPage% Application.ScreenUpdating = False Set oMainDoc = ActiveDocument Set oRng = oMainDoc.Range Do While iPage <= oMainDoc.ComputeStatistics(2) 'wdStatisticPages iPage = iPage + 1 If iPage < oMainDoc.ComputeStatistics(2) Then oRng.SetRange oRng.Start, oRng.GoToNext(1).Start 'wdGoToPage Else oRng.SetRange oRng.Start, oMainDoc.Range.End End If oRng.Copy Set oNewDoc = Documents.Add oNewDoc.Range.PasteAndFormat 16 'wdFormatOriginalFormatting sFileName = "Страница " & iPage & " документа «" & Mid(oMainDoc.Name, 1, InStrRev(oMainDoc.Name, ".") - 1) & "»" oNewDoc.SaveAs oMainDoc.Path & Application.PathSeparator & sFileName & ".doc", AddToRecentFiles:=False, FileFormat:=wdFormatDocument97 oNewDoc.Close True Set oRng = oRng.GoToNext(1) 'wdGoToPage Loop Application.ScreenUpdating = True MsgBox "Сохранено в файлы " & iPage & " страниц." & vbCr & _ "Папка сохранения: " & oMainDoc.Path & Application.PathSeparator, vbOKOnly + vbInformation, "Документы сохранены" End Sub oNewDoc.Content.Delete oRng.Copy oNewDoc.Content.Paste sFileName = "Страница " & iPage & " документа (" & Mid(oMainDoc.Name, 1, InStrRev(oMainDoc.Name, ".") - 1) & ")" oNewDoc.SaveAs oMainDoc.Path & Application.PathSeparator & sFileName & ".doc", AddToRecentFiles:=False ', FileFormat:=wdFormatDocument97 Loop While iPage < cntp Set oRng = Nothing tmu = timeGetTime() - tm oNewDoc.Close wdDoNotSaveChanges Set oNewDoc = Nothing Application.ScreenUpdating = True tm = timeGetTime() - tm timeEndPeriod 1 Debug.Print "Модифицированный = " & CStr(tm / 1000) & "(" & CStr(tmu / 1000) & ")" MsgBox "Сохранено в файлы " & iPage & " страниц." & vbCr & _ "Папка сохранения: " & oMainDoc.Path & Application.PathSeparator, vbOKOnly + vbInformation, "Документы сохранены" Set oMainDoc = Nothing End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 14:39 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 14:41 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Это макрос присваивает имя документу Письмо 1, письмо 2, письмо 3 и т.д. А мне надо чтобы имя присваивалось Иванов, Петров, Сидоров. Эта информация из переменного поля при слиянии (ФИО в тексте) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 14:49 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61Это макрос присваивает имя документу Письмо 1, письмо 2, письмо 3 и т.д. Это макрос (точнее полтора макроса) я переоформил с помощью тэгов, так как вы поленились прочитать правила и сделать это самостоятельно. Из макроса не следует, откуда брать поле "MERGEFIELD" Так же из макроса неясно, где эксель и слияние, которые вы упомянули. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 14:58 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Прошу прощения. В экселе заносится информация из постановления. Номер постановления, дата, номер уведомления, сумма, ФИО должника и т.д. В ворде шаблон распоряжения. При сливании меняются Номер постановления, дата, номер уведомления, сумма, должник и т.д. Потом каждое распоряжение сохраняют (команда слияния "Изменить часть писем"). Имя распоряжения присваивают ФИО должника. Сохраняют вручную. Как сделать так чтобы после нажатия изменить часть писем имя документа было ФИО должника. Могу прикрепить экселевскую таблицу и вордовский файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:09 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Вы фамилию хотите брать из ворда или из экселя? На момент пересохранения страниц в ворде эта фамилия есть? Может из ворда ее брать? Ну приложите вордовый файл для начала.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:17 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:20 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:21 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
После запуска функции слияния у нас в ворде 2 распоряжения. Когда мы нажимаем "изменить часть писем" надо чтобы в новом вородвском документе имя было "Иванов" Когда мы нажмем второй раз "изменить часть писем" надо чтобы имя было "Петров" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:24 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61, Фамилия должника берется из экселя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:26 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Куда жать-то? я ж не телепат, выражайтесь внятно и с применением запятых. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:29 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61, Мы в вордовском шаблоне нажимаем - сервис - письма и рассылки - слияние Выбираем источник "это книга 1" далее далее получаются два распоряжения мы из листаем в одном должник иванов в другом петров в первом распоряжении нажимаем "изменить часть писем" и получаем новый документ Письмо 1 А надо чтобы имя документа было Иванов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:29 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61, ФИО Должника, и другие данные переменные ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:33 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Слить удалось, но вот это я не понял, куда жать: Lelik61в первом распоряжении нажимаем "изменить часть писем" Замороченно, конечно, вы придумали, ну да ладно. Я предлагаю никак не завязываться на эксель, в результирующем документе он уже вроде никаким местом. Макрос, разбивающий на страницы у вас уже есть. Просто поиском (методом Find.Execute) находите фамилию и используете ее как имя файла. Можно искать по контексту "Должник - ", можно ввести в изначальный шаблон спецсмволы - к примеру заключить поле с фамилией в знаки "#", а потом их удалить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:40 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Можно вообще в шаблоне забить фамилию первым словом, брать первое слово и потом его стирать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:41 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro, Просто дело в том что количество распоряжений большое. После завершения слияния когда они в одном документе (предположим 200 шт.) мы их распечатываем, а потом разбиваем постранично (т.к. одно распоряжение одна страница) и присваиваем имена. А имя в тексте есть. Как бы это автоматизировать, чтобы одно распоряжение сохранялись в одном файле, а имя файла было ФИО должника. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:48 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61Просто дело в том что количество распоряжений большое. После завершения слияния когда они в одном документе (предположим 200 шт.) мы их распечатываем, а потом разбиваем постранично (т.к. одно распоряжение одна страница) и присваиваем имена. А имя в тексте есть. Как бы это автоматизировать, чтобы одно распоряжение сохранялись в одном файле, а имя файла было ФИО должника. Кажется я вам уже ответил.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:52 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61, Изначально информация вносилась вручную в эксель, а потом вручную все это вносилось в ворд. Два раза одно и тоже делали. Теперь слиянием быстро формируем распоряжения, только долго их сохраняем(((((((((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:53 |
|
||
|
Макрос который задает имя по умолчанию при сохранении вордовского документа
|
|||
|---|---|---|---|
|
#18+
Lelik61Lelik61, Изначально информация вносилась вручную в эксель, а потом вручную все это вносилось в ворд. Два раза одно и тоже делали. Теперь слиянием быстро формируем распоряжения, только долго их сохраняем(((((((((( http://www.sql.ru/forum/actualthread.aspx?tid=768140#8964804 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2010, 15:57 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36695054&tid=2159644]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 363ms |

| 0 / 0 |
