Ребят, привет! Никогда бы не подумал, что буду на форуме по EXCEL регистрироваться, но вот ведь как!!!!! Помогите, пожалуйста, задачку решить: - Работаю на стекольном производстве. В числе прочих делаем и стекло пакеты из разного стекла, количеством камер и шириной рамки. (ниже привел пример – в нем красным выделены рамки разделяющие камеры, их количество и ширина.) - Список состоит из 2000 – 5000 строк (номенклатура выпускаемой продукции). - Моет быть есть какая то мулечка (обработка), которая позволит сгруппировать это все по 2-м признакам: количеству камер и ширине рамки? Например (из того списка что привел): • Однокамерный, рамка 14 • Двухкамерный, рамки 10-10 • Однокамерный, рамка 24 • Однокамерный, рамка 20 • Двухкамерный, рамки 12-8 • Двухкамерный, рамки 8-10
Помогите не сойти с ума! ….. Заранее благодарен!
Ребят, привет! Никогда бы не подумал, что буду на форуме по EXCEL регистрироваться, но вот ведь как!!!!! Помогите, пожалуйста, задачку решить: - Работаю на стекольном производстве. В числе прочих делаем и стекло пакеты из разного стекла, количеством камер и шириной рамки. (ниже привел пример – в нем красным выделены рамки разделяющие камеры, их количество и ширина.) - Список состоит из 2000 – 5000 строк (номенклатура выпускаемой продукции). - Моет быть есть какая то мулечка (обработка), которая позволит сгруппировать это все по 2-м признакам: количеству камер и ширине рамки? Например (из того списка что привел): • Однокамерный, рамка 14 • Двухкамерный, рамки 10-10 • Однокамерный, рамка 24 • Однокамерный, рамка 20 • Двухкамерный, рамки 12-8 • Двухкамерный, рамки 8-10
Помогите не сойти с ума! ….. Заранее благодарен!Neonyc
Nic70y, СПАСИБО огромное за оперативность!!!!! Просто реактивная!!!!! В принципе направление, видимо, такое, но немного в другом.... (в примере попытался пояснить) М.б. как в варианте № 1 - сгруппировать по общему признаку чтобы потом производить действия с массивом либо, как в варианте № 2 - можно сгруппировать и суммировать данные по строкам. Если ли какой то не слишком сложный вариант решения? Задачу поставили оперативную и решения ждут "вчера" К макросам, к сожалению никогда не прибегал......
Nic70y, СПАСИБО огромное за оперативность!!!!! Просто реактивная!!!!! В принципе направление, видимо, такое, но немного в другом.... (в примере попытался пояснить) М.б. как в варианте № 1 - сгруппировать по общему признаку чтобы потом производить действия с массивом либо, как в варианте № 2 - можно сгруппировать и суммировать данные по строкам. Если ли какой то не слишком сложный вариант решения? Задачу поставили оперативную и решения ждут "вчера" К макросам, к сожалению никогда не прибегал......Neonyc
Nic70y, buchlotnik, низкий поклон! Буду пробовать сейчас воплотить в жизнь, т.к. данная группировка - только первый этап анализа, а список пакетов реально пугающих размеров.
Киньте, пожалуйста, ссылку где можно почитать про организацию и работу со "сводными таблицами".
Nic70y, buchlotnik, низкий поклон! Буду пробовать сейчас воплотить в жизнь, т.к. данная группировка - только первый этап анализа, а список пакетов реально пугающих размеров.
Киньте, пожалуйста, ссылку где можно почитать про организацию и работу со "сводными таблицами".Neonyc
Да хотя бы на официальном сайте поддержки сводные, а так - я бы рекомендовал Уокенбаха (Библия Excel) и Билла Джелена (Сводные таблицы в Excel) - по крайней мере я по ним учился
Да хотя бы на официальном сайте поддержки сводные, а так - я бы рекомендовал Уокенбаха (Библия Excel) и Билла Джелена (Сводные таблицы в Excel) - по крайней мере я по ним учился buchlotnik
Сообщение отредактировал buchlotnik - Суббота, 12.03.2016, 13:34
Я бы посоветовал создать отдельные столбцы для количества камер и размера рамок и уже по ним проводить сортировку, фильтрацию и т.п. Разнести данные можно макросом: [vba]
Код
Const StartRow = 23 'Строка, с которой начинаются данные в Вашей таблице Sub tt() Dim arr(), arr1(), I As Long, J As Long, Obj As Object, Rng As Range Set Rng = Range("A" & StartRow & ":A" & Cells(Rows.Count, 1).End(xlUp).Row) arr = Rng.Value ReDim arr1(1 To UBound(arr), 1 To 3) With CreateObject("VBScript.RegExp") .Global = True .Pattern = "-(\d{2}).{0,2}-" For I = 1 To UBound(arr) Set Obj = .Execute(arr(I, 1)) If Obj.Count > 0 Then arr1(I, 1) = Obj.Count For J = 0 To Obj.Count - 1 arr1(I, J + 2) = Val(Obj.Item(J).Submatches(0)) Next End If Next Rng.Offset(0, 7).Resize(Rng.Rows.Count, 3).Value = arr1 End With End Sub
[/vba]
Я бы посоветовал создать отдельные столбцы для количества камер и размера рамок и уже по ним проводить сортировку, фильтрацию и т.п. Разнести данные можно макросом: [vba]
Код
Const StartRow = 23 'Строка, с которой начинаются данные в Вашей таблице Sub tt() Dim arr(), arr1(), I As Long, J As Long, Obj As Object, Rng As Range Set Rng = Range("A" & StartRow & ":A" & Cells(Rows.Count, 1).End(xlUp).Row) arr = Rng.Value ReDim arr1(1 To UBound(arr), 1 To 3) With CreateObject("VBScript.RegExp") .Global = True .Pattern = "-(\d{2}).{0,2}-" For I = 1 To UBound(arr) Set Obj = .Execute(arr(I, 1)) If Obj.Count > 0 Then arr1(I, 1) = Obj.Count For J = 0 To Obj.Count - 1 arr1(I, J + 2) = Val(Obj.Item(J).Submatches(0)) Next End If Next Rng.Offset(0, 7).Resize(Rng.Rows.Count, 3).Value = arr1 End With End Sub
как то не понял определение признака количество секций и рамок - доп колонка где отражается кол-во секций/толщина, формулой или вручную (1,2,3) - фильтра по нему (сортировка тоже работает) - склеивание итоговый вид в колонке (если есть необходимость) (1-камерный, рамка 14)
Лучше всего задать унифицированный синтаксис для названия, или от обратного заносить параметры, а название будет само формулой собираться из характеристик
как то не понял определение признака количество секций и рамок - доп колонка где отражается кол-во секций/толщина, формулой или вручную (1,2,3) - фильтра по нему (сортировка тоже работает) - склеивание итоговый вид в колонке (если есть необходимость) (1-камерный, рамка 14)
Лучше всего задать унифицированный синтаксис для названия, или от обратного заносить параметры, а название будет само формулой собираться из характеристикAlexMen
lebensvoll отпишите на почту, а то меня _Boroda_ забанил, я Вам функцию сброшу
МВТ, толщина рамки не обязательно из двух цифр - у вас не везде корректно отрабатывает, сам в регулярках не силён, потому интересно - это можно допилить?
Хотя нет - сам допилил [vba]
Код
.Pattern = "-(\d+).{0,2}-"
[/vba]
МВТ, толщина рамки не обязательно из двух цифр - у вас не везде корректно отрабатывает, сам в регулярках не силён, потому интересно - это можно допилить?
Приветствую, уважаемых Форумчан! Основные параметры по расходу материалов на стеклопакет (СП) посчитал, используя вариант Ув. buchlotnik - из поста №4. Задачу добавили в плане расчета расхода моллекулярного сита (МС). База для его расчета = 2 длины самых длинных рамки минус 0,1 м на одну камеру СП. (для 2-х камерного СП соответственно число увеличивается в 2 раза) Предполагаю, что самым "рабоче-крестьянским" и безболезненным вариантом будет добавление столбца для расчета в таблицу содержащую исходные данные. (в примере её выделил цветом). Проблема в том, что в СП с пленкой нормы расхода МС другие, т.е. нужно в условия отбора (камерность и ширина рамки) добавить наличие пленки. Это собственно и не получается!!!! Видимо неправильно понимаю правило написания самой формулы. Возможно ли как то добавить в неё это условие? Наличие пленки отражается в формуле СП символами "пл".
Приветствую, уважаемых Форумчан! Основные параметры по расходу материалов на стеклопакет (СП) посчитал, используя вариант Ув. buchlotnik - из поста №4. Задачу добавили в плане расчета расхода моллекулярного сита (МС). База для его расчета = 2 длины самых длинных рамки минус 0,1 м на одну камеру СП. (для 2-х камерного СП соответственно число увеличивается в 2 раза) Предполагаю, что самым "рабоче-крестьянским" и безболезненным вариантом будет добавление столбца для расчета в таблицу содержащую исходные данные. (в примере её выделил цветом). Проблема в том, что в СП с пленкой нормы расхода МС другие, т.е. нужно в условия отбора (камерность и ширина рамки) добавить наличие пленки. Это собственно и не получается!!!! Видимо неправильно понимаю правило написания самой формулы. Возможно ли как то добавить в неё это условие? Наличие пленки отражается в формуле СП символами "пл".Neonyc