Problemas con macro usando SUM.IF
Estuve buscando la manera de hacer un sumif desde un libro cerrado. Pero no pude conseguir respuestas. Sin embargo, traté de hacer lo que estaba buscando, a través de una macro que abra, ejecute la suma, guarde en una celda el valor y cierre el libro.
Todo iba bien hasta que llego al punto del SumIF y ahí me da un error.
La macro la ejecuto cuando selecciono un dato de una lista desplegable. De acuerdo a ese dato, debo seleccionar una columna. Y la macro hasta el momento va así:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Application.ScreenUpdating = False Dim ruta As String, mes As String, titulo As String, archivo As String, direccion1 As String 'definimos rutas y archivos como variables Set BG = Sheets("BG") Set BD = Sheets("Base de Datos") ruta = "C:\CORTES DE CUENTAS\2018\" mes = [Y6] titulo = " Cierre Contable Mensual " archivo = [Y7] direccion1 = ruta & mes & titulo & archivo 'Se define la variable para el rango de suma, de acuerdo a la 'selección de la lista Rango1 = Application.WorksheetFunction.VLookup(BG.Range("A1"), BD.Range("A:B"), 2, False) 'abrimos el libro desde donde se sumará la información con el 'método .Open Workbooks.Open Filename:=direccion1 Worksheets("Resumen Ejecutivo").Activate 'Asignamos a la celda la suma de acuerdo a las condiciones Workbooks("Corte de Cuentas.xlsm").Activate BG.Select BG.Range("N3").Value = WorksheetFunction.SumIf(Workbooks(direccion1). Sheets("Resumen Ejecutivo").Range("A:A"), Range("B13").Value, Workbooks(direccion1).Sheets("Resumen Ejecutivo"). Range(Rango1 & ":" & Rango1)) 'cerramos el libro origen con el método .Close, sin guardar cambios Workbooks(fichero1).Close savechanges:=False Application.ScreenUpdating = True End If End Sub
Me pueden ayudar a ver cual es el error para poder corregirlo y seguir construyendo la macro. Ya que voy haciendo pruebas y agregando.
Respuesta de Danny Velasquez
1
1 respuesta más de otro experto
Respuesta de Programar Excel
1