2015-07-06 3 views
0

Я пытаюсь сделать ряд уникальных значений в Excel из столбца конкатенированных значений, но каждый раз, когда я пытаюсь, я получаю #Name error. Что я делаю не так? Я использую эту формулу: =listUnique(A$1:A$102916)Объединить значения в уникальные значения

Да, у меня действительно есть 102,916 строк данных.

+1

В каком модуле указан 'listUnique', и это' Public'? –

+0

Я не уверен, что вы подразумеваете под модулем ... Я новичок в Excel, поэтому я все еще изучаю язык. Прости. –

+0

Excel поставляется с рядом стандартных функций, имена которых обычно записываются в верхнем регистре; 'listUnique' не является одним из них. Он также поддерживает пользовательские функции, написанные в VBA, которые организованы в модули внутри проектов в редакторе VBA, отдельное окно, к которому обращаются Alt-F11 или пункты меню. Каждая книга содержит как минимум два предопределенных модуля класса: по одному для каждого листа и один под названием «ThisWorkbook». –

ответ

1

Вот легкий путь вы можете удалить дубликаты из 102,916 строк у вас есть в вашей A колонки:

= IF(COUNTIF(A$1:A1, A1)=1, A1, "") 

Вставить эту формулу в ячейку B1, а затем скопируйте весь путь грести 102,916. У вас останутся только уникальные значения. Затем вы можете скопировать эти уникальные значения и вставить их в другое место, если вам нужно. FYI Я проверил, что эта формула работает с конкатенированными значениями.

+1

Спасибо Тиму! Это помогло. –

+0

Кто ответил на ваш вопрос? –

0

Альтернативой может быть использование функциональности REMOVE DUPLICATES в VBA.

код будет выглядеть примерно так это для вас:

Columns("A:A").Select ' select column A 
ActiveSheet.Range("$A$1:$A$102916").RemoveDuplicates Columns:=1, Header:=xlYes ' for the active range, remove the duplicates; only 1 column selected; there is a header 

Вы можете скопировать данные в другой столбец и сделать это таким образом, если вы хотите, чтобы избежать потери конкатенации.

+0

Спасибо Клаурике. Я буду помнить об этом в следующий раз. –