Как посчитать уникальные значения в строках?

Программирование на Visual Basic for Applications
Bercut
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 12.09.2006 (Вт) 9:29

Как посчитать уникальные значения в строках?

Сообщение Bercut » 28.09.2006 (Чт) 16:41

Уважаемые кодеры, нужна Ваша помощь!
Суть проблемы такова

У меня в excele есть определенный список, например

яблоко
апельсин
яблоко
апельсин
груша

мне надо из этого получить запись такого вида

яблоко 2
апельсин 2
груша 1


Подскажите как можно это воплотить

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 28.09.2006 (Чт) 17:03

Сводная таблица тебе поможет.
Lasciate ogni speranza, voi ch'entrate.

Bercut
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 12.09.2006 (Вт) 9:29

Сообщение Bercut » 28.09.2006 (Чт) 17:12

alibek писал(а):Сводная таблица тебе поможет.

может я не совсем понял, но кажется сводная таблица мне не поможет...
мне бы средствами VBA

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 28.09.2006 (Чт) 17:19

Именно сводная таблица тебе и поможет.
Но если так хочется средствами VBA, то пожалуйста.
Сортируешь список, ищешь число повторений (для сортированного списка это просто), затем выводишь результаты.
Lasciate ogni speranza, voi ch'entrate.

Bercut
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 12.09.2006 (Вт) 9:29

Сообщение Bercut » 28.09.2006 (Чт) 17:21

а как потом удалить все лишнее?
я имею в виду если у меня 10 полей со словом яблоко, как оставить только одно?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 28.09.2006 (Чт) 17:23

Удалить все и создать из полученных результатов. Это будет проще всего.
Lasciate ogni speranza, voi ch'entrate.

Bercut
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 12.09.2006 (Вт) 9:29

Сообщение Bercut » 28.09.2006 (Чт) 17:26

спасибо, суть понял...
а вот если бы Вы еще и пример кода привели, я бы прыгал от радости :)

Bercut
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 12.09.2006 (Вт) 9:29

Сообщение Bercut » 28.09.2006 (Чт) 18:21

alibek писал(а):Именно сводная таблица тебе и поможет.
Но если так хочется средствами VBA, то пожалуйста.
Сортируешь список, ищешь число повторений (для сортированного списка это просто), затем выводишь результаты.


как-то не очень просто, ничего не получается

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 28.09.2006 (Чт) 20:52

Пример кода по созданию таки сводной таблицы спасёт отца русской демократии?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 28.09.2006 (Чт) 21:10

Код: Выделить всё
Sub Test()
    Dim pt As PivotTable, rng As Range
    With ActiveSheet
        Set rngTab = .[A1:A6]
        Set rngDest = .[A10]
        Set pt = ActiveSheet.PivotTableWizard(SourceType:=xlDatabase, _
           SourceData:=rngTab, TableDestination:=rngDest)
        With pt
            .AddFields RowFields:="Список"
            .PivotFields("Список").Orientation = xlDataField
        End With
    End With
End Sub
Привет,
KL

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 29.09.2006 (Пт) 10:13

Может, обойтись функцией СУММЕСЛИ, а? :roll:
Быть... или не быть. Вот. В чём вопрос?

Woodsman
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 29.09.2006 (Пт) 13:53
Откуда: Россия, г. Псков

Re: Как посчитать уникальные значения в строках?

Сообщение Woodsman » 29.09.2006 (Пт) 14:01

Bercut писал(а):Уважаемые кодеры, нужна Ваша помощь!
Суть проблемы такова

У меня в excele есть определенный список, например

яблоко
апельсин
яблоко
апельсин
груша

мне надо из этого получить запись такого вида

яблоко 2
апельсин 2
груша 1


Подскажите как можно это воплотить


судя по условию, то так
=СЧЁТЕСЛИ(D28:S28;"яблоко")
и.т.д.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 63

    TopList