Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 | 2 |

 

  Вопрос: формирование заказа Добавлено: 10.07.06 17:26  

Автор вопроса:  APS | ICQ: 234458121 
Господа!
Дайте совет как лучше решить следующую задачу.
В Excel первый лист представляет из себя бланк заказа. Все остальные листы, кроме последнего, представляют из себя прайс-листы, на которых есть колонка с заголовком "Заказ". Пользователь проставляет в этой колонке необходимые количества, нажимает кнопку и те, позиции, у которых указаны количества, переносятся на первый лист. Колонки на разных листах имеют разные номера, количество строк на разных листах также разное.
И вот я задумался, как лучше организовать перебор необходимых ячеек на предмет просмотра наличия в них числа. То ли создать именованный диапазон и перебирать в нем все ячейки (только не могу понять, как присвоить имя диапазону, ячейки которого находятся на разных листах), то ли искать на каждом листе ячейку со словом "Заказ" и просматривать все ячейки ниже до последней заполненной.

Ответить

  Ответы Всего ответов: 20  

Номер ответа: 1
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #1 Добавлено: 10.07.06 18:15
Я бы перебирал все листы и на каждом листе шел до первой непустой строки в столбце "Наименование" (то бишь по номенклатуре). Ведь в прайсе (как смею предположить) всегда есть столбцы ("Наименование", "Ед.Изм.", "Цена";) и столбец "Наименование" ВСЕГДА должен быть заполнен - иначе это не прайс "а дрянь какая-то". Таким образом когда закончится "Номенклатура" - тогда и останавливайся и переходи к следующему прайсу (на следующий лист). И когда идешь по "Наименованию" проверяешь - есть ли заказы на неё.
Вот так!

Ответить

Номер ответа: 2
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #2
Добавлено: 10.07.06 18:42
____ Не смущает то, что колонка "Заказ" на разных листах имеет разный номер, а в бланк заказа (первый лист) их надо все вместе запихать?

Ответить

Номер ответа: 3
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #3 Добавлено: 10.07.06 18:58
2: Нисколько!!!
Хоть это и криво, что прайс-листы с различными колонками, но это совершенно неважно в каких колонках что находится.

Ответить

Номер ответа: 4
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #4
Добавлено: 10.07.06 19:24
____ А сумму (стоимость) заказа на первом листе программно формировать? Она ведь "встанет" в разные столбцы.
____ Я бы прайс всё-таки перелопатил с целью установить в один столбец стоимость каждой позиции (строки) прайса. Не вижу смысла в разном положении.
____ А что автор темы думает по этому поводу?

Ответить

Номер ответа: 5
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #5 Добавлено: 10.07.06 19:50
4:
____ А сумму (стоимость) заказа на первом листе программно формировать? Она ведь "встанет" в разные столбцы.
Не очень понятно на счет "встанет в разные столбцы" - куда захочет туда и будет пихать. Сумму заказа можно и как значение выводить и как программно формулу написать- но лучше конечно формулой (красивше) и позволит легко удалить ненужные позиции из казака с пересчетом.
____ Я бы прайс всё-таки перелопатил с целью установить в один столбец стоимость каждой позиции (строки) прайса. Не вижу смысла в разном положении.
Естественно только ЗА! Но возможно такая муйня приходит с регионов и - либо еще какие администратиные бяки препятствующие делать по человечьи.
____ А что автор темы думает по этому поводу?
А это как раз самое интересное! Высказывайтесь товарисчъ APS!

Ответить

Номер ответа: 6
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #6
Добавлено: 10.07.06 21:22
Не очень понятно на счет "встанет в разные столбцы"

____ Потому что хотелось бы брать строку из прайса и вставлять её в лист Заказа, не разбираясь, где находится "Количество", "Цена" и "Сумма". В противном случай задача довольно сильно усложняется. —
____ 1. Необходимо определить самую длинную строку из всех, которые выбрал клиент.
____ 2. Переместить в более коротких строках ячейку с суммой (а желательно и с ценой и количеством) в крайне правое положение.

____ Усложнение сильно неоправданное против простого "приведения" прайсов к единообразию в правой части строк. Хотя сделать можно всё.

Ответить

