Здравствуйте, есть товар который подходит к ряду автомобилей. Этот ряд представлен в очень неудобном виде, его нужно переделать.
Суть в следующем, сначала в столбцах идут марки автомобилей (до 80 столбцов), потом идут их модели. но дело в том, что марки повторяются, а мне нужно, что бы не повторялись.
пример в приложенном файле, результат должен получиться (ячейка)Марка авто1 (ячейка) модель1;модель2;модель3.....(ячейка)Марка авто2 (ячейка) модель1;модель2;модель3..... и т.д.
Здравствуйте, есть товар который подходит к ряду автомобилей. Этот ряд представлен в очень неудобном виде, его нужно переделать.
Суть в следующем, сначала в столбцах идут марки автомобилей (до 80 столбцов), потом идут их модели. но дело в том, что марки повторяются, а мне нужно, что бы не повторялись.
пример в приложенном файле, результат должен получиться (ячейка)Марка авто1 (ячейка) модель1;модель2;модель3.....(ячейка)Марка авто2 (ячейка) модель1;модель2;модель3..... и т.д.cherkas
получиться (ячейка)Марка авто1 (ячейка) модель1;модель2;модель3.....(ячейка)Марка авто2 (ячейка) модель1;модель2;модель3..... и т.д.
Какая именно (ячейка)? Приведите в файле пример готового результата, что хотите получить в итоге. А второе, так не все отличные знатоки по маркам и модельному ряду автомобилей. Ка по мне, то я не знаю что за модель к примеру "K2900" (а гуглить и сопоставлять предложенные вами марки и модель вряд ли кому захочется) Думаю надо вам потрудится над файлом примером. Для меня Ваш пример не читабелен.
получиться (ячейка)Марка авто1 (ячейка) модель1;модель2;модель3.....(ячейка)Марка авто2 (ячейка) модель1;модель2;модель3..... и т.д.
Какая именно (ячейка)? Приведите в файле пример готового результата, что хотите получить в итоге. А второе, так не все отличные знатоки по маркам и модельному ряду автомобилей. Ка по мне, то я не знаю что за модель к примеру "K2900" (а гуглить и сопоставлять предложенные вами марки и модель вряд ли кому захочется) Думаю надо вам потрудится над файлом примером. Для меня Ваш пример не читабелен.VEKTORVSFREEMAN
"Опыт - это то, что получаешь, не получив того, что хотел"
в приложеном файле есть результат того, что должно получиться
Желтым идет марка авто, голубым - модель. Если обратите внимание, то самой нижней строкой идет горизонтальная нумерация от 1 до 80 по желтому и от 1 до 80 по голубому. Так вот модели соответствуют маркам по этим номерам, т.е. модель 1 марка 1, модель 2 марка 2, модель 3 марка 3, и т.д. При этом, модели могут повторятся.
Результат должен получиться такой же как начиная со столбца FH и далее. т.е. марка одна, потом все ее модели, потом следующая марка и все ее модели....
в строке 5 специально привел буквенно-цифровые значения и залил разными цветами.
А второе, так не все отличные знатоки по маркам и модельному ряду автомобилей
так этого и не нужно, тут главное принцип понять, мне кажется, что строка 5 этот принцип поясняет как нельзя лучше.
в приложеном файле есть результат того, что должно получиться
Желтым идет марка авто, голубым - модель. Если обратите внимание, то самой нижней строкой идет горизонтальная нумерация от 1 до 80 по желтому и от 1 до 80 по голубому. Так вот модели соответствуют маркам по этим номерам, т.е. модель 1 марка 1, модель 2 марка 2, модель 3 марка 3, и т.д. При этом, модели могут повторятся.
Результат должен получиться такой же как начиная со столбца FH и далее. т.е. марка одна, потом все ее модели, потом следующая марка и все ее модели....
в строке 5 специально привел буквенно-цифровые значения и залил разными цветами.
нет нет, так как Вы сделали можно просто скопировать строку из голубой таблицы и вставить в желтую. Это совсем не то. Результат должен получиться в этой же строке, так как в столбце А идут артикулы товаров. Единственно правильно Вы уловили смысл по которому марка объединяется с моделью. Если в Вашем файле вертикально читать две строки по столбцам, то получиться марка и модель одного авто. Но марка повторяется, т.е. |KIA ClarusI|KIA ClarusII|KIA ClarusIIKombi|KIA ...|. необходимо что бы получилось |KIA|ClarusI;ClarusII;ClarusIIKombi;...| , где в приведенном примере | - это разделитель между ячейками. т.е. в одной ячейке идет марка (из желтой таблицы) в следующей все ее модели (из голубой таблицы) потом опять марка(из желтой таблицы) следующая ячейка модели этой марки (из голубой таблицы)...
Посмотрите фаил из первого сообщения, строка 5. нужно что бы получилось именно так :(.
нет нет, так как Вы сделали можно просто скопировать строку из голубой таблицы и вставить в желтую. Это совсем не то. Результат должен получиться в этой же строке, так как в столбце А идут артикулы товаров. Единственно правильно Вы уловили смысл по которому марка объединяется с моделью. Если в Вашем файле вертикально читать две строки по столбцам, то получиться марка и модель одного авто. Но марка повторяется, т.е. |KIA ClarusI|KIA ClarusII|KIA ClarusIIKombi|KIA ...|. необходимо что бы получилось |KIA|ClarusI;ClarusII;ClarusIIKombi;...| , где в приведенном примере | - это разделитель между ячейками. т.е. в одной ячейке идет марка (из желтой таблицы) в следующей все ее модели (из голубой таблицы) потом опять марка(из желтой таблицы) следующая ячейка модели этой марки (из голубой таблицы)...
Посмотрите фаил из первого сообщения, строка 5. нужно что бы получилось именно так :(.cherkas
Сообщение отредактировал cherkas - Пятница, 24.10.2014, 15:46
прилагаю еще один пример, в нем разнес таблицы по разным листам
1 лист - марки авто 2 лист - модели этих марок 3 лист - так должно получиться в результате
в первом товаре на листе 1 отметил KIA, номера по таблице от 8 до 22 (номера в нижней строке) на листе 2 выделил марки этой модели, номера по таблице от 8 до 22
на третьем листе есть модель KIA(по очереди на своем месте, выделил ее так как у нее в данном случае много моделей), а в следующей ячейке через разделитель идут все модели из Лист 2 соответствующие марке КИА.
Для большего понимания в строке 5 на всех листах сделал буквенно-цифровой пример.
Еще есть просьба, если решение будет макросом, нужна возможность задать размеры максимального размера таблицы (сейчас 80) и количества артикулов (сейчас 2 если не считать строку 5). Просто таких таблиц много, они разного размера и с разным количеством артикулов.
прилагаю еще один пример, в нем разнес таблицы по разным листам
1 лист - марки авто 2 лист - модели этих марок 3 лист - так должно получиться в результате
в первом товаре на листе 1 отметил KIA, номера по таблице от 8 до 22 (номера в нижней строке) на листе 2 выделил марки этой модели, номера по таблице от 8 до 22
на третьем листе есть модель KIA(по очереди на своем месте, выделил ее так как у нее в данном случае много моделей), а в следующей ячейке через разделитель идут все модели из Лист 2 соответствующие марке КИА.
Для большего понимания в строке 5 на всех листах сделал буквенно-цифровой пример.
Еще есть просьба, если решение будет макросом, нужна возможность задать размеры максимального размера таблицы (сейчас 80) и количества артикулов (сейчас 2 если не считать строку 5). Просто таких таблиц много, они разного размера и с разным количеством артикулов.cherkas
У Вас это все данные, или еще будут. Если все, то проще вручную
если бы всё я бы не заморачивался. на данный момент 5 прайсов в каждом 150-200 товаров, и ширина таблицы в 80 ячеек не предел . Руками я за год не управлюсь. При всём при этом количество прайсов будет увеличиваться.
У Вас это все данные, или еще будут. Если все, то проще вручную
если бы всё я бы не заморачивался. на данный момент 5 прайсов в каждом 150-200 товаров, и ширина таблицы в 80 ячеек не предел . Руками я за год не управлюсь. При всём при этом количество прайсов будет увеличиваться.cherkas
Сообщение отредактировал cherkas - Пятница, 24.10.2014, 17:42
Ну вот, что то получилось наваять, чуть мозг не сломал. Результат конечно не идеальный, но то, что получилось можно хотя бы как то дальше руками проработать.
Товарищи гуру, хочу услышать немного критики. Я программист любитель (да и то с большой натяжкой), по этому прошу сильно не пинать, но если кто пожелает чего нибудь подсказать, с удовольствием послушаю.
для макроса кнопку не выводил, там он один, "сортировка1".
Ну вот, что то получилось наваять, чуть мозг не сломал. Результат конечно не идеальный, но то, что получилось можно хотя бы как то дальше руками проработать.
Товарищи гуру, хочу услышать немного критики. Я программист любитель (да и то с большой натяжкой), по этому прошу сильно не пинать, но если кто пожелает чего нибудь подсказать, с удовольствием послушаю.
для макроса кнопку не выводил, там он один, "сортировка1".cherkas
Спасибо! Я бы с удовольствием поразбирался, но кроме if и for ничего не знаю. Всё остальное по сути писал не я, я делаю запись макроса, произвожу нужные мне действия, потом останавливаю запись. Полученные таким образом части кода компаную так как мне нужно.
Вот такая вот небольшая хитрость :).
Спасибо! Я бы с удовольствием поразбирался, но кроме if и for ничего не знаю. Всё остальное по сути писал не я, я делаю запись макроса, произвожу нужные мне действия, потом останавливаю запись. Полученные таким образом части кода компаную так как мне нужно.
Я бы не советовал этим увлекаться. Макрорекордер хорош только в двух случаях: именно записать последовательность действий с интерфейсом, чтобы быстро решить рутинную задачу "кнопкотыканья"; и изучить действия приложения в некоторых случаях (например, посмотреть свойства, параметры методов модели). Для изучения VBA пользование рекордером - очень и очень неверный метод. Лучше уж собраться и прочитать любую книжку для начинающих... Впрочем, ещё лучше - сразу и параллельно читать что-либо по объектной модели приложения. По крайней мере, связку Workbooks-Worksheets-Cells + Range надо просто обкатывать на практике, пока не будет понимания
Я бы не советовал этим увлекаться. Макрорекордер хорош только в двух случаях: именно записать последовательность действий с интерфейсом, чтобы быстро решить рутинную задачу "кнопкотыканья"; и изучить действия приложения в некоторых случаях (например, посмотреть свойства, параметры методов модели). Для изучения VBA пользование рекордером - очень и очень неверный метод. Лучше уж собраться и прочитать любую книжку для начинающих... Впрочем, ещё лучше - сразу и параллельно читать что-либо по объектной модели приложения. По крайней мере, связку Workbooks-Worksheets-Cells + Range надо просто обкатывать на практике, пока не будет понимания AndreTM
AndreTM, понимаете, у меня нету цели изучить VBA, иногда по роду своей деятельности приходиться решать не совсем стандартные задачи. Я и ранее обращался на форум за помощью, раза 2 или 3, и в принципе мне помогали, модулей не было но формулы были довольно сложные. Я и по сей день ими пользуюсь. В этот раз помощи не дождался, вот и слепил из того, что умел, модуль выполнил свою задачу и уже к концу этой недели, когда проработаю все прайсы, возможно я им больше никогда не воспользуюсь. В следующий раз мне такие знания могут понадобиться через год или более, так что всем огромное спасибо за помощь.
AndreTM, понимаете, у меня нету цели изучить VBA, иногда по роду своей деятельности приходиться решать не совсем стандартные задачи. Я и ранее обращался на форум за помощью, раза 2 или 3, и в принципе мне помогали, модулей не было но формулы были довольно сложные. Я и по сей день ими пользуюсь. В этот раз помощи не дождался, вот и слепил из того, что умел, модуль выполнил свою задачу и уже к концу этой недели, когда проработаю все прайсы, возможно я им больше никогда не воспользуюсь. В следующий раз мне такие знания могут понадобиться через год или более, так что всем огромное спасибо за помощь.cherkas
Сообщение отредактировал cherkas - Понедельник, 27.10.2014, 06:26