Вопрос : Эксел - находите самые близкие слова для выстроенной в ряд верхней части (минирование текста)

Это могло требовать разрешения «хорошо достаточно» или немного шагов в правильное направление, довольно чем серебряная пуля которая разрешит все.  

I am ища примитивная дорога сделать некоторый анализ текста в Эксел (или ем smogло находиться в слове MS - или другое применение если то работало бы также). задача
The как это -- в документе с
1. реакций обзора раскрывать-текста (шнуров текста для каждого рядка).  После подсчитывать полностью words
2. снимая тривиальные слова (, a, и, оно), выстроьте в ряд верхнее results
3. примите верхние результаты (например верхнюю часть 20) и обусловьте которые нетривиальные слова появляются в шнур с им.  Например:  Словом «обслуживанием» будет выстроенное в ряд #5 в слов-подсчитывает.  Когда обслуживание упомянуто, верхние слова упомянутые с им являются следующими:  «больш», «эффективно», «содружественное "

Here один подход, котор я имею данные по новообращенного used.

1. к одностоечному (одно слово в клетку)
2.  Таблица оси пользы для того чтобы подсчитать слова и descending
3. вида использует формулы для того чтобы создать фразы 2-слов и 3-слов (конкатенируйте слова назад совместно от первоначально колонки одиночных слов).
4.  После этого, слова находки верхние и видят что фразы, котор они появляются in.
5. после этого ручно выберите через их и подсчитывают который другие слова смотрят как они обычный не познее 3 или 4 слова цели (?????)

That будет грязное solution.

To суммирует -- я ищу будет дорогой (возможно) маркировать слова цели (верхнюю часть 20 использовать, например).    После этого находите дорогу измерить расстояние между теми словами цели и другими словами в таких же шнурах (в параграфе).  Thoujght iий о преобразовывать слова к перемеююым и после этого делать некоторую математику для того чтобы найти вне перемеююые самое близкое????  

There будет коммерчески средство программирования делает это, но я ищу примитивное разрешение в Эксел -- и шанс попытаться еще некоторые новаторская манипуляция шнура, possibly.
Thanks для давать этому try.
class= " ясное " >
Related: href= " /Software/Office_Productivity/Office_Suites/MS_Office/Excel/Q_26227197.html " title= " TextMiner TextMiner " class= " спички - слова цели к match

Ответ : Эксел - находите самые близкие слова для выстроенной в ряд верхней части (минирование текста)

Попытайтесь прикрепляться и см. если оно помогает.

Workbook имеет 3 листа: «сырцово» «приводит к» и «проигнорируйте»
Наклеите ваши предложения источника как показано в «сырцовый» лист. После этого ударьте «кнопку текста шахты».

Кодий в workbook parses полностью текст в сырцовом листе; zaps все слова зарегистрированные в «проигнорируйте» лист; разделяет о в блок и после этого плюет его вне в «приводит к» лист следующим образом:

1. Он подсчитывает возникновения слов в колонке a
2. В колонках направо главным образом списка слова, котор он дает все слова происходя в пределах слов x вышл и выпрямите главным образом слова

Значение x также установлено в «игнорирует» лист.

Кодий после этого сортирует результаты.

3 подпрограммы -- главная горнорабочая, режим для того чтобы добавить близрасположенные слова, и изготовленный на заказ режим вида для того чтобы общаться с «двойными колонками» задействованный в словах перечисления и их частоте.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
Вариант точный
'написано Нейл Fleming

Sub MineText ()

Тусклый wb как Workbook, wsRaw как рабочий лист, wsResults как рабочий лист, wsIgnore как рабочий лист

Тусклое rSource как ряд, rRow как ряд, rResults как ряд, rMatch как ряд
Тусклое allText как шнур
Тусклое излишнее как шнур
Тусклые слова () как шнур

Тусклое aWord как интежер, aRow как интежер, рядом как интежер, maxCol как интежер

На errortrap ошибки переход

'рабочий лист установки
Установите wb = ActiveWorkbook
Установите wsRaw = wb. Листы («сырцово»)
Установите wsResults = wb. Листы («результаты»)
Установите wsIgnore = wb. Листы («проигнорируйте»)
'установите rSource к  non-пустым рядкам
Установите rSource = ряд (wsRaw.Range («A5»), wsRaw.Range («a5»). Конец (xlDown))
allText = ""
Для каждого rRow в rSource.Rows
allText = allText & ««& rRow.Cells (1, 1).Value
Затем
'добавьте отставая космос:
allText = allText & ««

