Foros


Inicio » Excel

Página: 1

Mensaje Autor

Arriba
08/Ene/09 17:30
Repetir Macro en una seleccion

Hola buenas tardes he estado trabajando en en algunos calculos sobre impuestos y bueno tengo una base de datos demasiado grande, porfin he podido hacer un calculo inverso de nomina utilizando la funcion 'Buscar Objetivo' de Excel, sin embargo quiero hacer una macro en la que me aplique dicha funcion a un rango seleccionado. En este memonto me atore y no se hacer mas para que la macro se siga ejecutando en los demas renglones de la seleccion.

Asi es como la tengo actualmente:

' BuscarCeros Macro
'
'
Range(Selection, Selection.End(xlDown)).Select
Range('AZ7').GoalSeek Goal:=0, ChangingCell:=Range('AW7')
Range('AZ7:AZ223').Select
Range('AZ8').Activate
Range('AZ8').GoalSeek Goal:=0, ChangingCell:=Range('AW8')
Range('AZ7:AZ223').Select
Range('AZ9').Activate
Range('AZ9').GoalSeek Goal:=0, ChangingCell:=Range('AW9')
Range('AZ7:AZ223').Select
Range('AZ10').Activate
Range('AZ10').GoalSeek Goal:=0, ChangingCell:=Range('AW10')
Range('AZ7:AZ223').Select
Range('AZ12').Activate
Range('AZ12').GoalSeek Goal:=0, ChangingCell:=Range('AW12')
End Sub

En donde lo que rquiero es que me cambie el nombre/numero de renglo y la vuelva a ejecutar mi celdas estan de la siguiente forma:

AV7 = Salario Neto pagado
AW7 = Valor Buscado (es decir el salario base)
AX7 = Calculo de IMSS
AY = Calculo de ISR
AZ = Valor buscado (AW7) - IMSS (AX7) - ISR (AY7) - AV7, de esta manera estoy buscando un valor de Cero, que es lo que ocupo en mi operacion de 'Buscar Objetivo'.

Mi problema es que no puedo hacer la macro en la cual 'Busque Objetivo', pase al siguiente renglo y 'Busque Objetivo', y asi sucesibamente hasta llegar al final de mi seleccion (renglon AZ223 para este caso).

Lo quiero hacer con macros porque necesito hacerlo con 14 archivos de 200 registros cada uno :-S

Gracias por la ayuda.
 
El Imperio no tiene ningun interes en Venezuela, Darth Vader.
 
Perfil

marcosrobles
Cabo

Mensajes: 29
Ingresó: Diciembre 04, 2008
Ubicación:

No Conectado

Agregar como amigo

Arriba
07/Oct/10 16:52
Re: Repetir Macro en una seleccion

un poquito tarde, ja ja ja
lo que pasa en que recordé algo similar, y no quise dejar sin responder, espero a alguien le sirva.
funciona de la siguiente manera:
se sobrea o selecciona el rango con los datos netos, el dato donde esta el importe a llegar esta en una columna a la izquierda, y el importe a cambiar esta cinco columnas a la izquierda, estas últimas se pueden ajustar a sus datos modificando la macro
para la columna de dato allegar cambiar
Dato = ActiveCell.Offset(0, -1).Value
por:
Dato = ActiveCell.Offset(0, n).Value
donde n es el número de columnas a la izquierda (negativo) o derecha (positivo) con referencia de la columna de datos netos, con referencia de la columna de datos netos

Para el dato a cambiar se modifica:
...ActiveCell.Offset(0, -5)...
por:
...ActiveCell.Offset(0, n)...
de igual manera n significa el numero de columnas

Code:
Sub BuscaVariosObjetivos()
Dim Dato As Double
For Each cell In Selection
Dato = ActiveCell.Offset(0, -1).Value
ActiveCell.GoalSeek Goal:=Dato, ChangingCell:=ActiveCell.Offset(0, -5).Range('A1')
ActiveCell.Offset(1, 0).Select
Next
End Sub
 
«Antes que cambien los reinos, los hombres deberán cambiar» ═╬═
 
Perfil

ByPaco
Teniente Coronel

Mensajes: 2132
Ingresó: Junio 05, 2004
Ubicación:

Conectado

Agregar como amigo


Página: 1