У меня есть список продуктов в определенной колонке. Этот столбец содержит пробелы, однако все имена уникальны. Этот список находится на листе 2. Я отслеживаю продажи на листе 1, каждая продажа добавляется ниже предыдущей продажи. Каждая продажа представляет собой диапазон ячеек, например, A1: F6, содержащий такую информацию, как: номер счета, количество, цена за продукт, общая стоимость и т. Д. Название продукта будет указано в столбце D. В столбце D дополнительно указаны цены и способы оплаты, такие как VISA, CASH. или даже заготовки.
Я пытался создать статистический трекер для проданных продуктов, перечисляя то, что было продано и сколько раз, используя любой из списков, но я не могу избежать перечисления ненужной информации из списка выше.
Я пробовал формулу:
=LOOKUP(2, 1/((COUNTIF($K$53:K53, $D$1:$D$1000)=0)*($D$1:$D$1000<>""&"<>0")), $D$1:$D$1000)
Но не только это не будет выходить за пределы пустых пространств, но я не могу понять, как я могу добавить в него черный список слов или цифр.
Кто-нибудь имел бы представление о том, какой тип макроса или формулы я мог бы использовать для этого, даже если бы я добавил еще одну таблицу, которая будет использоваться в качестве черного списка?
=LOOKUP(2, 1/((COUNTIF($K$53:K53, $D$1:$D$1000)=0)*($D$1:$D$1000<>""&"<>0"&<>$Z$10:$Z$20)), $D$1:$D$1000)
Я пробовал варианты такой формулы, но не могу заставить это работать ...
Спасибо за помощь.
Мне удалось обойти мой испорченный дизайн и т. Д. И я нашел лучшее решение для обработки продаж / возмещений с помощью макроса, пока он изначально задействован / размещен, однако я не могу заставить работать несколько IF, - нуб здесь пожалуйста, помилуй.
' This handles refund: bottle
If Range("K2").Value < "0" And IsNumeric(Range("K2")) = True And Range("K4").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K2").Copy
calcSheet.Cells(rowNum, "G").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
' This handles refund: glass
ElseIf Range("K3").Value < "0" And IsNumeric(Range("K3")) = True And Range("K4").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K3").Copy
calcSheet.Cells(rowNum, "H").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
' This handles refund: portion
ElseIf Range("K4").Value < "0" And IsNumeric(Range("K4")) = True And Range("K3").Value = "0" And Range("K2").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K4").Copy
calcSheet.Cells(rowNum, "G").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
' This handles sale: bottle
ElseIf Range("K2").Value > "0" And IsNumeric(Range("K2")) = True And Range("K4").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K2").Copy
calcSheet.Cells(rowNum, "C").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
' This handles sale: glass
ElseIf Range("K3").Value > "0" And IsNumeric(Range("K3")) = True And Range("K4").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K3").Copy
calcSheet.Cells(rowNum, "B").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
' This handles sale: portion
ElseIf Range("K4").Value > "0" And IsNumeric(Range("K4")) = True And Range("K3").Value = "0" And Range("K2").Value = "0" Then
rowNum = Range("I1").Value
copySheet.Range("K4").Copy
calcSheet.Cells(rowNum, "A").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd
Else: MsgBox "You cannot add drinks with food. B: quantity as number only"
End If
Просьба о помощи. Этот массив, кажется, работает ... но он не останавливается - он все еще выполняет части кода: (