IF con 2 condiciones en Excel VBA

Leghe59 Mensajes publicados 36 Fecha de registro   Estado Miembro Última intervención   -  
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

  1. Leghe59 Mensajes publicados 36 Fecha de registro   Estado Miembro Última intervención  
     
    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
    0
    1. danielc0 Mensajes publicados 2179 Fecha de registro   Estado Miembro Última intervención   287
       

      Bonjour,

      Tienes tres condiciones, no dos. ¿Cuáles son los tres valores probados?

      Daniel

      0