IF con 2 condiciones en Excel VBA
danielc0 Mensajes publicados 2179 Fecha de registro Estado Miembro Última intervención -
Hola,
soy principiante en VBA y busco, en una macro, hacer una promoción si se cumplen 2 condiciones:
En la columna B está el "estado" del producto, en la columna L el proveedor:
If (OExport.Range("B" & li).Value = "Arrêt de commercialisation" And OExport.Range("L" & li).Value <> "DEPOT -*") Or OExport.Range("B" & li).Value = "Changement de distributeur" Then
Entonces si el estado del producto es "Arrêt de commercialisation" Y que el nombre del proveedor no empiece por "DEPOT -", o que el estado del producto sea "Changement de distributeur" Entonces...
Pero la primera parte no funciona, el producto pasa a promoción incluso si Value <> "DEPOT -*".
¿Dónde he cometido un error?
¡Gracias!
2 respuestas
-
Hola,
Con el archivo parcial sería más provechoso.
Colocarlo en SwissTransfer - Envío seguro y gratuito de archivos grandes
Saludos.
El Pingüino -
lifin = OExport.Range("A" & Rows.Count).End(xlUp).Row For li = lifin To 2 Step -1 If (OExport.Range("B" & li).Value = "Arrêt de commercialisation" And OExport.Range("L" & li).Value <> "DEPOT -*") Or OExport.Range("B" & li).Value = "Changement de distributeur" Then Rows(li & ":" & li).Select Application.CutCopyMode = False Selection.Copy Selection.Insert Shift:=xlDown Range("A" & li + 1) = Range("B" & li + 1) & "-O" Range("E" & li + 1) = "1" Range("J" & li + 1) = "Déstockage ! Jamais ouvert - Envoi le jour-même depuis Lille - France" Range("R" & li + 1) = "" End If Next li lifin2 = OVente.Range("A" & Rows.Count).End(xlUp).Row For li = lifin2 To 2 Step -1 If OVente.Range("A" & li).Value Like "*-O" Then Range("D" & li) = (Range("D" & li - 1) / 2) End If