Saltar al contenido

Recommended Posts

publicado

Buenos  días amigos de Ayuda Excel, 

La siguiente macro me da el error  91 en tiempo de ejecución, Variable de objeto o bloque With no establecido.

Me resalta en amarillo la fila que está aquí en negrita y letra grande

Sub EnviarDatosCostosProductosNacionalesAPreciosProductosYServiciosA()
Application.ScreenUpdating = False

Dim ult, ult1 As Long
Dim rng As Range
ult2 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & Rows.Count).End(xlUp).Row
ult3 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("B" & Rows.Count).End(xlUp).Row

ult = Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("A" & Rows.Count).End(xlUp).Row + 1
ult1 = Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("B" & Rows.Count).End(xlUp).Row + 1

Application.ScreenUpdating = False
Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("B" & ult1) = Sheets("COSTOS PRODUCTOS NACIONALES").Range("B" & ult3).Value
Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("A" & ult1) = Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & ult2).Value

Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Select

MsgBox ("SE HA ENVIADO AL MODULO PRECIOS PRODUCTOS Y SERVICIOS, LA INFORMACIÓN DE ESTE PRODUCTO O SERVICIO." & Chr(13) & _
"POR FAVOR COMPLETE LA INFORMACIÓN SOLICITADA" & Chr(13) & _
"!OPERACIÓN REALIZADA SATISFACTORIAMENTE¡"), vbInformation, "CALCULADORA DE PRECIOS Y COSTOS DATCHEL PLUS"

Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("E" & ult1).Select

End Sub

 

 

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 5 Then
   If Target.Address Like "$H$*" Then
      If Range("H" & Target.Row) > 0 Then
         Application.ScreenUpdating = False
         Call EnviarDatosCostosProductosNacionalesAPreciosProductosYServiciosA
      End If
   End If
End If

Dim prod$, ufo&, ufd&
    Dim pro_d As Range
    Dim rDependents As Range
    
    uf = Range("C" & Rows.Count).End(xlUp).Row
    'prod = TempCombo
    prod = Range("A" & Target.Row).Value
    
    If Application.Intersect(Target, Range("C5:C" & uf)) Is Nothing And _
       Application.Intersect(Target, Range("D5:D" & uf)) Is Nothing And _
       Application.Intersect(Target, Range("E5:E" & uf)) Is Nothing And _
       Application.Intersect(Target, Range("F5:F" & uf)) Is Nothing And _
       Application.Intersect(Target, Range("G5:G" & uf)) Is Nothing Then
       Exit Sub
    End If
        
    If Worksheets("COSTOS PRODUCTOS NACIONALES").Range("H" & Target.Row).Value > 0 Then
        With Sheets("PRECIOS PRODUCTOS Y SERVICIOS")
            ufd = .Range("A" & Rows.Count).End(xlUp).Row
            Set pro_d = .Range("A5:A" & ufd).Find(prod)
            pro_d.Offset(, 1) = Worksheets("COSTOS PRODUCTOS NACIONALES").Range("H" & Target.Row).Value
        End With
    End If

End Sub

 

No envía a la hoja PRECIOS PRODUCTOS Y SERVICIOS lo establecido en la primera macro

Agradecido por su ayuda de antemano,

  • Solution
publicado

No encuentra el valor de la variable prod en esta instrucción: 

Set pro_d = .Range("A5:A" & ufd).Find(prod)

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.