Добрый день коллеги! Возник вопрос по рабочему процессу. Есть книга шаблон1 (9125821.xlsx) данные из него должны переноситься в книгу шаблон2 (1541741.xls). Тоесть при нажатии на кнопку и выбора строки он берет действующие данные открывает шаблон2 и автоматически проставляет нужные данные. Данные которые нужно перенести: Дата и Время создания B1/C1, Специалист B2, Дата и Время встречи в ячейки B5/D5, ФИО клиента, Дата рождения, в c16 номер телефона клиента, в с17 адрес, в c18 как проехать. Сохранение шаблон2 должно производиться по такой схеме ГГГГ-ММ-ДД_Специалист_Город_встреча_Фамилия. Так же если есть возможность где надпись авто проставить макрос на автоматическую дату, время и специалиста (исходная А2) исходя из заполнения ячейки ФИО клиента.
Заранее благодарю, для меня это очень тяжело.
Добрый день коллеги! Возник вопрос по рабочему процессу. Есть книга шаблон1 (9125821.xlsx) данные из него должны переноситься в книгу шаблон2 (1541741.xls). Тоесть при нажатии на кнопку и выбора строки он берет действующие данные открывает шаблон2 и автоматически проставляет нужные данные. Данные которые нужно перенести: Дата и Время создания B1/C1, Специалист B2, Дата и Время встречи в ячейки B5/D5, ФИО клиента, Дата рождения, в c16 номер телефона клиента, в с17 адрес, в c18 как проехать. Сохранение шаблон2 должно производиться по такой схеме ГГГГ-ММ-ДД_Специалист_Город_встреча_Фамилия. Так же если есть возможность где надпись авто проставить макрос на автоматическую дату, время и специалиста (исходная А2) исходя из заполнения ячейки ФИО клиента.
Заранее благодарю, для меня это очень тяжело. ZmeuYa
ZmeuYa, приведу код с комментариями, все расписано подробно, что поймет даже совсем новичок. Сложного ничего нет. А вообще статей на эту тему написано много, подробных, качественных и намного более знающими людьми в отличии от меня.
[vba]
Код
Sub WriteInTempl()
Dim tempPath As String ' переменная для пути к файлу с формой Dim wbkTab As Workbook ' объявляем переменную для файла с таблицей Dim wbkTemp As Workbook ' объявляем переменную для файла с формой Dim shtTab As Worksheet ' объявляем переменную для листа с таблицей Dim shtTemp As Worksheet ' объявляем переменную для листа с формой
Application.ScreenUpdating = False 'отключаем обновление экрана, чтобы не мелькали листы Application.DisplayAlerts = False 'отключаем уведомления, чтобы не выскакивало окно подтверждения при сохранениии
tempPath = "C:\Users\Евгений\Desktop\Новая папка (2)\Шаблон.xlsx" ' вставляете свой путь к файлу с формой
'исходим из того что макрос запускается из книги с таблицей 'устанавливаем значение переменных для файлов и листов Set wbkTab = ThisWorkbook Set shtTab = wbkTab.Worksheets("Главная") Set wbkTemp = Application.Workbooks.Open(tempPath) Set shtTemp = wbkTemp.Worksheets("Встреча")
'копируем что нужно и куда нужно shtTemp.Cells(1, 3) = shtTab.Cells(2, 4) ' например вводит значение из ячейки (строка 2, столбец 4) файла таблицы в ячейку (строка 1, столбец 3) файла формы
'сохраняем как новый файл с новым именем wbkTemp.SaveAs ("C:\Users\Евгений\Desktop\Новая папка (2)\Шаблон_Заполненный.xlsx") wbkTemp.Close ' закрываем книгу
Application.ScreenUpdating = True 'вкл обновление экрана обратно Application.DisplayAlerts = True 'вкл уведомления обратно
End Sub
[/vba]
ZmeuYa, приведу код с комментариями, все расписано подробно, что поймет даже совсем новичок. Сложного ничего нет. А вообще статей на эту тему написано много, подробных, качественных и намного более знающими людьми в отличии от меня.
[vba]
Код
Sub WriteInTempl()
Dim tempPath As String ' переменная для пути к файлу с формой Dim wbkTab As Workbook ' объявляем переменную для файла с таблицей Dim wbkTemp As Workbook ' объявляем переменную для файла с формой Dim shtTab As Worksheet ' объявляем переменную для листа с таблицей Dim shtTemp As Worksheet ' объявляем переменную для листа с формой
Application.ScreenUpdating = False 'отключаем обновление экрана, чтобы не мелькали листы Application.DisplayAlerts = False 'отключаем уведомления, чтобы не выскакивало окно подтверждения при сохранениии
tempPath = "C:\Users\Евгений\Desktop\Новая папка (2)\Шаблон.xlsx" ' вставляете свой путь к файлу с формой
'исходим из того что макрос запускается из книги с таблицей 'устанавливаем значение переменных для файлов и листов Set wbkTab = ThisWorkbook Set shtTab = wbkTab.Worksheets("Главная") Set wbkTemp = Application.Workbooks.Open(tempPath) Set shtTemp = wbkTemp.Worksheets("Встреча")
'копируем что нужно и куда нужно shtTemp.Cells(1, 3) = shtTab.Cells(2, 4) ' например вводит значение из ячейки (строка 2, столбец 4) файла таблицы в ячейку (строка 1, столбец 3) файла формы
'сохраняем как новый файл с новым именем wbkTemp.SaveAs ("C:\Users\Евгений\Desktop\Новая папка (2)\Шаблон_Заполненный.xlsx") wbkTemp.Close ' закрываем книгу
Application.ScreenUpdating = True 'вкл обновление экрана обратно Application.DisplayAlerts = True 'вкл уведомления обратно