Страницы: 1
RSS
Вопрос переноса данных с одного листа на другой в определенной последовательности, Как сделать, чтобы после заполнения строки, она блокировалась бы от изменений, а автоматически начинала бы заполняться следующая?
 
Добрый день! Буду очень признательна, если подскажете, как быть в такой ситуации.
Во вложении файл, с которым, как оказалось, очень много заморочек.
Так вот, необходимо, чтобы при заполнении данных первого листа, эти данные переносились бы на второй. Номер заявки - в соответствующую графу, фамилия - в колонку менеджер, дата (желтые ячейки) - в дату заключения договора), остальное заполняется вручную. В чем загвоздка? В том, что нам необходимо, чтобы вне зависимости от того, на какую дату (желтые ячейки) были внесены данные в листе 1, чтобы они заполнялись на 2 листе последовательно, в соответствии с датой ввода - от ранней к поздней).
То есть, если на первом листе сначала я ввожу данные на 2 января, то они появляются на втором первыми в списке, затем ввожу на другую дату, например, на 1 января, а они появляются уже следующими за первой записью. То есть сортируются не по дате в желтых ячейках, а по времени ввода, которая автоматически проставляется рядом с номером заявки (лист 1).
Что не получается: на 2 листе после автоматического заполнения времени ввода, при последующих заполнениях просто меняется значение в ячейке А2, а надо, чтобы когда заполнится первая строка, далее заполнялась бы уже следующая, а не та же..., то есть, уже начиная с А3. подскажите, как это сделать? можно что угодно поправить в моем файле, буду благодарна.
По поводу ячейки А2 - там прописана формула, выбирающая самую позднюю дату из всех на листе 1 из определенного диапазона.
Если что-то непонятно объяснила, пишите, я уточню. Заранее спасибо за помощь!
В данном случае, нужно, чтобы после заполнения первой строки второго листа, далее заполнялась следующая строка. То есть первая должна как бы блокироваться от изменений.
Буду благодарна, если поможете с макросом.
 
Как же так? Неужели ни у кого нет идей?
Помогите, пожалуйста, хотя бы просто со вторым листом, как добиться того, чтобы после полного заполнения первой строки, автоматически заполнялась бы следующая, а не эта же..то есть, как бы блокировать от изменений ячейки строки, после того, как все данные проставлены?
 
Ваш файл посмотреть не могу, т.к. у меня Excel 2003
Вам надо найти последнюю строку на втором листе
и прибавить к ней 1, данные будут заполнятся в
следующую строку
Dim iLastRow As Long
iLastRow=Cells(Rows.Count, 1).End(xlUP).Row
 
Kuzmich, к сожалению, я не очень понимаю, как это сделать. Я пересохранила файл, посмотрите, пожалуйста. Спасибо!
 
...Во вложении файл, с которым, как оказалось, очень много заморочек...

Если так много заморочек, то нужно подумать об изменении структуры
таблицы на Лист1.
Где эти 9 бригад и полдня отражаются на Лист2?
Что вы хотите видеть в конечном итоге?
 
Цитата
Kuzmich пишет:
Где эти 9 бригад и полдня отражаются на Лист2?

Разбивка на бригады не имеет особого значения, это для удобства дальнейших пользователей формы. На половины дня тоже не смотрите.

Что нужно: необходимо, чтобы когда в форму 1 листа  вносят номер заявки, фамилию менеджера, чтобы эти данные автоматически попадали на лист №2. Причем, на 1 лист вносить их могут в разном порядке, например, сначала я внесла заявку на 3 января, затем на 1 января, потом на 4-е...  Но на 2 листе эти данные заносятся последовательно в строчку за строчкой. То есть в первой строке будет заявка на 3.01.2013, во второй строке - заявка на 1.01.2013 и так далее. Для этого и сделано там время ввода, хотели, чтобы было что-то вроде автоматической сортировки по дате ввода, но не получается сделать переход от одной строки к следующей. ((
 
Не могу придумать по какому событию переносить данные
с Лист1 на Лист2.
Сколько ячеек на Лист1 обязательны для заполнения?
номер заявки, фамилию менеджера, а время ввода, район?
Кто писал макросы?
 
Цитата
Kuzmich пишет:
Сколько ячеек на Лист1 обязательны для заполнения?
номер заявки, фамилию менеджера, а время ввода, район?

Обязательны номер заявки и фамилия менеджера, район - не нужно. То есть именно номер заявки и фамилия должны автоматически переноситься на лист 2. Строку листа 2, на которую перенеслись данные, пользователь заполняет до конца вручную.
Самое главное, чтобы когда на листе 1 внесут еще номер заявки и фамилию менеджера, они появились на Листе 2 следующей строкой.
Время ввода добавлено в помощь для неудавшейся сортировки. Его можно удалить, если оно никак не помогает решению задачи.
Макросы писал чайник (я) путем копипаста похожих случаев и легкого редактирования  :oops:

Kuzmich, выручайте )))))
 
Посмотрите такой вариант
На лист1 вводите №заявки, Время ввода и ФИО
Ячейка с ФИО должна быть выделена.
Кликаете по кнопке "Перенести данные на Лист2".
Смотрите результат.
 
Kuzmich, очень близко к желаемому результату! Огромное спасибо!  :)  Дальше попытаюсь разобраться, теперь гораздо проще!
 
Kuzmich, еще небольшой вопрос: а возможно ли также переносить одновременно и дату? Не время ввода, а дату, на которую заполняется заявка? Если возможно, то это было бы вообще прекрасно.
 
Добавьте в макрос строчку после № договора
.Cells(iLastRow, 9) = Cells(3, ActiveCell.Offset(, -2).Column)  'Дата заключения договора
 
Kuzmich, огромное спасибо! Вы очень помогли  :)
Страницы: 1
Читают тему
Наверх