Что-то самостоятельно не могу дойти до нужного решения. Помогите, пожалуйста.
У меня есть две ячейки. В каждой из них есть ряд целых не повторяющихся цифровых значений (от 1 до 20), отделённых запятой (можно разделять точкой с запятой, если это принципиально для решения). Мне с ними нужно сделать два действия. Посчитать, сколько в этих ячейках цифр, а потом посчитать, сколько совпадений цифр между двумя ячейками.
К примеру:
1. Мне нужно посчитать, сколько цифр находится в ячейке А1 (в данном случае должно получиться 7 2. Сравнить ячейки А1 и Б1 и узнать, сколько там совпадений (в нашем случае 2 совпадения)
Если есть возможность осуществить подобное, подскажите, пожалуйста, как. Я уже всё что знала, перепробовала.
Несложно сделать с помощью UDF (2 штуки нужно написать, ну или одну массивную), но Вы не сказали какое решение нужно. Может спецы стандартными сделают - первую задачу точно можно стандартной сделать по этому примеру.
Мне не важно, как это будет сделано. Мне для работы нужен только результат. Из-за размера массива вручную считать не представляется возможным. Но вот что такое UDF я не знаю, поэтому не уверена, что даже готовое решение будет мне полезно
Hugo, да-да, так всё работает) Видимо, мой эксель как и я - понимает только по-русски. А на счёт подстраховки - вещь крайне полезная, хотя автоматизация заполнения таблицы не даёт появиться лишку, но мало ли.
Hugo, извините, не заметил, что Вы дали такой же ответ. Chesse, вот такая UDF, попробуйте
Код
Function Povtor(ByVal S1 As String, ByVal S2 As String)
Dim Arr
Dim I As Integer
Dim Col1 As Collection
Set Col1 = New Collection
Arr = Split(Replace(S1, " ", ""), ",")
For I = 0 To UBound(Arr)
Col1.Add (Arr(I))
Next I
For I = 1 To Col1.Count
If InStr(Replace(S2, " ", ""), "," & Col1.Item(I) & ",") <> 0 Then Povtor = Povtor + 1
Next I
End Function
P.S. у меня какой-то глюк: в коллекцию добавляется 2 одинаковых элемента (файл прикрепил). Или я что перепутал на ночь глядя?
МВТ, ваша UDF сбоит и отображает не корректно. Если вы в вашем файле продолжите функцию вниз, то увидите, что в других строках количество пар не совпадает.
В последней строке количество совпадающих пар должно быть 3 (1, 8, 20), а считается всего одна. А вот в чём тут проблема, я определить не могу, так как в вашем коде почти ничего не поняла)