У меня есть файл excel, который первоначально импортирует данные о запасах из нашей облачной бухгалтерской программы через веб-запрос .iqy.
Заголовки столбцов:
A1= Quantity B1= Item C1= Description D1= Bin Code
Теперь я создал макрос, который;
Ссылка на данные
Range("A1").QueryTable.Refresh False
Удалить все нулевые акции
Dim intRow
Dim intLastRow
intLastRow = Range("A65536").End(xlUp).Row
For intRow = intLastRow To 1 Step -1
Rows(intRow).Select
If Cells(intRow, 1).Value = 0 Or Cells(intRow, 1) = "" Then
Cells(intRow, 1).Select
Selection.EntireRow.Delete
End If
Next intRow
Автосортировка по бин-коду
Range("A1:D1").Select
Selection.AutoFilter
Range("A2").Select
Range("A1:D1668").Sort Key1:=Range("D1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Сохранить основной список
Dim sFileName As String, sPath As String
sPath = "C:\stock\ms\Master List "
sFileName = Format(Now(), "dd'mm'yy")
ActiveWorkbook.SaveAs (sPath & sFileName)
Теперь это хитрый бит,
Необходимо проверять не менее 30 предметов в день, однако корзина не может быть неполной! Таким образом, после выбора 30 элементов сценарий должен проверить, находится ли следующий элемент в той же корзине, что и 30-й элемент, и включить его в извлечение. Допустим, элемент 30 находится в ячейке 10A2, а также элементы 31, 32, 33, 34, поэтому все 34 элемента (строки) необходимо извлечь в новую рабочую книгу и сохранить.
Этот процесс должен начинаться с образца предыдущих дней, поэтому механика должна выглядеть следующим образом:
посмотрите в c \ stock \ sl \ Sample List -1 dd'mm'yy примерный список за -1 день, посмотрите на номер корзины последнего элемента, скажем 10A1,
взять номер корзины следующих строк, 10A2,
из первого ряда, который имеет 10A2, выберите 30 рядов,
Продолжить, пока не изменится номер корзины.
сохранить этот файл как образец списка dd'mm'yy в c \ stock \ sl \
список образцов электронной почты dd'mm'yy на NNN@NNN.com
Это должно быть в состоянии повторить. Также в субботу и воскресенье компания не работает, поэтому по понедельникам она должна оглядываться на пятницу и т. Д., Также с учетом государственных праздников.
Любая помощь с этим может быть спасением? Я не против, если вы хотите изменить имена файлов, чтобы решить эту проблему с праздниками. Однако где-то для файлов должна быть указана временная метка.