перечислить все файлы в каталоге, где дата создания файла соответствует неделе нет? УВА

Я пытаюсь перечислить все файлы в каталоге, где дата создания файлов подпадает под соответствующий номер недели для этой даты?

Например:

В ячейке H7 у меня есть номер недели 50.

В моем каталоге у меня есть следующие файлы:

A.pdf - Created 15/12/2016 B.pdf - Created 15/12/2016 C.pdf - Created 01/12/2016 

Только файлы, созданные в 15 декабря, должны быть перечислены, так как они относятся к неделе 50. По какой-то причине мой код ничего не делает и не перечисляет файлы или не создает ошибку.

 Sub Example1() Dim objFSO As Object Dim objFolder As Object Dim objFile As Object Dim i As Integer 'Create an instance of the FileSystemObject Set objFSO = CreateObject("Scripting.FileSystemObject") 'Get the folder object If Dir("G:\STOCK\(3) Promotions\Allocations\" & Range("N7").Value & "\" & Range("B7").Value & "\WK " & Range("H7").Value & "\" & client, vbDirectory) <> "" Then Set objFolder = objFSO.GetFolder("G:\STOCK\(3) Promotions\Allocations\" & Range("N7").Value & "\" & Range("B7").Value & "\WK " & Range("H7").Value & "\") i = 1 'loops through each file in the directory and prints their names and path For Each objFile In objFolder.Files If Application.WeekNum(objFile.DateCreated) Like Range("H7").Value Then 'print file PG Cells(i + 12, 1) = Range("N7").Value 'print file Month Cells(i + 12, 5) = Range("H7").Value 'print file Year Cells(i + 12, 9) = Range("B7").Value 'print file name Cells(i + 12, 13) = objFile.Name 'print file path Cells(i + 12, 18) = "=hyperlink(""" & objFile.Path & """)" i = i + 1 End If Next objFile Else MsgBox "No Results Were Found." End If End Sub 

Может кто-нибудь покажет мне, где я иду не так?

Скорее всего, вы используете конвенцию ISO для weeknumbers, в которой 1-я неделя – первая неделя года, содержащая четыре дня, и недели начинаются в понедельник.

Поэтому вы хотите заменить строку сравнения Application.Weeknumber:

 If DatePart("ww", objFile.DateCreated, vbMonday, vbFirstFourDays) = ... 

Если вы используете другое соглашение для вычисления номера недели, вы должны включить его в аргументы DatePart .

Interesting Posts

Как выполнить нечеткое совпадение с надстройкой Excel с упором на конкретное ключевое слово

Excel – возвращаемые конкретные значения из нескольких листов

Excel VBA – использование переменной для установки функции поля данных сводной таблицы

Невозможно связать с блокирующим портом 7054 в течение 45000 мс

Запись дат в файлах csv, некоторые выводятся как ######

Значение ячейки электронной почты Excel VBA

Формула массива для поиска второго по величине номера

Есть ли способ узнать, используется ли ячейка в другом месте в Excel 2003

нарушать внешние ссылки, не работающие при использовании непосредственно после создания файла

Как передать текст строки динамического диапазона в запрос SQL запроса IN в EXCEL VBA

Как ссылаться на имя кнопки, чтобы VBA знал, какие столбцы скрывать

Синхронизировать транзакции Exact Online GL с ошибкой Invantive Control for Excel: «Вы пытаетесь перемещать ячейки внутри таблицы на листе»

Функция AVERAGEIF по подстановочному имени выбранной электронной таблицы

ScreenUpdating Office-js taskpane

DAX: минимальное значение для семьи

Давайте будем гением компьютера.