Excel - Promedio VBA Excel

 
Vista:
Imágen de perfil de Marco

Promedio VBA Excel

Publicado por Marco (6 intervenciones) el 12/08/2021 00:11:52
Buenas tardes, estoy intentando realizar una macro que me saque los promedios pero al ejecutarla me da un error 1004, les comparto para ver si me pueden ayudar

Sub promedio()
Dim nombre As Range
Dim calificacion As Variant
Dim v_a_buscar As String
Dim promedio As Range


Set nombre = Sheets("hoja1").Range("a2:a10")
Set calificacion = Sheets("hoja1").Range("b2:b10")
v_a_buscar = Range("c1")
Set promedio = ActiveWorkbook.Sheets("hoja1").Range("E2")
promedio = Application.WorksheetFunction.AverageIf(nombre, v_a_buscar, calificacion)


End Sub

Error-1004
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Promedio VBA Excel

Publicado por Antoni Masana (1892 intervenciones) el 12/08/2021 15:48:43
Debes subir el libro para ver que hace la macro y donde falla.
La macro esta bien, lo que debe estar mal es la hoja.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Promedio VBA Excel

Publicado por Horroroso (8 intervenciones) el 13/08/2021 01:08:26
El único posible error que puedes tener es que no estas referenciado correctamente v_a_buscar,

Podrías agregar algo como:

1
v_a_buscar = ActiveWorkbook.Sheets("hoja1").Range("C1")

Prueba, y nos platicas como te fue.

Saludos

-Horroroso-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Marco

Promedio VBA Excel

Publicado por Marco (6 intervenciones) el 15/08/2021 02:38:33
Muchas gracias a todos por responder, la macro "funcionó" quitando la parte de WorksheetFunction el ahora se ejecuta pero no lleva valores, mejor les voy adjuntar el archivo, en estos s momentos no lo hago porque salí de la ciudad y no cargo mi compu.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Marco

Promedio VBA Excel

Publicado por Marco (6 intervenciones) el 18/08/2021 22:13:00
Chicos
buenos días, tardes o noches, le adjunto la macro la parte a revisar sería el modulo Filtrar
ub reporte()
Dim cont As Long
Dim nomb As Variant
Dim nombre As Variant
Dim grados As Variant
Dim rng As Variant
Dim rango As Range
Dim tem_i As Variant
Dim tem_p As Variant
Dim tem_f As Variant

ultFila = Sheets("Reporte").Range("H" & Rows.Count).End(xlUp).Row
Set rng = Sheets("Reporte").Range("E5:F10000")
Set rango = Sheets("Reporte").Range("E5:E10000")
Set grados = Sheets("Reporte").Range("F5:F10000")
Set temp_p = Sheets("Reporte").Range("J3")

For cont = 3 To ultFila
nomb = Sheets("Reporte").Cells(cont, 8)
tem_p = Application.AverageIf(rango, nomb, grados)


If IsError(temp_p) Then
temp_p = "No está"

End If

Sheets("Reporte").Cells(cont, 10) = temp_p



Next cont
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Marco

Promedio VBA Excel

Publicado por Marco (6 intervenciones) el 18/08/2021 23:16:14
Chicos muchas gracias ya lo solucioné
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar