Jump to content

Transponer filas a columnas por formula


hectorcc_18

Recommended Posts

Hola!!

Tengo un archivo con dos hojas, en la primera se encuentra un estado de cuenta de los clientes de la empresa (Hoja 1); en la segunda se encuentra un resumen de los movimiento del mes (Hoja 2), de la Hoja 1 debo pasar a la Hoja 2 solo los valores de SALDO INICIAL, CARGO y ABONOS, esta información se encuentra al final de los movimientos mensuales de cada cliente; en la Hoja 1 dichos valores se encuentran en filas p.e D16, D17 y D18, pero en la Hoja 2 los necesito en columnas p.e. C4, D4, E4, actualmente utilizo la función de Excel TRANSPONER, pero debo seleccionar el rango donde deseo copiar los valores, escribir la formula (=TRANSPONER), luego cambiar de hoja, seleccionar las filas a copiar y presionar SHIFT+CTRL+ENTER, situación esta última que por la prisa olvido y se tiene que repetir todo el proceso.

Me gustaría poder colocar el primer valor en la hoja 2 y que por formula se obtengan los otros dos valores, es decir manualmente decir que Hoja2!C4=Hoja1!D16, y que por formula se calcule que Hoja2!D4=Hoja1!D17 y Hoja2!E4=Hoja1!D19.

Coloque este tema en Excel, aunque estoy abierto a utilizar VBA, solo que no soy muy bueno el ello, pero estoy aprendiendo, y en gran medida gracias a ustedes.

Como dato aclaratorio, la Hoja 1 hago la revisión de manera manual ya que el número de Clientes y Movimientos es variable por mes, así que le resumen de mi primer cliente lo mismo puede empezar en la celda D4 que en la D8 o en la D15... o en cualquiera.

Atte.

Héctor Cornejo Cravioto

Piensa diferente... y vivirás mejor

Link to post
Share on other sites

Hola!!

Gracias a Leopoldo Blancas, he visto una buena cantidad de los videos que me sugeriste, y estoy aprendiendo bastante de VBA, pero también he estado experimentando y jugando  un poco con las formulas de Excel y finalmente encontré la manera de resolver mi problema, resulta que la lógica de cómo hacerlo la tenía, lo que no podía encontrar era la manera de obtener la referencia (no el dato) de la celda que contenía el primer dato de mis filas en la tabla donde pasaba a columnas; finalmente encontré la formula FORMULATEXTO, una vez obtenido este valor pude hacer uso de algunas formulas y calcular la nueva dirección, el problema ahora era cómo indicarle a Excel que el texto calculado era una referencia a una dirección, así que busqué y encontré la fórmula INDIRECTO.

Hice un pequeño archivo para explicar lo que hice, lo subo para que quien esté interesado en el tema lo pueda consultar y dado el caso mejorarlo o adaptarlo a sus necesidades.

Por mi parte creo que este ya es un tema resuelto.

Transponer filas a columnas por formula.xlsx

Link to post
Share on other sites

¡Hola, @DiegoPC!

Si observas bien... verás que la fórmula depende del valor fijo en la columna B.

Entonces, tu propuesta pudiese acomodarse, seleccionando C19:E19 e introduciendo la fórmula (Ctrl + Shift + Enter):

=TRANSPONER(INDICE('Valores en filas'!$A$3:$C$5;;COINCIDIR($B19;'Valores en filas'!$A$2:$C$2;)))

Siendo B19 el primer valor fijo.  ¡Bendiciones!

Link to post
Share on other sites

Rayos!!! Perdona que no vi que ya sabías =TRANSPONER, propongo otra con VBA!!

 

Sub Transpone()
    Selection.CurrentRegion.Copy
    Selection.CurrentRegion.Offset(Selection.CurrentRegion.Rows.Count + 1, 0).Resize(1, 1).PasteSpecial Transpose:=True
End Sub
 

Link to post
Share on other sites
Hace 15 horas, johnmpl dijo:

Entonces, tu propuesta pudiese acomodarse, seleccionando C19:E19 e introduciendo la fórmula (Ctrl + Shift + Enter):

Hola!!
Gracias @johnmpl y @DiegoPC,  TRANSPONER fue la primer opción de solución que tuve en mi hoja, pero comenté en mi mensaje inicial que por la prisa y lo la cantidad de registros que hay que copiar se vuelve tedioso y complicado el presionar Ctrl + Shift + Enter cada vez, tanto en mi caso como con algunos capturistas que revisaron la solución utilizando TRANSPONER, en 50 registros omitían la combinación de teclas en al menos 5 ocasiones (un 10% de ineficiencia) y había que regresar a corregir los errores, se que con el tiempo se deberían de acostumbrar, pero el chiste es facilitarles la vida, por ello batallé un poco pero logré la solución que se requiere; decía un maestro, "muchas veces la solución más simple no es la mejor", en este caso aplica esta frase, se tuvo que programar más, pero a la hora de la captura solo hay que referenciar una celda y Excel hace el resto.

Gracias por sus comentarios

Atentamente

Héctor Cornejo Cravioto

Piensa diferente... y vivirás mejor

Link to post
Share on other sites
En 12/5/2018 at 21:39 , johnmpl dijo:

Héctor... Revisaste las dos soluciones que propuse?  Comenta si te sirven.  Saludos!

Hola!!

SI, revisé tus opciones, y en mi caso en específico no aplican, te comento; los valores en mi archivo no se encuentran en filas y columnas contiguas donde pueda definir una matriz, además algunos valores se repiten, es decir dos o más clientes pueden tener el mismo saldo inicial que es el dato que busco; tal vez si adjunto un archivo parecido a mi archivo de trabajo quedaría más claro, inicialmente no lo adjunté porque la información que se maneja es de índole confidencial y tengo prohibido compartir cualquier dato, así que eliminé la información relevante y puse valores irreales (aunque típico s de un mes); espero que con este archivo quede claro el manejo de información que hago.

2018-04 Reportes para socios.xlsm

Link to post
Share on other sites
Hace 1 hora, hectorcc_18 dijo:

y en mi caso en específico no aplican

????:angry::angry::angry:

@hectorcc_18, despues de 8 Post que te contestaron nuestros amigos que tan amablemente colaboran aquí con solo el fin de ayudar dices esto???

POR ESO EXPLÍCATE EXACTAMENTE TU CASO, PARA NO HACER TRABAJAR INNECESARIAMENTE A LOS COLABORADORES.

Link to post
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Privacy Policy