PDA

Ver la versión completa : [Ayuda] Ayuda para automatizar creación de una tabla



nintiendo1
06/08/2015, 21:24
Bueno, el título no es muy descriptivo, pero os comento lo que quiero hacer.

Ante todo gracias de antemano.

Mi idea es en una tabla en blanco (que tiene X filas y Y columnas, con unos márgenes determinados y un ancho/altura de celda determinado ya que es para imprimir en una hoja especial de esas que son pegatinas), que se me auto-rellene con unos datos que yo les proporcione. Obviamente estos datos van cambiando con relativa frecuencia (1 vez al día) por lo que es un rollo ponerme todos los días a modificar esta tabla y así ahorraría mucho tiempo (y evitaría errores que se cometen al rellenar la tabla a mano y ordenándola todos los días).

Os comento que el ordenador donde se hará es un Windows Vista o 7, que no soy administrador (ni tengo la clave para serlo o para instalar programas) y que cuenta con MS Word, Excel y creo que también Access.

Yo había pensado en hacerlo en Excel, pero no sé si es posible. Mi idea es poner en la hoja 1 los datos que quiero que me añada en la tabla. Por ejemplo, en la A1 iría un dato, en la A2 otro, y en la A3 otro. Lo que quiero es que en la 1ª celda me ponga a A1(espacio)A2(Enter)A3, en la 2ª celda A1(espacio)A2(Enter)A4, en la 3ª celda A1(espacio)A2(Enter)A5, en la 4ª celda A1(espacio)A6(Enter)A7, y ya esto lo seguiría complentando yo si me explicais como se hace. Señalar que si en el A3, el A4, el A5, el A7 (es decir, en el que va después del (Enter)) está en blanco, se saltaría y pasaría al siguiente, es decir, si el A4 está en blanco, la secuencia sería: en la 1ª celda me ponga a A1(espacio)A2(Enter)A3, en la 2ª celda A1(espacio)A2(Enter)A5, etc.

Ya por último, y para que me quede mejor, cuando me rellene la celda con los datos, me gustaría que el AX(espacio)AY(Enter)AZ, el AX(espacio)AY me lo ponga a un tamaño de letra 14, y el AZ, según el número de caracteres que tenga, tenga un amaño de letra distinto (por ejemplo, si tiene entre 1 y 10 caracteres, tamaño 12, entre 10 y 20 tamaño 10, entre 20 y 30 tamaño 8, esto si me explicais como se hace ya lo pongo yo los valores).

He propuesto hacerlo con Excel, pero no sé si con los requisitos que he dicho (no puedo ser Admin ni por tanto instalar programas nuevos) se puede hacer con otra cosa mejor.

Espero haberme explicado bien.

Saludos.

hardyx
06/08/2015, 21:46
Te explicas como un libro cerrado, pero bueno parece que voy viendo lo que quieres hacer.

Puedes hacerlo con dos hojas de cálculo (pestañas de Excel), en una pones los valores y en la otra la tabla del resultado con sus estilos de letra. Pero tendrías que hacerlo en VBA, o sea en Visual Basic de Excel.

nintiendo1
06/08/2015, 21:58
Te explicas como un libro cerrado, pero bueno parece que voy viendo lo que quieres hacer.

Puedes hacerlo con dos hojas de cálculo (pestañas de Excel), en una pones los valores y en la otra la tabla del resultado con sus estilos de letra. Pero tendrías que hacerlo en VBA, o sea en Visual Basic de Excel.

Sí, mi idea es esa, en una hoja pongo los datos, y ya con esos datos en la otra hoja que tenga ya configurada la tabla sin ningún dato, que me los pase. Lo que no entiendo es lo del VBA, ¿hay que saber programación para hacer eso? No soy informático ni parecido.

Saludos.

hardyx
06/08/2015, 22:02
Bueno, podrías hacerlo en VBA (si, hay que saber programación) o podrías hacerlo usando las funciones de Excel, aunque no se me ocurre una manera sencilla de hacer lo de saltarse los valores vacíos.

https://exceltotal.com/funciones/

nintiendo1
07/08/2015, 01:38
Bueno, podrías hacerlo en VBA (si, hay que saber programación) o podrías hacerlo usando las funciones de Excel, aunque no se me ocurre una manera sencilla de hacer lo de saltarse los valores vacíos.

