Inicio > Microsoft Excel > eldata > Copiar fórmulas de manera no correlativa

Copiar fórmulas de manera no correlativa

Experto:
Usuario:
Fecha: 23/03/2009
Valoración: (4,00 sobre 5) Categoría: Microsoft Excel
23/03/2009
garpana, usuario preguntando en Microsoft Excel
Usuario
Hola,
Desde una hoja Excel debo crear un archivo en formato ASCII. Para ello, en la siguiente pestaña creo fórmulas cogiendo datos de la primera. Sin embargo, de cada línea de la pestaña 1 genero 3 líneas en la pestaña 2, por lo que la 4ª línea de la pestaña 2 tiene que coger datos de la segunda línea de la pestaña 1. ¿Cómo puedo hacer eso automáticamente? Ya que si copio y pego la fórmula me va a coger los datos de la línea 4.
Espero haberme explicado con claridad.
Gracias
23/03/2009
garpana, experto respondiendo en Microsoft Excel
Experto
Lo que tenemos que hacer es calcular la fila de la pestaña 1 le que corresponde corresponde cada una de la pestaña 2.
Se supone en ambas hojas tenemos un título en la fila 1 y los datos comienzan en la fila 2.
Mas o menos la idea es dividir entre 3 el valor de la fila de la pestaña 2 para calcular la fila de la pestaña 1, la columna tu la defines según tus necesidades.
La formula te queda así:
=INDIRECTO("Hoja1!A"&TRUNCAR((FILA()+1)/3)+1)
La función INDIRECTO nos arma la referencia a una celda dependiendo del texto que le pasamos por parámetro, y la función FILA cuando no se le pasa ningún parámetro nos retorna el número de la fila de donde se está haciendo el llamado a la función.
Ahora te toca cambiarle el nombre a la hoja si es necesario (de Hoja1 a la que tengas tu), y cambia A por la columna que necesites.
Cualquier cosa me avisas.
http://dataage.blogspot.com
23/03/2009
garpana, usuario preguntando en Microsoft Excel
Usuario
Entonces, si tengo una fórmula como ésta
=SI(Hoja1!E2=0;"";REPETIR(" ";6-LARGO(Hoja1!A2))&Hoja1!A2&Hoja1!B2&Hoja1!C2&Hoja1!D2)
 
¿Tengo que cambiar cada celda a la que hago referencia por la fórmula que me sugieres?
Gracias
 
23/03/2009
garpana, experto respondiendo en Microsoft Excel
Experto
Te quedaría esta cosa horrible:
=SI(indirecto("Hoja1!E"&truncar((fila()+1)/3)+1)=0;"";repetir(" ";6-largo(indirecto("Hoja1!A"&truncar((fila()+1)/3)+1)))&indirecto("Hoja1!A"&truncar((fila()+1)/3)+1)&indirecto("Hoja1!B"&truncar((fila()+1)/3)+1)&indirecto("Hoja1!C"&truncar((fila()+1)/3)+1)&indirecto("Hoja1!D"&truncar((fila()+1)/3)+1))
Cualquier cosa me avisas.
http://www.thedataage.com
23/03/2009
garpana, usuario preguntando en Microsoft Excel
Usuario
Muchas gracias. He hecho una pequeña prueba y parece que funciona. Has sido de muchísima ayuda.
Enlaces patrocinados