Sub IsDoc() 'проверка наличия, которые можно обработать
Dim iPath, iPathA, iFName As String
iPath = "E:\Downloads\Docs\"
iFName = Dir(iPath & "*.doc")
Do While iFName <> ""
If InStr(iFName, "+") Then GoTo Nnn 'т.е. если с плюсиком,
'то уже ничего не надо делать с этим доком, а искать дальше
If InStr(LCase(iFName), "банки") Then Range("A4").Font.ColorIndex = 2: Range("A4").Select: GoTo Calll
If InStr(LCase(iFName), "машинос") Then Range("A7").Font.ColorIndex = 2: Range("A7").Select: GoTo Calll
If InStr(LCase(iFName), "транспорт") Then Range("A15").Font.ColorIndex = 2: Range("A15").Select: GoTo Calll
If InStr(LCase(iFName), "экономика") Then Range("A16").Font.ColorIndex = 2: Range("A16").Select: GoTo Calll
If InStr(LCase(iFName), "автопром") Then Range("A32").Font.ColorIndex = 2: Range("A32").Select: GoTo Calll
If InStr(UCase(iFName), "АПК") Then Range("A33").Font.ColorIndex = 2: Range("A33").Select: GoTo Calll
If InStr(LCase(iFName), "дорстро") Then Range("A35").Font.ColorIndex = 2: Range("A35").Select: GoTo Calll
If InStr(LCase(iFName), "метро") Then Range("A36").Font.ColorIndex = 2: Range("A36").Select: GoTo Calll
Calll:
Call DocVWord: Exit Sub
Nnn:
iFName$ = Dir
Loop
End Sub
Как задать приоритет поиска?
В папке происходит поиск документов без "плюсика" в названии (т.е. тех,которые еще не обработаны). Но у этих документов желателен приоритет в обработке.
Вспомогательная инфа: при поиске по названию первого же найденного документа (без плюсика) курсор в екселевской таблице выставляется на соответствующую ячейку (ячейки coпоставлены названиям документов). Вот как задать приоритет для обработки, если известно, что эти приоритетные документы находятся в ячейках с А3 по А16, а неприоритетным докам соответствуют бо'льшие номера ячеек.
Т.е. как подписать в процедуру доп. проверку номера по такому правилу:
ищи документы (которые без плюсика)
Если таковой нашелся, то если
номер его ячейки больше А16, то искать дальше, чтобы номер был меньше. Если таковых больше нет, обработать этот.
Вот как выглядит Sub на данный момент (сокращено и опять же ненавистный Goto :o - на данном этапе познаний мне так попроще):
Код:
Напишите, что надо сделать. Желательно одним-двумя предложениями.
Надо документы, у которых номер ячейки меньше например 20 (т.е. в списке находятся выше двадцатого ряда), открывать в Ворде в первую очередь. По алфавиту же сначала будет найден документ с названием "Авто", а уж потом "Банки". А обработать надо сначала "Банки" (и т.д.).