Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2014, 12:03   #11
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

например так:

Код:
sub xyz
  cells(1,1) = uniq(cells(1,1), " ")
end sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 01.04.2014, 12:56   #12
serj_spb
Новичок
Джуниор
 
Регистрация: 01.04.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
например так:

Код:
sub xyz
  cells(1,1) = uniq(cells(1,1), " ")
end sub
Добавил функцию и макрос.
Если применить макрос к одной ячейке ругается на строчку из функции -
Next: Uniq = Right$(s, Len(s) - 2)

...не совсем понял как использовать...можно показать на моем примере в предыдущем посту?
serj_spb вне форума Ответить с цитированием
Старый 01.04.2014, 13:22   #13
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Файл не покажу - но я написал в ячейке так:
Код:
=Uniq(B19," ")
а в B19 слова
qwerty fgh fgh qwerty
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 01.04.2014, 13:45   #14
serj_spb
Новичок
Джуниор
 
Регистрация: 01.04.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Файл не покажу - но я написал в ячейке так:
Код:
=Uniq(B19," ")
а в B19 слова
qwerty fgh fgh qwerty
если использовать такую формулу со своим номером ячейки, говорит, что в формуле ошибка (
serj_spb вне форума Ответить с цитированием
Старый 01.04.2014, 13:56   #15
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Вероятно у Вас разделитель не запятая. Ну это у кого как - в общем случае используйте мастер - не ошибётесь.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 01.04.2014, 14:06   #16
serj_spb
Новичок
Джуниор
 
Регистрация: 01.04.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Вероятно у Вас разделитель не запятая. Ну это у кого как - в общем случае используйте мастер - не ошибётесь.
Может я не правильно объяснил, что мне нужно....
Есть столбец, в каждой ячейке текстовая фраза.
Еще есть одна ячейка(единая для всех фраз), в которой много слов, разделенных пробелами.

Цель: удалить из набора слов те слова, из которых состоит отдельно взятая фраза.
serj_spb вне форума Ответить с цитированием
Старый 01.04.2014, 14:14   #17
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Вот поэтому (чтоб объяснить правильно) обычно и нужно показывать в файле - вот это есть, это нужно.
Судя по этому объяснению, Вам нужно совсем не то, о чём эта тема!

P.S. А тот приложенный позже пример работает, если формулу писать мастером, и в ячейку с нужным форматом и в лист с нужным стилем ссылок:
=Uniq(RC[-2]:RC[-1]," ")
Результат "стул стол кравать диван кровать окно дерево дверь комната"
Но это ведь не то что нужно, так ведь?
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 01.04.2014 в 14:20.
Hugo121 вне форума Ответить с цитированием
Старый 01.04.2014, 14:37   #18
serj_spb
Новичок
Джуниор
 
Регистрация: 01.04.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Вот поэтому (чтоб объяснить правильно) обычно и нужно показывать в файле - вот это есть, это нужно.
Судя по этому объяснению, Вам нужно совсем не то, о чём эта тема!

P.S. А тот приложенный позже пример работает, если формулу писать мастером, и в ячейку с нужным форматом и в лист с нужным стилем ссылок:
=Uniq(RC[-2]:RC[-1]," ")
Результат "стул стол кравать диван кровать окно дерево дверь комната"
Но это ведь не то что нужно, так ведь?
Немного не то. Я думал сделать следующим образом. Формулой сцепить текст из двух ячеек в одну( получается ячейка со словами, разделенными пробелами). А дальше хотел удалить все слова, которые повторяются 2 раза и более.
Может есть идеи как это реализовать ?
serj_spb вне форума Ответить с цитированием
Старый 01.04.2014, 14:43   #19
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Можно и так сделать, а можно и иначе.
Думаю проще именно иначе - перебирать все слова, и те, которых нет в списке "критериев", собирать в строку-результат.
Если я понял что нужно - файла с есть/нужно ведь так и нет пока...

P.S.
Что-то вроде
Код:
Dim dic As Object

Function nodup(s, krit)
    Dim w
    If dic Is Nothing Then
        Set dic = CreateObject("Scripting.Dictionary")
        dic.comparemode = 1
        For Each w In Split(krit)
            dic(w) = 0&
        Next
    End If

    For Each w In Split(s)
        If Not dic.exists(w) Then out = out & " " & w
    Next

    nodup = Mid(out, 2)
End Function

Sub pereinit()
    Set dic = Nothing
    Application.Calculate
End Sub
Только если менять критерии - нужно или переокрывать файл, или отдельной процедурой переинициализировать словарь (Sub pereinit()).
Зато должно быстро работать на большом количистве ячеек (т.к. критерии не нужно каждый раз перезапоминать).
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 01.04.2014 в 15:18.
Hugo121 вне форума Ответить с цитированием
Старый 01.04.2014, 15:03   #20
serj_spb
Новичок
Джуниор
 
Регистрация: 01.04.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Можно и так сделать, а можно и иначе.
Думаю проще именно иначе - перебирать все слова, и те, которых нет в списке "критериев", собирать в строку-результат.
Если я понял что нужно - файла с есть/нужно ведь так и нет пока...
сделал три фразы для примера.
Вложения
Тип файла: zip del.zip (14.0 Кб, 12 просмотров)
serj_spb вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отформатировать часть текста в ячейке eto Microsoft Office Excel 9 03.04.2016 19:33
Сравнение 2 столбцов и удаление повторяющегося из второго столбца ildusfm Microsoft Office Excel 3 07.05.2009 09:09
форматирование текста в ячейке alex_r Microsoft Office Excel 2 30.04.2009 19:12
удаление лишних данных в ячейке mistx Microsoft Office Excel 2 24.02.2009 18:32
Удаление символа в ячейке Flangini Microsoft Office Excel 2 05.05.2008 14:02