прикладываю 2 файла, необходимо что бы в файле №2 в поля отмеченные красным вставлялись данные из таблицы №1 (тоже красным отмечены), с созданием нового документа в определенной папке (если есть возможность то с поочередным названием). помогите найти решение, я дуб-дубом в этом деле.... если есть вопросы пишите отвечу!!!!! просто мне необходимо более 23 тысяч таких файлов сделать, сами понимаете это ппц как долго!
прикладываю 2 файла, необходимо что бы в файле №2 в поля отмеченные красным вставлялись данные из таблицы №1 (тоже красным отмечены), с созданием нового документа в определенной папке (если есть возможность то с поочередным названием). помогите найти решение, я дуб-дубом в этом деле.... если есть вопросы пишите отвечу!!!!! просто мне необходимо более 23 тысяч таких файлов сделать, сами понимаете это ппц как долго!tarasMen
К сообщению приложен файл:_1.xls
(95.5 Kb)
·
_2.xls
(99.0 Kb)
Тут ничего сложного нет - простенький макрос справится [vba]
Код
Sub Макрос1() Dim awb As Workbook, fn$, i& Set awb = ThisWorkbook Application.ScreenUpdating = False For i = 2 To 10 awb.Sheets(1).[l1] = i: Calculate: DoEvents fn = awb.Sheets(1).[n1] Sheets("стр_1_6").Copy Cells.Copy Cells.PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False ActiveWorkbook.SaveAs Filename:=fn ActiveWorkbook.Close Next Application.ScreenUpdating = True End Sub
[/vba] Нужно только заполнить правильно 2-й лист (см. пример в зеленых ячейках), с использованием формулы:
Код
=ИНДЕКС(TDSheet!A:J; TDSheet!$L$1;5)
А дальше просто меняем цифру в TDSheet!$L$1 - и форма перезаполняется Потом сохраняем этот лист в отдельную книгу - убиваем формулы - сохраняем эту книгу в нужную папку с нужным именем Имя можете тоже собрать формулой - с такой же ссылкой - тогда будет проще редактировать. Например:
Тут ничего сложного нет - простенький макрос справится [vba]
Код
Sub Макрос1() Dim awb As Workbook, fn$, i& Set awb = ThisWorkbook Application.ScreenUpdating = False For i = 2 To 10 awb.Sheets(1).[l1] = i: Calculate: DoEvents fn = awb.Sheets(1).[n1] Sheets("стр_1_6").Copy Cells.Copy Cells.PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False ActiveWorkbook.SaveAs Filename:=fn ActiveWorkbook.Close Next Application.ScreenUpdating = True End Sub
[/vba] Нужно только заполнить правильно 2-й лист (см. пример в зеленых ячейках), с использованием формулы:
Код
=ИНДЕКС(TDSheet!A:J; TDSheet!$L$1;5)
А дальше просто меняем цифру в TDSheet!$L$1 - и форма перезаполняется Потом сохраняем этот лист в отдельную книгу - убиваем формулы - сохраняем эту книгу в нужную папку с нужным именем Имя можете тоже собрать формулой - с такой же ссылкой - тогда будет проще редактировать. Например:
если можете, распишите подробнее, буду признателен
Что именно не понятно? принцип работы, или сами формулы? Если формулы - тут все просто сцепляем заготовки текста с ячейками из строки указанной на 1-м листе в зеленой ячейке. текст сцепляется знаком & Сама формула :
Код
=ИНДЕКС(TDSheet!A:J; TDSheet!$L$1;5)
- значит что берется значение из листа TDSheet - в колонках A:J из строки указанной в TDSheet!$L$1 и из 5- го столбца
если можете, распишите подробнее, буду признателен
Что именно не понятно? принцип работы, или сами формулы? Если формулы - тут все просто сцепляем заготовки текста с ячейками из строки указанной на 1-м листе в зеленой ячейке. текст сцепляется знаком & Сама формула :
Код
=ИНДЕКС(TDSheet!A:J; TDSheet!$L$1;5)
- значит что берется значение из листа TDSheet - в колонках A:J из строки указанной в TDSheet!$L$1 и из 5- го столбца SLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Пятница, 06.11.2015, 15:55
Вы файл смотрели? кнопку нажимали? Что именно не ясно - в файле измененные ячейки я выделил зеленым цветом. ячейка L1 - ключевая - макрос изменяет значение в этой ячейке - и происходит пересчет значений - форма заполняется данными из строки - которая указана в этой ячейке Полное имя файла, который будет создан - также формульно сразу меняется в ячейке N1 - а потом макрос просто копирует 2-й лист в новую книгу, удаляет формулы и сохраняет эту книгу с именем из N1 Вроде все
Вы файл смотрели? кнопку нажимали? Что именно не ясно - в файле измененные ячейки я выделил зеленым цветом. ячейка L1 - ключевая - макрос изменяет значение в этой ячейке - и происходит пересчет значений - форма заполняется данными из строки - которая указана в этой ячейке Полное имя файла, который будет создан - также формульно сразу меняется в ячейке N1 - а потом макрос просто копирует 2-й лист в новую книгу, удаляет формулы и сохраняет эту книгу с именем из N1 Вроде все SLAVICK