Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 12.10.2015
Сообщений: 2

Сохранение файла в новую папку с уникальным именем

21.10.2015, 15:18. Показов 2602. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, подскажите пожалуйста, что нужно добавить в мой код что бы сформированный документ ворд, сохранялся в новую созданную папку, папка имела имя с данными ячейками фио = Cells(61, 3), а документ ворд с именем шаблона

Visual Basic
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Option Explicit
 
Const WD_TEMPL = "РЕШЕНИЕ.dotx"
 
Sub Решение_неверный_грз()
 
Static wdApp As Object
Dim newFileName As String
Dim newFilePath As String
Dim wdDoc As Object
Dim x, кто_расматривает, номер_постановления, дата_вынесения, лицо_вынесшее_постановление, дата_жалобы, номер_жалобы, фио_рп, номер_постановления_2, дата_вынесения_2, лицо_вынесшее_постановление_2, фио_дп, дата_расмотр, дата_расмотр_2, фио, дата_наруш, время_наруш, место, кам, номер_кам, грз, марка, скорость_тс, перевышение, разрешенная, фио_2, фио_3, номер_постановления_3, дата_вынесения_3, лицо_вынесшее_постановление_3, фио_дп_2, часть, статья, сумма, начальник
Set x = ActiveSheet
Sheets("Ошибка грз").Select
 
кто_расматривает = Cells(58, 2)
номер_постановления = Cells(3, 7)
дата_вынесения = Cells(17, 4)
лицо_вынесшее_постановление = Cells(59, 2)
дата_жалобы = Cells(3, 6)
номер_жалобы = Cells(3, 4)
фио_рп = Cells(9, 4)
номер_постановления_2 = Cells(3, 7)
дата_вынесения_2 = Cells(17, 4)
лицо_вынесшее_постановление_2 = Cells(59, 2)
фио_дп = Cells(10, 4)
дата_расмотр = Cells(3, 10)
дата_расмотр_2 = Cells(3, 10)
фио = Cells(61, 3)
 
x.Select
On Error Resume Next
x = wdApp.Name
If Err Then
Err.Clear
Set wdApp = GetObject(, "word.application")
If Err Then
    Err.Clear
    Set wdApp = CreateObject("word.application")
    If Err Then
    MsgBox "Невозможно открыть Word", vbCritical
    Exit Sub
    End If
End If
End If
With wdApp
.Visible = True
x = .Documents.Count
Set wdDoc = .Documents.Add(ThisWorkbook.Path & "\Шаблоны\неверный_грз" & WD_TEMPL)
If .Documents.Count <= x Then
    MsgBox "Не найден шаблон " & WD_TEMPL, vbCritical
    Exit Sub
End If
End With
With wdDoc
.Bookmarks("кто_расматривает").Range.Text = кто_расматривает
.Bookmarks("номер_постановления").Range.Text = номер_постановления
.Bookmarks("дата_вынесения").Range.Text = дата_вынесения
.Bookmarks("лицо_вынесшее_постановление").Range.Text = лицо_вынесшее_постановление
.Bookmarks("дата_жалобы").Range.Text = дата_жалобы
.Bookmarks("номер_жалобы").Range.Text = номер_жалобы
.Bookmarks("фио_рп").Range.Text = фио_рп
.Bookmarks("номер_постановления_2").Range.Text = номер_постановления
.Bookmarks("дата_вынесения_2").Range.Text = дата_вынесения_2
.Bookmarks("лицо_вынесшее_постановление_2").Range.Text = лицо_вынесшее_постановление_2
.Bookmarks("фио_дп").Range.Text = фио_дп
.Bookmarks("дата_расмотр").Range.Text = дата_расмотр
.Bookmarks("дата_расмотр_2").Range.Text = дата_расмотр_2
.Bookmarks("фио").Range.Text = фио
 
End With
wdApp.Activate
 
End Sub
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.10.2015, 15:18
Ответы с готовыми решениями:

Сохранение файла Word с именем, взятым из данных самого файла
Добрый день! Очень нужна помощь! Есть файл, который формируется автоматически при помощи макросов на основе другого файла. Далее его...

Открытие файла - запуск макроса и сохранение файла с новым именем
Пытаюсь сделать vba-программу для следующих действий: 1. открытие файла путем его выбора из окна windows; 2. запуск макроса для этого...

Сохранение файла с именем исходя из данных
Не сильно силен в формулах и VBA, подскажите как сделать так чтоб при нажатии кнопки &quot;Сохранить файл&quot; в таблице скрывались пустые...

2
 Аватар для pashulka
4139 / 2243 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
21.10.2015, 22:12
Лучший ответ Сообщение было отмечено kapitan_ulitka как решение

Решение

Вариант - без проверки ФИО на предмет наличия недопустимых символов в имени папки :

Visual Basic
1
2
3
4
5
6
7
8
9
10
Dim iPath$
iPath = ThisWorkbook.Path & "\" & ФИО & "\"
If Dir(iPath, vbDirectory) = "" Then MkDir iPath
 
With wdDoc
     'Здесь перечисляются все Ваши закладки .Bookmarks 
 
     .SaveAs iPath & Replace(WD_TEMPL, ".dotx", ".docx") 'Возможно нужно указать FileFormat
     .Close -1 'wdSaveChanges = -1
End With
1
0 / 0 / 0
Регистрация: 12.10.2015
Сообщений: 2
22.10.2015, 08:55  [ТС]
pashulka, спасибо помогло
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.10.2015, 08:55
Помогаю со студенческими работами здесь

Сохранение файла в новой папке с именем, зависящим от месяца
Люди помощи прошу со слезами! совсем запутался, третий день тыкаюсь как истукан. Есть некий файл где есть лист &quot;Ежедн_март&quot;...

Сохранение всех картинок (в формат png) из Word файла в отдельную папку
Всем доброго времени суток Прошу помощи в создании макроса, суть которого являеться сохранением всех картинок(в формат png) из Word файла...

Создать для каждого файла папку его имени и перенести в свою папку под именем index.html
Помогите товарищи В папке файлы без расширений нужно создать для каждого файла папку его имени и перенести каждый файл в свою папку при...

Перемещение по N файлов в каждую новую папку, создаваемую с именем, взятым из списка в текстовом файле
Доброго времени суток. Прошу помощи. Есть такая практическая задача. Существует папка A с файлами (jpg). они отсортированы по времени...

Сохранение файла под именем открытого ранее файла
Как правильно реализовать &quot;сохранить&quot;.&quot;Сохранить как &quot; сделано: void Sdvigatel::on_saveAsAction_triggered() { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru