Realizar una macro

Hola Feijoal
Es la primera vez que te consulto y me gustaría saber si puedes ayudarme para crear una macro que para mi es compleja ya que yo estoy empezando a realizar macros y esta se me resiste, así como la ayuda de Excel.
Quiero hacer una macro de tal forma que:
a)Lea una celda determinada con un valor y busque ese mismo valor en una columna determinada (p.e. De la B4 a la B30). Imaginemos que lo encuentra en la celda B15.
b) A continuación lea otra celda determinada con otro valor y busque ese mismo valor en toda una fila determinada (p.e. De la A3 a la V3). Imaginemos que lo encuentra en la celda H3.
c)Seleccione la celda cuya columna corresponde al punto b) y la fila corresponda a la del punto a), o sea la celda H15.
d) Copie el valor de esa celda (H15) a la celda que yo quiera.
Gracias de antemano y un saludo
olakua

1 Respuesta

Respuesta
1
Me parece que entendí lo que quieres hacer. Lo que no entiendo es por qué solicitas una macro.
(No pocas veces me pregunto si cuando piden una "macro" saben de qué están hablando.
Si efectivamente estás dando tus primeros pasos en programación sabrás que una macro es un conjunto de comandos, generalmente escritos en Visual Basic for Aplications (VBA), que ejecuta una serie de instrucciones. De hecho es todo un Programa de computación.
Como tal, insume más recursos y mantenimiento que las funciones incluidas en MS Excel.
Muchas veces, una fórmula resuelve el problema arrojando el resultado automáticamente sin necesidad de ejecutar "macro" alguna.
En general, agoto la posibilidades de resolver algo con fórmulas antes de ponerme a desarrollar todo un procedimiento)
Bien, este me parece que es tu caso.
En mi trabajo diario, es usual que necesite leer una tabla que me muestra cada concepto en filas y los valores para cada mes en columnas.
El primer valor a buscar en la columna B, asumiré que está en la celda A1, mientras que coloco el mismo nombre del mes (o sea tu segundo valor a encontrar) en la celda B1. Desde luego, puedes cambiar estas referencias a las tuyas propias.
Por lo que dices, tu tabla comprende el rango: B4:V30.
Bien, entonces ingresa la siguiente fórmula en la celda donde deberá traer el valor buscado:
=BUSCARV($A$1,$B$4:$V$30,COINCIDIR($B$3:$V$3,$B$1,0),0)
[Considera si sueles usar comas o punto y coma para separar argumentos de las funciones. Yo usé ","]
Si la función BUSCARV te fuera familiar, notarás que el primer argumento es el primer valor a buscar. El segundo argumento es el rango donde está tu tabla de datos.
El tercer dato es el número de columna de donde debe tomar los datos. Para ello la función COINCIDIR, busca el nombre del mes seleccionado en la celda B1 dentro de la fila de los encabezados de columnas (fila 3 en tu caso). Así si el mes a mostrar fuese Enero, este estará en la segunda columna empezando desde la columna "B", por lo tanto devolverá: 2.
---
Bien, Olakua, la ventaja de usar fórmulas en lugar de macros, es que estas se actualizan automáticamente, sin necesidad de que recuerdes que debes ejecutarlo cada vez que cambies de mes. De esta manera, simplemente cambias los valores de las celdas A1 y B1 y sus valores serán mostrados por la fórmula sugerida.
Espero que esto ayude a resolver tu problema. Si así fuera, agradeceré un comentario y que la finalices.
(Recuerda que mantener cierto número de respuestas pendientes impide que otros usuarios puedan consultarme)
En caso contrario, puedes preguntarme nuevamente
Aclarando qué entendí mal o qué faltó.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas