Новости:

Подпишитесь на рассылку новых сообщений форума через службу рассылок: Subscribe.ru

Главное меню

похожие слова

Автор Paha_L, 14.08.2011, 16:50

« назад - далее »

Paha_L

apparatus, appliance, assembled, background, ball, big, build, circle, close-up, construction, device, engineering, exciting, experiment, beauty, beautiful, parent, parental
есть ключевые в ячейке, надо в соседней ячейке вывести похожие пары слов.
n,m - количество букв сравниваемых слов,  0<x<[n/2]-1, 0<y<m-n
если n<m и n-x=m-y , где равно означает буквы совпадают на своих порядковых местах, то выводим пару в соседнюю ячейку


GWolf

Добрый день!

1) Может быть Вы пример прикрепите: Что дано и как это должно в результате выглядеть.

2) Уважаемый Paha_L, смотрю на Ваши посты и немогу отделаться от мысли, что это все элементы одного проекта. Так может быть не стоит дробить, а сделать одну тему? Да и для реализаций на VBA есть соответствующий раздел, если Вы не заметили.

P.S. Так же неплохо было бы отвечать авторам решений на тему: - Да мне Ваше решение подходит. Ну это я так, из чувства небольшого уважения к авторам.  :o
Путей к вершине - множество. Этот один из многих!

Paha_L

#2
прикладываю весь проект
я нажимаю оказать и пишу за что, вроде никого не пропустил


а еще можно при наведении на ячейку, чтобы всплывало содержание ячейки, как примечание?
А вот это я не понял. Неплохо бы показать на примерчике: Как должно быть.

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

GWolf

Цитата: Paha_L от 14.08.2011, 18:10
прикладываю весь проект
я нажимаю оказать и пишу за что, вроде никого не пропустил

Вот блин, а про рейтинг я как то не подумал! Спапсибо!

Цитировать
а еще можно при наведении на ячейку, чтобы всплывало содержание ячейки, как примечание?
А вот это я не понял. Неплохо бы показать на примерчике: Как должно быть.

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

Могу предложить решение через UserForm и по ПКМ (правый клик мышки). Поскольку ShowModal=False, Вы можете вызвав UserForm по ПКМ, скролить страницу как угодно.

И немного подправил вот эту процедуру:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   If Target.Count > 1 Then Exit Sub
   If Intersect(Target, [F15:F10000]) Is Nothing Then
       If Intersect(Target, [I1:N13]) Is Nothing Then
           [F15:F10000].Interior.Color = xlNone
       End If
       Exit Sub
   End If
   [F15:F10000].Interior.Color = xlNone
   Set r = Target: r.Interior.ColorIndex = 36
End Sub
Путей к вершине - множество. Этот один из многих!

Paha_L

я так понял, это отвечает за всплывающее содержимое
Case 7 '- G
            If Target.Row < 15 Then Exit Sub
            If Target.Text = "" Then Exit Sub
           
            Cancel = True
           
            With usf_Komment
                .Caption = "Содержимое ячейки " & Target.Address
                .lbl_Komm = Target.Text

                .Show
            End With
        Case Else

работает
еще я добавил, подкрашивание не пустых ячеек справа, чтобы видно было какие заполнены

GWolf

Цитата: Paha_L от 14.08.2011, 23:43
я так понял, это отвечает за всплывающее содержимое
Case 7 '- G
            If Target.Row < 15 Then Exit Sub
            If Target.Text = "" Then Exit Sub
           
            Cancel = True
           
            With usf_Komment
                .Caption = "Содержимое ячейки " & Target.Address
                .lbl_Komm = Target.Text

                .Show
            End With
        Case Else

Абсолютно верно Вы поняли. Замечу еще, что конструкция Select Case ... End Select применена для того что бы дать Вам возможность использовать реакцию на событие листа BeforeRightClick в разных столбцах по разному. Сравните Case 1 и Case 7.

Думаю, вот так будет понятнее:
        Case 7 '- G
            If Target.Row < 15 Then Exit Sub '- работать ТОЛЬКО в строках ниже 14-ой (чтобы нетрогать шапку)
            If Target.Text = "" Then Exit Sub '- если ячейка пуста, то прекратить выполнение кода процедуры
           
            Cancel = True '- подавляем реакцию на событие "по умолчанию"
           
            With usf_Komment '- для UserForm с именем usf_Komment
                'предварительно устанавливаем значения параметров:
                .Caption = "Содержимое ячейки " & Target.Address '- в заголовок окна формы вписываем адрес ячейки, откуда берем выводимый текст.
                .lbl_Komm = Target.Text '- в текстовое поле (lbl_Komm) формы пишем содержимое ячейки.

                .Show '- запускаем форму на исполнение
            End With


Цитироватьеще я добавил, подкрашивание не пустых ячеек справа, чтобы видно было какие заполнены
Ваше право. Вы автор проекта.
Путей к вершине - множество. Этот один из многих!

Paha_L

ну а тема самого топика остается открытой

GWolf

Цитата: Paha_L от 15.08.2011, 09:40
ну а тема самого топика остается открытой

А поподробнее, да с примерчиком ...  ;)
Путей к вершине - множество. Этот один из многих!

Paha_L

ну я не знаю как подробнее, вставить эту последовательность в эксель?
apparatus, appliance, assembled, background, ball, big, build, circle, close-up, construction, device, engineering, exciting, experiment, beauty, beautiful, parent, parental

отсюда функция должна вытащить две пары
beauty, beautiful, parent, parental

точнее лучше, короткие слова должна оставить в ячейке, а длинные вывести из пар в соседнюю ячейку
beautiful, parental

Paha_L

#9
задача упростилась
слово из n букв меньше/равно  слова из m букв.
слова похожи, если хотя бы n/2+1 первых букв одного слова совпадают с первыми буквами другого слова

Serge 007

Цитата: Paha_L от 16.08.2011, 11:25
задача упростилась
слово из n букв меньше/равно  слова из m букв.
слова похожи, если хотя бы n/2+1 первых букв одного слова совпадают с первыми буквами другого слова
Формулой.
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

Paha_L

хорошая формула. как бы теперь ее для целой последовательности слов использовать?

Serge 007

Цитата: Paha_L от 16.08.2011, 23:22
хорошая формула. как бы теперь ее для целой последовательности слов использовать?
А нарисуйте в файлике xls как у Вас слова располагаются и вручную итог проставьте.
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

Paha_L

#13
вот, слова и итог, который нужно получить, и удаленные слова

Serge 007

Цитата: Paha_L от 16.08.2011, 23:35
вот, слова и итог, который нужно получить
Не, это формулами если и можно, то заколебёшься делать :(
И скорее всего упрёмся в ограничения по вложенности функций и кол-ву знаков формулы (если у Вас 2003).
Excel построен на простом понимании - в одной ячейке - одно значение. У Вас совсем не так...

Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390