Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Как улучшить(усложнить) поиск Добавлено: 29.05.07 11:05  

Автор вопроса:  Alex

Дело в том , что берётся для поиска например это:
С-2384-Н/С-2818-Н Гарнитур д/мальчика 110,116-60

А там где ищет вот так:
С-2384-Н/С-2818-Н Гарнитур д/мальч. 110,116-60
И из-за этого половина данных не заполняется цифрами
Помогите как усложнить поиск из за этих сокращений в названии.Или какой нибудь макрос дополнительный по добавлению отрезанных букв.Помогите пожалуйста решить эту головоломку.Вся прога в теме:Помогите найти ошибку в проге Type mismatch


'заполнение колонки "отпускная"
    ks = ceni.Cells(9, 2).CurrentRegion.Rows.Count
    ad = LTrim(Str(ks + 8))
    For n = 4 To i + 1
        nam = itogi.Cells(n, 1)
        Set C = ceni.Range("C9:C" + ad).Find(nam, LookIn:=xlValues)
        If Not C Is Nothing Then
            arow = C.Address(RowAbsolute, ColumnAbsolute) 'номер первой найденной строки в файле цены.xls
   If (ceni.Range(arow).Offset(0, 1) <> "-") Then
 'itogi.Cells(n, 3) = itogi.Cells(n, 2) * ceni.Range(arow).Offset(0, 1) 'отпускные
 'itogi.Cells(n, 4) = itogi.Cells(n, 2) * ceni.Range(arow).Offset(0, 3) 'отпускные
  'itogi.Cells(n, 3) = Val(itogi.Cells(n, 2)) * Val(ceni.Range(arow).Offset(0, 1))
itogi.Cells(n, 3) = Val(Replace(itogi.Cells(n, 2), ",", ".")) * Val(Replace(ceni.Range(arow).Offset(0, 1), ",", "."))

            Else
'MsgBox ("нет цены на " + nam + " строка: " + Str(n))
            End If
            'Else
'MsgBox ("нет какой-то из цен на " + nam + " строка: " + Str(n))
        End If
    Next n



Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #1
Добавлено: 29.05.07 11:27
Обьясни толком, что значит
Дело в том , что берётся для поиска например это:
С-2384-Н/С-2818-Н Гарнитур д/мальчика 110,116-60

Где ето, и как это и, вообще, что это? :)

Ответить

Номер ответа: 2
Автор ответа:
 Alex



Вопросов: 2
Ответов: 5
 Профиль | | #2 Добавлено: 29.05.07 11:47
ответ послал по почте

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 29.05.07 11:47
Думаю стоит составлять процент схожести двух строк. Берёш то что вбили в поиск, и то что в ячейки, и определяешь насколько строки похожи в процентном соотношении. Задача не сложная, много готовых примеров.

Ответить

Номер ответа: 4
Автор ответа:
 Alex



Вопросов: 2
Ответов: 5
 Профиль | | #4 Добавлено: 29.05.07 13:22
Где эти примеры могут быть ,и как это в процентном соотношении? макрос по поиску с учётом процента схожести это отличная идея,но я уже час капаю ,где это взять?

Ответить

Номер ответа: 5
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #5 Добавлено: 29.05.07 13:40
например "а" похоже на "б" на 0% (иногда на чуть больше нуля, т.к. обе являюццо буквами.

а вот "Brand" похоже на "Sharp" уже эдак на 30%, ибо есть похожие буквы, а некоторые на своих местах остались

аналогично "слова" похоже на "слово" где-то на 80%

Ответить

Номер ответа: 6
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #6
Добавлено: 29.05.07 13:47
Функция Левенштейна расстояния между строками - погугли.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам