У меня есть ряд повествовательных описаний, мне нужно, чтобы автоматически классифицировать в Excel:VBA: Несколько ключевых слов ВПР
Description Category
I updated the o.s.
I installed the o.s.
I cleaned valve a
I cleaned valve b
I installed valve a
Today the o.s. was updated
У меня есть еще один лист с ключевыми словами и категория ключевые слова, связанные с:
Keyword 1 Keyword 2 Keyword 3 Category
cleaned valve a A
installed valve a B
updated os C
installed os D
Мой код до сих пор можно найти только одно ключевое слово в то время, и, следовательно, будет сообщать неверные ответы, потому что некоторые ключевые слова используются в нескольких повествований:
Public Function Test21(nar As Range, ky As Range) As String
Dim sTmp As String, vWrd As Variant, vWrds As Variant
'Splits Fsr Narrative into individual words so it can be searched for keywords'
vWrds = Split(nar)
For Each vWrd In vWrds
If Not IsError(Application.VLookup(vWrd, ky, 3, False)) Then
sTmp = Application.VLookup(vWrd, ky, 3, False)
Exit For
End If
Next vWrd
Test21 = sTmp
End Function
Я видел такие алгоритмы, как this, но я чувствую, что моя цель может быть проще осуществить, поскольку все повествования относительно просты.
Спасибо за чтение!
'vWrds = Split (NAR)' вам нужен разделитель для 'split'. – findwindow
, в частности, на основе вашего примера вам нужно разграничить 'nar' на' (пробел) '...' vWrds = Split (nar, "") ' –