Работаю с большим объемом однотипных данных. Стоит задача, чтобы к каждому уникальному значению присвоить 2 параметра.
Частично задачу реализовал, но есть 2 проблемы, с которыми самостоятельно справиться мне не под силу (((
1. Нашел в сети макрос, который вычленяет уникальные значения и выводит их в отдельный столбец. Работает вроде как исправно, но при большом объеме данных перегружает процессор i7 вешает комп ((( Буду признателен, если кто-нибудь предложит более оптимизированную альтернативу ему.
Скрытый текст
Код
Function listUnique(rng As Range) As Variant
Dim val As String
Dim elements() As String
Dim elementSize As Integer
Dim newElement As Boolean
Dim i As Integer
Dim distance As Integer
Dim allocationChunk As Integer
Dim uniqueSize As Integer
Dim r As Long
Dim lLastRow As Long
lLastRow = rng.End(xlDown).Row
elementSize = 1
unqueSize = 0
distance = Range(Application.Caller.Address).Row - rng.Row
If distance <> 0 Then
If Cells(Range(Application.Caller.Address).Row - 1, Range(Application.Caller.Address).Column).Value = "" Then
listUnique = ""
Exit Function
End If
End If
For r = 1 To lLastRow
val = rng.Cells(r)
If val <> "" Then
newElement = True
For i = 1 To elementSize - 1 Step 1
If elements(i - 1) = val Then
newElement = False
Exit For
End If
Next i
If newElement Then
uniqueSize = uniqueSize + 1
If uniqueSize >= elementSize Then
elementSize = elementSize * 2
ReDim Preserve elements(elementSize - 1)
End If
elements(uniqueSize - 1) = val
End If
End If
Next
If distance < uniqueSize Then
listUnique = elements(distance)
Else
listUnique = ""
End If
End Function
2. Формулой реализована подстановка параметров к каждому уникальному значению. С решением помогли тут. Это работает. Но когда пытаюсь аналогичным способом подставить данные - выходит #ССЫЛКА!.
И наверное 3-я проблема, которая плавающая, иногда ячейка E3 оказывается пустой, хотя в E2, E4 и далее есть данные. Не могу сейчас получить пустоту, но пару раз проскакивала. Грешу на макрос или затуп компа.
Прикрепляю пример моего файла https://yadi.sk/d/p_kZ1x6v2CxNHg. Логика работы такая, столбец А содержит данные, столбец E - только уникальные из столбца А. Столбцы F и G -параметры, которые подставляются в столбцы B-C на основе уникальных значений. Задача, связать столбцы E и K, для подстановки параметров из словаря.
Благодарю.
Много букв, наверное ничего не понятно написал, но как смог - так и объяснил свою проблему.
Доброго времени суток. Либо лыжи не едут, либо пора в отпуск. Никак не могу победить стоящую задачу.
Есть список со значениями (столбец А). Формулой вытаскиваю из него только уникальные значения (Столбец I). Задача состоит в том, чтобы рядом с каждым уникальным значением я прописал 2 параметра и они автоматически передались в основной список (Столбцы В и С).
Наверное непонятно объяснил, поэтому прикрепляю пример, на отдельный лист вынес, какой результат хочу получить в итоге.
Доброго времени суток. Вторые сутки пытаюсь нагуглить подобный функционал, но пока безуспешно. Вдруг у кого-то есть что-то подобное.
Суть задачи, есть 2 страницы, одна с исходными данными, вторая со словариком. Макрос должен найти на странице точные совпадения со словами из словаря (столбец А) и в случае нахождения совпадения заменить найденное слово на соответствующее (столбец B). В процессе "словарь" будет расширяться. Будет использоваться, как кириллица, так и латиница, если это конечно важно )))
Заранее благодарю всех, кто не прошел мимо и помог в реализации задуманного.
Доброго времени суток. Подскажите пожалуйста, как сделать проверку на наличие спец. символа с строке, и если он есть - ничего не трогать, если нет - поставить знак плюса перед каждым словом.
Пример:
[мама мыла раму] -> [мама мыла раму] - есть спец символ квадратная скобка. Если она есть, то данную строку (ячейку) не трогаем маша ела кашу -> +маша +ела +кашу - в строке нет спецсимвола в виде квадратной скобки, следовательно ставим перед каждым словом плюсик
В данный момент у меня плюсы подставляет вот такая формула:
День добрый. Есть файл поручений, где за каждым сотрудником записывается, какое он выполнил. Мне необходимо автоматом посчитать, количество выполненных поручений. В арсенале имею только один столбец в таблице.