Страницы: 1
RSS
Сравнить значение с столбцом и удалить значение
 
Здравствуйте. Есть две таблицы, когда в таблице продажи добавляется артикул, что бы он сравнивался с артикулами из таблицы остатки и удалял в остатках размер который введён в продажах
 
winsan, артикулы уникальны в листе остатки?
так?
Код
Sub dd()
Dim i As Double
Dim myvalue As String
ilastrow = Worksheets("Продажи").Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To ilastrow
         myvalue = Worksheets("Продажи").Cells(i, 3)
         Set art = Worksheets("Остатки").Columns(5).Find(myvalue, LookIn:=xlValues)
         If Not art Is Nothing Then
         Worksheets("Остатки").Cells(art.Row, 6) = Worksheets("Остатки").Cells(art.Row, 6) - Worksheets("Продажи").Cells(i, 4)
        End If
    Next i
End Sub
Изменено: Mershik - 28.03.2020 17:16:44
Не бойтесь совершенства. Вам его не достичь.
 
Всё верно, артикулы уникальны. После использования макроса, в размерах меняются значения
 
winsan,
Цитата
winsan написал:
статки и удалял в остатках размер который
а что нужно
?
Не бойтесь совершенства. Вам его не достичь.
 
Нужно чтобы удалялся в остатках только тот размер который продали, а после использования макроса он удаляется и заменяется на другие значения  
 
Ничего не понятно покажите в файле что вот это было вот это стало
так?
Код
Sub dd()
Dim i As Double
Dim myvalue As String
ilastrow = Worksheets("Продажи").Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To ilastrow
         myvalue = Worksheets("Продажи").Cells(i, 3)
         Set art = Worksheets("Остатки").Columns(5).Find(myvalue, LookIn:=xlValues)
         If Not art Is Nothing Then
         Worksheets("Остатки").Cells(art.Row, 6) = Replace(Worksheets("Остатки").Cells(art.Row, 6), Worksheets("Продажи").Cells(i, 4).Value, "")
        End If
    Next i
End Sub
Изменено: Mershik - 28.03.2020 17:41:42
Не бойтесь совершенства. Вам его не достичь.
 
  рисунки удалены, см. правила форума [МОДЕРАТОР]
 
winsan, как макрос работает я знаю, поэтому попросил Вас сделать нормальны пример...в котором показать что было и что должно быть после  
Не бойтесь совершенства. Вам его не достичь.
 
Надо, если размер продали, чтобы он удалился с остатков
 
Вы смотрели #6!?
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
winsan написал:
Надо, если размер продали, чтобы он удалился с остатков
Это и произошло на тех скринах, что Вы приложили. Сделайте пример с цифрами, чтобы понять, что должно произойти.
 
Вот так должно получиться
 
Смысл понятен.

Ваши данные организованы не совсем правильно. При составлении таблиц всегда необходимо соблюдать принцип "одно значение в ячейке", иначе большинство возможностей экселя теряются.

Я приложил файл с чуть измененной структурой таблицы на листе Остатки. На лист Продажи можете добавлять сколько угодно строк. Все решено формулами и вычисляется мгновенно.

Если Вам надо понять, какие позиции заканчиваются, просто отсортируйте данные по возрастанию по столбцу Остаток. Так же легко можно фильтровать данные по размерам, артикулам и т.д.
 
winsan, на всякй случай еще раз спрошу смотрели ли макрос в
Цитата
Mershik написал:
Вы смотрели #6!?
Не бойтесь совершенства. Вам его не достичь.
 
Mershik, Я затупил, извините. Все работает, большое Вам спасибо)

ctpexhih, Спасибо, подумаю над изменением таблицы
Страницы: 1
Наверх