Номер ответа: 7
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #7 Добавлено: 10.07.06 21:59
____ 1. Необходимо определить самую длинную строку из всех, которые выбрал клиент.
____ 2. Переместить в более коротких строках ячейку с суммой (а желательно и с ценой и количеством) в крайне правое положение.
Это есть ужас (гемор и перекосить может легко)! Максимум чтобы сделал я - ну ведь не дофигича же у него прайсов (всем прайсам есть предел) - это отдельно бы сделал мини справочник (как угодно) - прайс - столбец - чё в нем. И далее обрабатывал. Действовать будет если формат прайсов не меняется - а если и это меняется по попытался бы объяснить что это нехорошо - иначе - послал бы в пень!

Ответить

Номер ответа: 8
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #8 Добавлено: 11.07.06 16:22
____ А что автор темы думает по этому поводу?
Да видно автор не думает по этому поводу... Хотя тему просматривает... Странно...

Ответить

Номер ответа: 9
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #9 Добавлено: 12.07.06 16:43
Сорри. Нет времени пока отписаться нормально по делу.
Чуть позже отпишусь.

Ответить

Номер ответа: 10
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #10 Добавлено: 13.07.06 00:20
Ну вот я и добрался до домашнего компа, где могу спокойно писать.
Прайс на самом деле один. Разделен на листы из-за разницы приводимых данных в них. Поэтому и структура разная. Так удобнее пользоваться дилерам. Прайс я формирую сам, поэтому могу сделать так, как будет мне угодно. Но... Все привыкли к его определенному виду. Все переделки будет восприняты в штыки. Хотя и на это есть административные инструменты.
Хотелось сделать универсальный инструмент, который бы не зависел от структуры прайса, но я понял, что это ведет к сильному усложнению задачи. Теперь пытаюсь привести необхожимые мне строки к одноме виду и местоположению - есть одна загвоздка, есть вариант ее решить, но он не очень нравится.
На самом деле, готов вам выслать исходный вариант прайса. Тогда будет более предметный разговор.

Ответить

Номер ответа: 11
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #11 Добавлено: 13.07.06 08:22
Шли на мыло.

Ответить

Номер ответа: 12
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #12
Добавлено: 13.07.06 09:26
____ Забавно, что я решаю сейчас совершенно аналогичную задачу, но основная её идея — заставить дилеров оформлять заказы в единообразной форме с последующей пересылкой (после проверки) на завод. Номенклатура фирмы Ruukki. Прайс позволено изменять как угодно. Важно сохранить выходную форму.

Ответить

Номер ответа: 13
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #13 Добавлено: 13.07.06 12:59
11: Отправил
12: Вот именно, основная идея, чтобы все заказы от дилеров приходили в единообразном виде на нашем бланке, который потом автоматически обрабатывается 1С.

Ответить

Номер ответа: 14
Автор ответа:
 Незнайка



Вопросов: 7
Ответов: 188
 Профиль | | #14 Добавлено: 13.07.06 13:10
13: Вопрос по существу - а почему бы не реализовать твою задачу полностью в 1С (коего я к величайшему сожалению не знаю)? Там по определению не актуальны все те проблемы с которыми ты щаз бьешся.

Ответить

Номер ответа: 15
Автор ответа:
 APS



ICQ: 234458121 

Вопросов: 38
Ответов: 107
 Профиль | | #15 Добавлено: 13.07.06 13:38
Т.е. ты предлагаешь, чтобы дилеры прямо в прайсе проставляли количество и присылали его нам, а 1С обрабатывал?
Файл тяжеловат, да и неудобно так.
Проще когда я им прайс в Excel, они нам заказ в Excel, а его уже обрабатывает 1С. Бланк заказа ведь стандартизован.
Я почему вообще стал с этим морочиться, потому что дилеры стали жаловаться, что неудобно им руками или копированием заносить номенклатуру на бланк. И все присылают как попало, тогда уже наши менеджеры начинают вешаться от ручного вбивания заказов в 1С. Поэтому и делаю, чтобы дилер в прайсе циферок понаставлял, кнопочку нажал и получил отдельный файл с готовым заказом.
Правда, остается еще одна незадача. Прайс на ЗиП в другом файле, даже не в Excel, а в txt. Как бы и его подтянуть... На самом деле я экспортирую его в txt из mdb. Почему так? Потому что позиций порядка 150 т., на один лист в Excel они не влазят, а как сэкспортировать автоматом на несколько, никак не соображу. Да и размер файла Excel огромный получается - 10 мег. Такой прайс особо не разошлешь!

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам