В этой теме сложно быть конкретным и кратким, но я стараюсь изо всех сил:
Допустим, у нас есть папка в определенном месте, где мы получаем файлы с именами, например, давайте использовать x1; х2; х3 и т.д.
Затем у нас есть файл excel, в котором у нас есть числа в столбце. бывший. 1; 2; 3; и т.п.
Я написал скрипт, который позволяет щелкать эти числа, чтобы появилось окно проводника для поиска определенного числа в папке.
Например, мы нажимаем цифру «2», и появляется окно проводника с результатом поиска «2x» в этой конкретной папке.
Скрипт выглядит так:
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
Dim c As String
Dim backup As String
c = Target.Range
backup = "~%3D" & Left(c, 7)
If Left(c, 1) = "C" And Len(c) > 7 And Right(c, 1) = "$" Then 'this part doesn't really matter
RetVal = Shell("c:\Windows\explorer.exe ""search-ms:displayname=Search%20Results&crumb=System.Generic.String%3A" & backup & "%20kind%3A%3Dfolder&crumb=location:%5C%5Cserver%5Cbackup$", vbNormalFocus)
End If
End Sub
Интересно, можно ли как-то узнать, есть ли файл, соответствующий поиску, или его нет. Я имею в виду, что, например, если я нажму на цифру «2» в Excel, откроется проводник, и он покажет файлы, имена которых содержат «x2», или покажет «Нет элементов, соответствующих вашему поиску. "
Я хотел бы вернуть это как-то, чтобы преуспеть, если у нас есть результат поиска или у нас его нет. Даже логическое значение помогло бы мне.
Я не могу использовать обычную проверку, например:
If Dir(folder) = "" Then
потому что у нас может быть несколько файлов с одинаковым именем, и их имя содержит дату их создания. бывший. x1_02_04_2015, а также x1_05_11_2014.
Заранее спасибо!