Office - que hago?

 
Vista:

que hago?

Publicado por ignorante (2 intervenciones) el 12/02/2005 12:17:16
hola, tengo una hoja en la que introduzco datos, pero quiero calcular sobre los 80 últimos introducidos, pero al mis tiempo quiero conservar todos los anteriores.
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

RE:que hago?

Publicado por Mark (329 intervenciones) el 12/02/2005 18:25:28
Ok amigo para eso necesitas una macro, pero dinos que es lo que quieres hacer con esa 80 filas, sumar el rango? o es una operación para cada celda? , como no lo se no te posteo una posible solución, responde y ya veremos que podemos hacer por ti, 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

RE:que hago?

Publicado por ignorante (2 intervenciones) el 12/02/2005 22:37:18
hola Mark,concretando en una celda de una columna aparte de la misma hoja, quiero realizar la suma de los ultimos 80 ultimos numeros introducidos y dividirlo por 120, gracias por tu respuesta.
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

RE:que hago?

Publicado por Mark (329 intervenciones) el 14/02/2005 01:37:35
Aqui tienes lo que necesitas:

Sub sumar80filas()
Dim ultima As String
Dim primera As String
Dim myRange As Range

'Estoy suponiendo que comienzas en A2,
'pero el rango adecualo a tus necesidades
'o agregale un inputbox para ingresar el rango de inicio;
'lo cual te permitira seleccionar el rango,
'aunque si es fijo con esto, tal cual, estara bien

'OK lo primero, encuentro la última celda con datos será:

Range("A2").End(xlDown).Activate
ultima = ActiveCell.Address

'luego encuentro la fila 80 contando desde la ultima hacia arriba
primera = ActiveCell.Offset(-79, 0).Address

'esta linea es para que sepas el rango a sumar
'y lo rectifiques pero no es necesaria,
'es por si escojes rango variable mediante el imputbox
rangito = MsgBox("El rango correspondiente a las últimas 80 filas es " _
& "(" & (primera & ":" & ultima) & ")", vbInformation, _
"Se efectuará la operación sobre el siguiente rango >>>!!!")

'Ahora sumo el rango de las dos variables y listo
Set myRange = Worksheets("Hoja1").Range(primera & ":" & ultima)
sumatoria = Application.WorksheetFunction.Sum(myRange) / 120

'devuelvo el resultado en B40 pero tambien
'adecualo a tus necesidades
Range("B40").Value = sumatoria

Set myRange = Nothing
End Sub
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