Удалите Duplicate ROWS и добавьте keep 1 Rows в файл .CSV - PullRequest
0 голосов
/ 11 февраля 2020

Ищем ваше экспертное мнение / предложение для сценария VBA для файла .CSV, который может выполнить следующие шаги. Я пробовал макросы, но они не работают должным образом.

.CSV Входной файл
.CSV Input File

  1. УДАЛИТЬ все РЯДЫ, которые содержат "Категория продукта" = HN "
  2. Если несколько строк для одного номера продукта, УДАЛИТЬ несколько повторяющихся строк и оставить только одну строку этого номера продукта и добавить общее количество в столбце Qunatity для этого продукта. Например, для Продукта № 107 у нас есть всего 3 строки, поэтому нам нужно удалить 2 другие строки и оставить одну строку как есть и в столбце количества = 3 "
  3. УДАЛИТЬ 1 дополнительный столбец" Отображаемое имя "в начале .
  4. ДОБАВЬТЕ 3 ПУСТЫХ СТРОКИ в ТОП.
  5. , поэтому конечный результат должен быть таким, как указано ниже.

.CSV Выходной файл
.CSV Output File

Sub DeleteProductCategoryHN()
Dim lastrow As Long
lastrow = Cells(Rows.Count, "A").End(xlUp).Row
For X = lastrow To 1 Step -1
    For Y = 1 To lastrow    
        If Cells(X, 5).Value = "HN" Then
            Rows(X).EntireRow.Delete
            Exit For
        End If
    Next Y
Next X
End Sub
_____________________________________________________
Sub DeleteMultipleRows()
Dim lastrow As Long
lastrow = Cells(Rows.Count, "A").End(xlUp).Row
For X = lastrow To 1 Step -1
    For Y = 1 To lastrow   
        If Cells(X, 2).Value = Cells(Y, 2).Value And X > Y Then
            Cells(Y, 3).Value = Cells(X, 3).Value + Cells(Y, 3).Value
            Rows(X).EntireRow.Delete
            Exit For
        End If
    Next Y
Next X
End Sub

Sub DeleteFirstColumn()
        Cells(1, 1).EntireColumn.Delete
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...