https://exceltotal.com/funciones/

Bueno, entonces VBA lo descarto, si tengo que hacer informática para hacer esto no me sale rentable xD

Miraré lo de las funciones, a ver si puedo hacerlo, aunque pinta difícil.

De todas formas, he propuesto Excel, pero se pueden usar otras alternativas si no requiero permisos de Admin.

Saludos y gracias!

josepzin
07/08/2015, 02:47
Te explicas como un libro cerrado, l.

Jajaja :-D

hardyx
07/08/2015, 09:35
Se me ocurren soluciones, pero con programación. Podrias tener los datos en un fichero de texto, un dato en cada linea, si no hay dato la linea estaria en blanco. Un programita en Java o Python podria leer el fichero y generar la tabla en html. Alguien que sepa hacerlo le llevaría pocas horas.

Aiken
07/08/2015, 10:03
yo no estoy muy puesto ... pero supongo que si con dos hojas y funciones no lo consigues ... podrias hacerlo con Excel + Access .... en Access los datos y en Excel el diseño, ayudandote tambien de las funciones de Excel.

Nota1: Cuando dices (Enter) y (Espacio) ... creo que seria mucho mas sencillo pensar que cada cosa va en una celda diferente y jugar con el tamaño de las celdas. Sobre todo porque la base de Excel es que cada dato este en una celda (aunque luego en tu papel visualmente sea una sola "caja").

Nota2: Lo de que "dependiendo del ancho del texto" cambie el tamaño de letra .. entiendo lo que quieres conseguir ... pero no es algo muy estandard, pocos documentos/formularios veras con tamaños de letra diferente para una misma casilla .. es algo que un informatico nunca haria (ni siquiera lo pensaria de esa forma) :) Lo normal es hacer la casilla del tamaño que necesita para la informacion que hay que escribir ... o sino abreviar.

Aiken

-----Actualizado-----

EDIT: Me dice un compañero que Access tiene como un diseñador de formularios (que puedes mover las casillas con el raton has que queden exactamente donde necesitas ... quizas te sea mas facil eso.

Aiken

Nathrezim
07/08/2015, 10:53
¿Tienes word instalado? Combinar correspondecia hace todo lo que dices con un wizard, en concreto combinar correspondencia de etiquetas.

nintiendo1
07/08/2015, 12:26
¿Tienes word instalado? Combinar correspondecia hace todo lo que dices con un wizard, en concreto combinar correspondencia de etiquetas.

Wow, esto pinta excelente. Tengo Word, de hecho siempre se ha estado haciendo en Word "a mano", lo cual me lleva en ocasiones a plantearme el suicidio cada vez que se cambia algo y te j0de todo. Lo he estado mirando y parece que me sirve. Una dudilla, ¿se puede hacer para que se actualize el Word cuando yo cambie el Excel donde están los datos (aunque sea pulsando un botón o algo), o tengo que hacer ese wizard cada vez que cambie algo en el Excel?

Saludos y gracias a todos por vuestra ayuda.

Nathrezim
07/08/2015, 13:13
Wow, esto pinta excelente. Tengo Word, de hecho siempre se ha estado haciendo en Word "a mano", lo cual me lleva en ocasiones a plantearme el suicidio cada vez que se cambia algo y te j0de todo. Lo he estado mirando y parece que me sirve. Una dudilla, ¿se puede hacer para que se actualize el Word cuando yo cambie el Excel donde están los datos (aunque sea pulsando un botón o algo), o tengo que hacer ese wizard cada vez que cambie algo en el Excel?

Saludos y gracias a todos por vuestra ayuda.

Claro, si no no tiene sentido, cambias la fuente de los datos, abres el documento y le das a lo de vista previo de resultados para verlo. De todas formas, si le das a imprimir o a enviar por correo te coge el resultado con la fuente de datos cambiada.

nintiendo1
07/08/2015, 19:51
Con lo de Nathrezim lo he conseguido hacer a la perfección, además se actualiza solo cada vez que abro el documento. Y se puede poner para que te los ordene automáticamente. Tanto calentarme la cabeza y se podía hacer fácilmente.

Gracias a todos!