Прошу подкорректировать мою работу, если же направление решения задачи не правильное в корне, то приму любую критику...
задача такова, при заполнении журнала выдачи нарядов попадаются детали на изготовление которых выписывается несколько нарядов, например до 4-х, фукция =ИНДЕКС ПОИСКПОЗ в таком случае выдает ошибку, подскажите что делать
Добрый вечер
Прошу подкорректировать мою работу, если же направление решения задачи не правильное в корне, то приму любую критику...
задача такова, при заполнении журнала выдачи нарядов попадаются детали на изготовление которых выписывается несколько нарядов, например до 4-х, фукция =ИНДЕКС ПОИСКПОЗ в таком случае выдает ошибку, подскажите что делатьtaxi_driver
В ячейке Н9 ошибка, так как обозначения А200.0539.000.012 НЕТ в столбце Е на листе журнал_сдачи.
УГУ я ее специально сделал, потому как это и есть вопрос
ладно спрошу иначе, как сделать так что бы на листе силовой отсек на против позиции А200.0539.000.011 в колонке НАРЯД было написаны фамилии всех рабочих которые ее изготавливали????
а именно : Грипенко ГИЛИН_2
Цитата (AlexM)
В ячейке Н9 ошибка, так как обозначения А200.0539.000.012 НЕТ в столбце Е на листе журнал_сдачи.
УГУ я ее специально сделал, потому как это и есть вопрос
ладно спрошу иначе, как сделать так что бы на листе силовой отсек на против позиции А200.0539.000.011 в колонке НАРЯД было написаны фамилии всех рабочих которые ее изготавливали????
Function WorkMan(Oboznach As String, Range As Range) As String Dim i As Long, n As Long, a, b() As String ' объявление переменных a = Range ' записываем диапазон в двумерный массив а For i = 1 To UBound(a) 'цикл по элементам массива, UBound(a) количество элементов в массиве (в столбце) If a(i, 2) = Oboznach Then 'если во втором столбце массива находим обозначение то... ReDim Preserve b(0 To n) 'переопределяем одномерный массив b(n) = a(i, 1): n = n + 1 'записывем в него значение из первого столбца массива а. Увеличиваем значение счетчика End If Next i WorkMan = Join(b, "," & Chr(10)) ' объединяем все элементы массива b с разделителем запятая и перевод строки End Function
[/vba]
Как то так
[vba]
Код
Function WorkMan(Oboznach As String, Range As Range) As String Dim i As Long, n As Long, a, b() As String ' объявление переменных a = Range ' записываем диапазон в двумерный массив а For i = 1 To UBound(a) 'цикл по элементам массива, UBound(a) количество элементов в массиве (в столбце) If a(i, 2) = Oboznach Then 'если во втором столбце массива находим обозначение то... ReDim Preserve b(0 To n) 'переопределяем одномерный массив b(n) = a(i, 1): n = n + 1 'записывем в него значение из первого столбца массива а. Увеличиваем значение счетчика End If Next i WorkMan = Join(b, "," & Chr(10)) ' объединяем все элементы массива b с разделителем запятая и перевод строки End Function
вот, смог изменить под подобную задачу, убрать мягкий перенос все равно не смог
& Chr(10) - то означает цифра 10?
Function WorkMan(Oboznach As String, Range As Range) As String Dim i As Long, n As Long, a, b() As String a = Range For i = 1 To UBound(a) If a(i, 1) = Oboznach Then ReDim Preserve b(0 To n) b(n) = a(i, 2): n = n + 1 End If Next i WorkMan = Join(b, ";" & Chr(1)) End Function
вот, смог изменить под подобную задачу, убрать мягкий перенос все равно не смог
& Chr(10) - то означает цифра 10?
Function WorkMan(Oboznach As String, Range As Range) As String Dim i As Long, n As Long, a, b() As String a = Range For i = 1 To UBound(a) If a(i, 1) = Oboznach Then ReDim Preserve b(0 To n) b(n) = a(i, 2): n = n + 1 End If Next i WorkMan = Join(b, ";" & Chr(1)) End Function