'uppercase:
allText = UCase (allText)
'примите вне пунктуацию:
allText = заменяет ть (allText, «,», «")
allText = заменяет ть (allText, «; », «")
allText = заменяет ть (allText, «. », «")
allText = заменяет ть (allText, «-», «")

'извлекайте проигнорированные слова, using список от «проигнорируйте» рабочий лист
Для aWord = 2 к wsIgnore.Cells (2, 1).End (xlDown). Рядок
излишне = wsIgnore.Cells (aWord, 1).Value
Пока InStr (allText, ««& излишне &» ") > 0
allText = заменяет ть (allText, ««& излишне &» «,» ")
Wend
Затем

'примите вне двойные космосы:
Пока InStr (allText, «  ") > 0
allText = заменяет ть (allText, «  «,» ")
Wend

'извлекайте космосы водя и отставая:
allText = уравновешивание (allText)

'новообращенный AllText к блоку слов:
Слова = разделили (allText, «")

'ПОЛОЖЕНИЕ ВНЕ ПРИВОДИТ К:
'пустые результаты:

С wsResults
Application.ScreenUpdating = ложно


. Cells.ClearContents
. Cells.ClearFormats
. Ряд («a1», «dd1000»). Interior.Color = RGB (255, 255, 255)
. Активируйте
. Клетки (1, 1) = «отсчет»
. Клетки (1, 2) = «слово»

'введите уникально результаты слова в лист результатов:
aRow = 2
maxCol = 1
Для aWord = 0 к UBound (словам)
'redefine ряд результатов:
Установите rResults =. Ряд (wsResults.Range («b2»). Ряд («b2»). Конец (xlDown))
Установите rMatch = rResults.Find (слова (aWord))

'если слово в списке, отсчете инкремента:, то
    Если не rMatch ничего после этого
    rMatch.Offset (0, -1) = rMatch.Offset (0, -1) + 1
    'в противном случае добавьте к списку:
    Еще
    Установите rMatch = wsResults.Cells (aRow, 2)
    rMatch.Value = слова (aWord)
    rMatch.Offset (0, -1). Значение = 1
    aRow = aRow + 1
    Закончитесь если
    
   
    'расмотрите близрасположенные слова, возникновения отсчета и добавьте к праву главным образом слова:
    'количество расмотренных слов установлен на «игнорирует» лист в «ptrMaxWords» названных клеткой:
    Для рядом = 1 к ряду («ptrMaxWords»). Значение
    'идите ОН назад:
     Если aWord - близрасположенные слова AddNearby >= 0 после этого (aWord - рядом), то. Клетки (rMatch.Row, 1), maxCol
         
    'идите препровождает:
    Если aWord + рядом <> maxCol = rcol maxCol после этого. Колонка + 1 другое maxCol = maxCol
     

Подводная лодка конца

Sub CustomSort (aRange как ряд)
'пары видов клеток вдоль рядка основанного на значении первой клетки в парах:
Тусклое StartCol как интежер, swapCol как интежер, swapValue как интежер
Тусклое swapText как шнур

StartCol = 2
Сделайте
    swapCol = StartCol + 2
    Сделайте
        Если aRange.Cells (1, swapCol) > aRange.Cells (1, StartCol) после этого
        'обмените клетки и следующую клетку вперед (содержащ слово) друг с другом:
        swapValue = aRange.Cells (1, swapCol)
        swapText = aRange.Cells (1, swapCol + 1)
        aRange.Cells (1, swapCol) = aRange.Cells (1, StartCol)
        aRange.Cells (1, swapCol + 1) = aRange.Cells (1, StartCol + 1)
        aRange.Cells (1, StartCol) = swapValue
        aRange.Cells (1, StartCol + 1) = swapText
        Закончитесь если
    swapCol = swapCol + 2
    Не закрепить петлеть до aRange.Cells (1, swapCol) = ""
StartCol = StartCol + 2
Не закрепить петлеть до aRange.Cells (1, StartCol) = ""


Закончите подводную лодку
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us