Привет Знатокам! Вопрос: Есть таблица РЕМОНТ из неограниченного кол-ва строк, которые каждый день добавляются и 3-х столбцов ЯРЛЫК, КОД (порядковый номер ), КЛИЕНТ. И есть таблица БАЗА, всегда из 24-х строк и тех же столбцов. Так вот как сделать, чтоб соблюдалась такая цикличность, что каждая 25-я строка по столбцу КОД таблицы РЕМОНТ копировалась в 1-ю строку (по столбцу КОД) таблицы БАЗА. Соответственно все после 25-ой копировались за ней и так далее? Что еще нужно – чтоб стирать строки в таблице БАЗА (или забивать пробелами, чтоб не удалять формулы) чтоб принтер, печатающий ярлыки, видел, что, например, на 10-ти ярлыках с 1-го по 10-й нет текста и не печатал их при заполненных с 11-го по 24-й!? Пример в приложении. Я пробовал сочетания ПРОСМОТР и ПОИСКПОЗ и ИНДЕКС, но не получается.
Привет Знатокам! Вопрос: Есть таблица РЕМОНТ из неограниченного кол-ва строк, которые каждый день добавляются и 3-х столбцов ЯРЛЫК, КОД (порядковый номер ), КЛИЕНТ. И есть таблица БАЗА, всегда из 24-х строк и тех же столбцов. Так вот как сделать, чтоб соблюдалась такая цикличность, что каждая 25-я строка по столбцу КОД таблицы РЕМОНТ копировалась в 1-ю строку (по столбцу КОД) таблицы БАЗА. Соответственно все после 25-ой копировались за ней и так далее? Что еще нужно – чтоб стирать строки в таблице БАЗА (или забивать пробелами, чтоб не удалять формулы) чтоб принтер, печатающий ярлыки, видел, что, например, на 10-ти ярлыках с 1-го по 10-й нет текста и не печатал их при заполненных с 11-го по 24-й!? Пример в приложении. Я пробовал сочетания ПРОСМОТР и ПОИСКПОЗ и ИНДЕКС, но не получается. StewArt
Не нужно применять ДВССЫП() без особой нужды - эта функция имеет много недостатков. Как и стараться обходиться без медленных текстовых функций типа АДРЕС()
StewArt, может быть, вариант с подстановкой последних 24 заполненных строк лучше?
Не нужно применять ДВССЫП() без особой нужды - эта функция имеет много недостатков. Как и стараться обходиться без медленных текстовых функций типа АДРЕС()
StewArt, может быть, вариант с подстановкой последних 24 заполненных строк лучше?
Идея с подстановкой уже заполненных строк хороша. Но я так понял, что Vikktur предлагает способ, когда каждая вновь вводимая строчка становится первой, правильно, Vikktur? Это не подходит для меня, потому , что тогда принтер будет печатать все время один и тот же ярлык на разных по счету наклейках... Можно сделать такую формулу? Как описываю ниже. Таблица База Первая строка столбца Клиент: =последнее значение столбца Клиент таблицы Ремонт (а ЕСЛИ не то, тогда предпоследнее, а если не то, тогда за 2 до него, и так например 6 вложений ЕСЛИ) Таким образом при каждом вводе нового Клиента в табл Ремонт, он в табл База будет сохранятся в новой строке и предыдущий и еще 4 до предыдущего ?
Идея с подстановкой уже заполненных строк хороша. Но я так понял, что Vikktur предлагает способ, когда каждая вновь вводимая строчка становится первой, правильно, Vikktur? Это не подходит для меня, потому , что тогда принтер будет печатать все время один и тот же ярлык на разных по счету наклейках... Можно сделать такую формулу? Как описываю ниже. Таблица База Первая строка столбца Клиент: =последнее значение столбца Клиент таблицы Ремонт (а ЕСЛИ не то, тогда предпоследнее, а если не то, тогда за 2 до него, и так например 6 вложений ЕСЛИ) Таким образом при каждом вводе нового Клиента в табл Ремонт, он в табл База будет сохранятся в новой строке и предыдущий и еще 4 до предыдущего ?StewArt
...когда каждая вновь вводимая строчка становится первой, правильно...?
Нет. Вы формулу проверяли? Заполнено 24 строки. Подставляются с 1 по 24. Заполняем 45. В результирующей уже с 22 по 45. ... Заполняем 1135. В результирующей с 1112 по 1135.
Цитата
...когда каждая вновь вводимая строчка становится первой, правильно...?
Нет. Вы формулу проверяли? Заполнено 24 строки. Подставляются с 1 по 24. Заполняем 45. В результирующей уже с 22 по 45. ... Заполняем 1135. В результирующей с 1112 по 1135.vikttur
Сообщение отредактировал vikttur - Четверг, 19.12.2013, 01:27
Я сел её проверять но не смог разобраться... Потому что у меня эксель 2010 и там столбцы С строки R. И еще не понимаю аргументы строки и столбца. мне еще пару дней допетривать...
Я сел её проверять но не смог разобраться... Потому что у меня эксель 2010 и там столбцы С строки R. И еще не понимаю аргументы строки и столбца. мне еще пару дней допетривать... StewArt
Vikktur, я попробовал! Отличную Вы написали формулу! Только я не смогу ее использовать в таком виде. Давайте я Вам выложу рабочую таблицу и Вы увидите чего не хватает!
Коротко: Первое - Мне нужно чтобы каждая вновь вписываемая строка таблицы левой большой вставала в таблицу правую маленькую в строку , соответствующую номеру столбца Ярлык, а не как сейчас, каждая вписвыаемая встает последней. Второе - нужно привязать Код к Клиенту, т.к. это главный смысл, что у каждого клиента свой код. Т.е. заменяется сразу строка Код и Клиент, а не только Код, как сейчас.
Общий смысл второй маленькой таблицы: её строки это как бы ярлыки на листе, который печатает принтер. Каждая строка - один ярлык. На нем печатается Код и фамилия Клиента. Так вот если я напечатал 10 ярлыков сегодня, то завтра мне надо будет печатать еще 10, начиная с 11-ого, потому что первые десять я уже от листа отклеил и на коробки наклеил. Листы самоклеящиеся из Комуса по 24 этиектки на формате А4. Вот такие http://www.komus.ru/product/8021/
Vikktur, я попробовал! Отличную Вы написали формулу! Только я не смогу ее использовать в таком виде. Давайте я Вам выложу рабочую таблицу и Вы увидите чего не хватает!
Коротко: Первое - Мне нужно чтобы каждая вновь вписываемая строка таблицы левой большой вставала в таблицу правую маленькую в строку , соответствующую номеру столбца Ярлык, а не как сейчас, каждая вписвыаемая встает последней. Второе - нужно привязать Код к Клиенту, т.к. это главный смысл, что у каждого клиента свой код. Т.е. заменяется сразу строка Код и Клиент, а не только Код, как сейчас.
Общий смысл второй маленькой таблицы: её строки это как бы ярлыки на листе, который печатает принтер. Каждая строка - один ярлык. На нем печатается Код и фамилия Клиента. Так вот если я напечатал 10 ярлыков сегодня, то завтра мне надо будет печатать еще 10, начиная с 11-ого, потому что первые десять я уже от листа отклеил и на коробки наклеил. Листы самоклеящиеся из Комуса по 24 этиектки на формате А4. Вот такие http://www.komus.ru/product/8021/StewArt
Ну так вот. Это самое сложное. Как сделать чтоб маленькая таблица из 24-х строк заполнялась полностью так же как большая таблица, в которой строки прибавляются каждый день, по разному количеству строк, сегодня 3, завтра 10, послезавтра еще 11, итого 24 , т.е. один печатаемый лист ярлыков. При этом напечатаь надо сразу, а не через 3 дня ,как лист заполнится
Ну так вот. Это самое сложное. Как сделать чтоб маленькая таблица из 24-х строк заполнялась полностью так же как большая таблица, в которой строки прибавляются каждый день, по разному количеству строк, сегодня 3, завтра 10, послезавтра еще 11, итого 24 , т.е. один печатаемый лист ярлыков. При этом напечатаь надо сразу, а не через 3 дня ,как лист заполнится StewArt
Т.е. печатаете не дожидаясь полного заполнения ярлыков?
Если печатать каждый раз одинаковое количество. В малой таблице 14 ярлыков. Напечатали 14. Если в списке есть 15 и 16, они станут на места 1 и 2. Но! Вы не напечатали первые 14 (загуляли в этот день), а уже завтра есть 15 и 16. Пропало дело, остались без первых ярлыков? Если печатать каждый раз разное количество. Вчера распечатали 14, сегодня внесли только три. Печатаем? Сделано. Послезавтра нужно печатать 18 и далее. Как Excel узнает, сколько напечатали? На каком остановились?
Если такой разнобой, предлагаю ввести доп. ячейку, в которую вписывать номер первого ярлыка, который должен печататься. Остальные 13 подтянутся.
Т.е. печатаете не дожидаясь полного заполнения ярлыков?
Если печатать каждый раз одинаковое количество. В малой таблице 14 ярлыков. Напечатали 14. Если в списке есть 15 и 16, они станут на места 1 и 2. Но! Вы не напечатали первые 14 (загуляли в этот день), а уже завтра есть 15 и 16. Пропало дело, остались без первых ярлыков? Если печатать каждый раз разное количество. Вчера распечатали 14, сегодня внесли только три. Печатаем? Сделано. Послезавтра нужно печатать 18 и далее. Как Excel узнает, сколько напечатали? На каком остановились?
Если такой разнобой, предлагаю ввести доп. ячейку, в которую вписывать номер первого ярлыка, который должен печататься. Остальные 13 подтянутся.vikttur
"Это понятно, эксель сам не узнает где нужно начать печатать. Логика немного другая. Мы пляшем от необходимости заполнить лист печати, чтоб не выбрасывать недопечатанные листы. Но в день такого количества ярлыков(24) обычно не набегает. Предлагаю сократить вашу таблицу с 24-х строк до 3-х строк. Набежало 3 ярлыка - напечатал. Набежало еще три - еще раз напечатал. Но! второй раз надо напечатать не с 1 по 3 строчку , а с 6 по 9-ю! Как это сделать?
"Это понятно, эксель сам не узнает где нужно начать печатать. Логика немного другая. Мы пляшем от необходимости заполнить лист печати, чтоб не выбрасывать недопечатанные листы. Но в день такого количества ярлыков(24) обычно не набегает. Предлагаю сократить вашу таблицу с 24-х строк до 3-х строк. Набежало 3 ярлыка - напечатал. Набежало еще три - еще раз напечатал. Но! второй раз надо напечатать не с 1 по 3 строчку , а с 6 по 9-ю! Как это сделать?StewArt
Чем дальше в объяснения, тем хуже. А 4 и 5 не нужны? Второй раз печатать ярлыка (6-9)? Как предлагаете узнавать, что сегодня второй день печати, а не пятый?
Чем дальше в объяснения, тем хуже. А 4 и 5 не нужны? Второй раз печатать ярлыка (6-9)? Как предлагаете узнавать, что сегодня второй день печати, а не пятый?vikttur
Сообщение отредактировал vikttur - Суббота, 21.12.2013, 00:40
Так вся проблема свелась к установлению соответствия между двумя числами + установке ещё одного числа-счётчика.
Выставляем три значения: строка таблицы, с которой начинать печать; счётчик - сколько ярлыков напечатать; номер первого ярлыка для печати на имеющейся форме. Зная эти три значения (которые мы вынесем в отдельные ячейки или на форму) - выходной лист легко формируется уже имеющимся кодом. И именно эти три значения мы будем устанавливать вручную. И не надо заставлять формулы блистать интеллектом - лучше заставить их выполнить задачу правильно...
Так вся проблема свелась к установлению соответствия между двумя числами + установке ещё одного числа-счётчика.
Выставляем три значения: строка таблицы, с которой начинать печать; счётчик - сколько ярлыков напечатать; номер первого ярлыка для печати на имеющейся форме. Зная эти три значения (которые мы вынесем в отдельные ячейки или на форму) - выходной лист легко формируется уже имеющимся кодом. И именно эти три значения мы будем устанавливать вручную. И не надо заставлять формулы блистать интеллектом - лучше заставить их выполнить задачу правильно...AndreTM
Артем, мысль хорошая, но я тогда просто нажму Ctrl+C и Ctrl+V и вставлю нужные строчки из одной таблицы в другую, ярлыки какие надо сразу заполнятся и печатай себе. Но так автоматика зачем тогда? Куча функций, которая все делает сама? Просто правильно нужно скомбинировать формулу. Вот например я предлагал логику (как записать формулой это мне пока не под силу): 3 вложения функции Если друг в друга - эта формула в первой строке маленькой таблицы: ЕСЛИ номер строки=1, то Просмотр находит последнего клиента и вписывает;если нет то пвисывает предыдущего клиента (по большой таблице), если нет, то на два выше, если же нет то пробел. Что мы добьёмся. Если строка один мал таблицы содержит последнего клиента (из больш таблицы) то все хорошо, но я его пока не печатаю. Значит если я вписал еще клиента в больш таблицу то он стал последним и Просмотр должен вписать его, но уже в строку 2, следовательно вторая вложенная Если и говорит что номер строки не равен 1 , тогда вношу Клинета на ячеку выше. Таки образом мы получаем заполненные строки 1 и 2 своими по хронологии Клиентами. Третье вложение для третьей строки, а потом все забивается пробелами . и таких троек в 8 штук, получится лист 24 ярлыка... ) Я, короче замудрил, надо упрощать, а то меня никто не пойме вообще... Следующий пост будет о конкретной формуле. Я вроде допер что надо использовать ДВССЫЛ...
Артем, мысль хорошая, но я тогда просто нажму Ctrl+C и Ctrl+V и вставлю нужные строчки из одной таблицы в другую, ярлыки какие надо сразу заполнятся и печатай себе. Но так автоматика зачем тогда? Куча функций, которая все делает сама? Просто правильно нужно скомбинировать формулу. Вот например я предлагал логику (как записать формулой это мне пока не под силу): 3 вложения функции Если друг в друга - эта формула в первой строке маленькой таблицы: ЕСЛИ номер строки=1, то Просмотр находит последнего клиента и вписывает;если нет то пвисывает предыдущего клиента (по большой таблице), если нет, то на два выше, если же нет то пробел. Что мы добьёмся. Если строка один мал таблицы содержит последнего клиента (из больш таблицы) то все хорошо, но я его пока не печатаю. Значит если я вписал еще клиента в больш таблицу то он стал последним и Просмотр должен вписать его, но уже в строку 2, следовательно вторая вложенная Если и говорит что номер строки не равен 1 , тогда вношу Клинета на ячеку выше. Таки образом мы получаем заполненные строки 1 и 2 своими по хронологии Клиентами. Третье вложение для третьей строки, а потом все забивается пробелами . и таких троек в 8 штук, получится лист 24 ярлыка... ) Я, короче замудрил, надо упрощать, а то меня никто не пойме вообще... Следующий пост будет о конкретной формуле. Я вроде допер что надо использовать ДВССЫЛ... StewArt