Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1 2 След.
RSS
Динамическая таблица со смещением итогов, Как автоматически расширить накладную при необходимости в конце иметь подведение итогов
 
Доброго дня!  :D Помогите советом, али делом! Не хватает знаний, уж, простите!! :cry:
Столкнулся с проблемой расширения таблицы при увеличении номенклатуры. Сейчас выпустили новую линейку и количество строк в накладной может колеблется от 10 до 250.... а что будет в будущем и не знаю(( :cry:
Как сохранить итоги и подписи числа прописью при изменении диапазона?
 
Просто вставить строки не подходит?
 
Нет. Плывут все формулы и автоматическая подстановка данных с другого листа. Кроме того, возникает проблема с определением конечной ячейки, для адреса формулы преобразования цифр в текст. :cry:  
 
Цитата
Voin написал:
Как сохранить итоги и подписи числа прописью
напишите корректные формулы, которым по барабану сколько данных в накладной 25, 250, 2500...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Voin написал:
возникает проблема с определением конечной ячейки, для адреса формулы преобразования цифр в текст.
каккая проблема?
ячейка с суммой ВСЕГДА R[-3]C[4] от ячейки, где эта сумма прописью
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Интересная идея, с таким не сталкивался... подумаю, а как автоматически при вставлении расширить диапазон? да еще сохранить возможность подтягивания данных с другого листа?

Цитата
Ігор Гончаренко написал: напишите корректные формулы
Не вполне получается с формулой преобразования числа в пропись. Там аргумент-адрес ячейки...
 
добавляйте, удаляйте строки между Цена и Итого
сумма считается?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Спасибо. Не разобрался как, но сумма считается.
Но это не вариант. Сам бы если заполнял, то и раздвинуть строчки и пронумеровать/посчитать-не проблема, да и написать тоже.
Мне сказали, что проще в 1С перейти и не париться с этим, там все автоматически(((..... Смысл, что б вводил человек далекий от таких сложностей.  
 
MAX(A4:A25) = A25
 
чтобы написать кому-то, нужно довольно много знать о том как работает Excel и какие возможности есть у разработчика, а не спрашивать элементарные вещи
повозитесь еще с 1С, хлебанете и там... полной чашей
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
ocet p написал: MAX(A4:A25) = A25
Не вполне мысль понял... что это даст?

Цитата
Ігор Гончаренко написал: а не спрашивать элементарные вещи
.... может я спрашиваю и элементарщину(((, прошу прощения, не спорю, не достаточно хорошо изучил Excel, так потому и прошу помощи у гуру! Может кто-то и подскажет решение.
 
Пробуйте. Без макросов, просто используя функционал и систему адресации умных таблиц можно решить вашу задачу.
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
умных таблиц
Умные таблицы это первое, что пришло в голову, но тогда летит вся  логика по автоматизации подстановки данных по столбцу № п\п и цена.Протяжка тут не спасет, адреса ячеек съедут,  но, главное, оператору эти операции будут сложны(((
 
Подставил рабочие формулы, при добавлении новых строк формулы будут заполняться автоматически. У вас там, кстати, в ВПР диапазон массива поиска был не закреплен, а это не есть хорошо - можно словить ошибки.
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
а это не есть хорошо - можно словить ошибки
Спасибо за подсказку!!!
С №-все встает на свои места, а в графе цена происходит изменение ! Спасибо большое!!!!!
Прошу простить неграмотность.... В графе цена при увеличении строк происходит изменение адреса подгрузки данных, но почему то при этом значение берет верно... в чем фишка?? Если несложно объяснить. И что делать со строчкой названий? они уплываюи(((. Если есть возможность, то как на новом листе вставить название столбцов или их номера?
Изменено: Voin - 22 Авг 2019 15:59:50 (Не загрузил файл)
 
Цитата
Voin написал:
что это даст?
Для чего вам нужна функция "MAX(A4:A25)", если в ячейке "A25" имеется максимальное значение (это также общее количество строк в таблице), которое может иметь место в диапазоне "A4:A25" (сортировка по возрастанию значений) ?

п.с.: может макрос ?
:)  
 
Цитата
ocet p написал:
Для чего вам нужна функция "MAX(A4:A25)", если в ячейке "A25" имеется максимальное значение
Все просто, на самом деле. Эта функция возвращает максимальное значение  диапазоне, что б вывести значение количества наименований. Вы правы только в одном случае, когда этих позиций 22 (А25 и есть 22-ая значимая строка), а если будет только 3 наименования или 5, ну, или скажем 19? ответил? Проблема то в том, что с ростом номенклатуры, таблица может быть и на 100 и на 200 строк, вот тут и возникла засада(((... Макрос может и лучше, но тут я не силен((
 
Это всегда будет ячейка на 3 строки выше и в том же столбце, значит "R[-3]C" (3 линии от "Всего наименований:"), посмотрите на запись № 5 Игоря Гончаренко (то же правило, что и для суммы в столбце "E"). Функция не нужна, просто ссылка на ячейку - конечно используя схему RC.

пс:
Почему в функции "VLOOKUP(Bx:By;Модель!E2:F1001;2;0)" вы ввели диапазон в качестве аргумента номер 1, а не ссылку на ячейку ?
 
Цитата
ocet p написал: всегда будет ячейка на 3 строки выше и в том же столбце, значит "R[-3]C"
Согласен! Но таблица была не динамической. Вначале она строилась для одного листа... Итоги подводились в конце листа, поэтому так и было сделано.

Цитата
"VLOOKUP(Bx:By;Модель!E2:F1001;2;0)"
А это косяк((( прочел, что должен быть диапазон и вставил((

Цитата
Функция не нужна, просто ссылка на ячейку - конечно используя схему RC.
Теперь, когда диапазон стал динамическим-да.
Впрочем задача пока что не решена(( вставлять все приходится ручками, автоматом таблица не расширяется((
 
Цитата
ocet p написал:
Почему в функции "VLOOKUP(Bx:By;Модель!E2:F1001;2;0)" вы ввели диапазон в качестве аргумента номер 1, а не ссылку на ячейку ?
А в чем проблема? Можно и так. Функция тогда берет ячейку диапазона из текущей строки.
Цитата
Voin написал:
автоматом таблица не расширяется((
А в чем проблема? Что значит не расширяется? Как вы её расширяете?
Цитата
Voin написал:
В графе цена при увеличении строк происходит изменение адреса подгрузки данных, но почему то при этом значение берет верно... в чем фишка??
Здесь вообще не понял о чем вы.
Цитата
Voin написал:
Если есть возможность, то как на новом листе вставить название столбцов или их номера?
Если нужна таблица на новом листе,то самый простой вариант создать копию листа целиком. Это можно делать и текущей книге и копировать/вставлять лист в новую/другую книгу.
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал: Что значит не расширяется? Как вы её расширяете?
Девочки просят, что б при заполнении последней строчки таблицы, при нажатии Enter возникала новая пустая строчка. В вашем варианте я вставляю пустые строчки левая кнопка мыши"Вставить". ТИли я что-то не так понял?

Цитата
Здесь вообще не понял о чем вы.
Вставив строчки в Вашем варианте посмотрел на формулу, в ней пишет название модели?! (я приложил результат файла). Но это не особо важно, главное формула верно работает, а как отображается не суть))))) Это просто интересно)).
А вот то, что смещается название таблицы вниз и устранить это не получается, вот ут да(((

Цитата
то как на новом листе вставить название столбцов или их номера?
Имеется ввиду когда таблица будет заполнена и перейдет на следующий лист)) а не в новой вкладке)))
Но в любом случае, большое спасибо! Ваше предложение пока что единственное
 
Цитата
единственное
я просто в шоке, а в чем суть вопроса?
Цитата
Девочки просят,
это у вас давно?
Voin,
давайте сформулируем вопрос. там  может и ответ поступит  
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
PooHkrd написал:
А в чем проблема?
Ну, никакая ... любопытство
Цитата
Voin написал:
Девочки просят, что б при заполнении последней строчки
Счастливец, меня всегда просят денег ... : )

Так может самый простой макрос из рекордера Excel, слегка исправленный вручную ? Справитесь ли вы с этим ?
 
Цитата
Ігор Гончаренко написал:
Voin , давайте сформулируем вопрос. там  может и ответ поступит  
Вопрос: как обеспечить появление новой строки, когда таблица оказывается заполненной полностью. а появляется необходимость добавить следующий вид номенклатуры.
Как зафиксировать строку "Наименование граф" от смещения вниз по таблице?
Цитата
Ігор Гончаренко написал:
я просто в шоке
Во дожил! Шокирую людей безграмотностью вопроса(( 8-0
Цитата
ocet p написал:
Справитесь ли вы с этим ?
Боюсь, что нет.  
Изменено: Voin - 26 Авг 2019 09:41:47 (Добавил в ответ доп.информацию)
 
Цитата
Voin написал:
как обеспечить появление новой строки, когда таблица оказывается заполненной полностью.
Смотрите картинку.

Чтобы ускорить, эту кнопку можно вывести на панель быстрого доступа:

и тогда на кнопку автоматически назначится горячее сочетание клавиш. Для примера на картинке это будет ALT+4.
Если курсор находится в правом нижнем углу таблицы, то нажатие кнопки "Таб" также добавляет строки в таблицу с автоматическим заполнением формул.
Цитата
Voin написал:
Как зафиксировать строку "Наименование граф" от смещения вниз по таблице?
Тут вообще непонятно, если добавлять строки как я указал то заголовки никуда не съезжают.
Изменено: PooHkrd - 26 Авг 2019 10:01:09
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
Тут вообще непонятно, если добавлять строки как я указал то заголовки никуда не съезжают.
Я именно так и вставляю. Вот результат:
Подпрограмма Visual Basic начинает ранжировать строку с наименованием столбцов по алфавиту
 
Уберите макрос из листа "Нак1" (удалите все строки)
Владимир
 
Это сделать легко. Но его назначение сортировка по возрастанию при введении новых значений !
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B4:C40")) Is Nothing Then
        Range("b4:c40").Sort Key1:=[b4]
    End If
End Sub
Почему-то этот макрос захватывает строку для сортировки с названием таблицы ( исправить то исправил, корявенько, но работает... вставил перед "Товар" букву а и сделал ее невидимой). Пробовал ввести "&" для расширения динамического диапазона :(, но видимо с синтаксисом что-то не разобрался, дает ошибку.    
Изменено: Voin - 26 Авг 2019 23:10:07
 
Действуйте по порядку.
1. Возьмите пример коллеги PooHkrd из #14, удалите макрос листа
2. Проверьте, что все работает в соответствии с Вашими замыслами
3. Если необходимо отсортировать по наименованию, то нажмите стрелочку в ячейке Товар и выберите там сортировку от А до Я
Владимир
 
Цитата
sokol92 написал: Действуйте по порядку.
Совершенно верно!
Так я поступил. Для этого и ввел в "Товар" букву "А", что прекратило смещение строки с названием таблицы. Действительно, при нажимании на кнопку "Сортировка" все работает.
Задача стоит автоматизировать сортировку. Для этого и применялся макрос. До момента пока диапазон был точно определен, проблем не возникало. Сейчас не хватает знаний для задания "плавающего" диапазона по столбцам В и С. Выдает ошибку. Видимо ошибаюсь с синтаксисом.
Страницы: 1 2 След.
Читают тему (гостей: 1)
Наверх