Concaternar varias celdas manteniento el ancho

08/02/2005 - 13:59 por Lao_España | Informe spam
Buenos días a tod@s

El problema que necesito solucionar es el siguiente:

Tengo cuatro columnas a concatenar (lo estoy haciendo con el signo &).

El primer campo es una fecha (01/01/05)
El segundo es una número que siempre es de la misma cantidad de dígitos.
El tercero es un importe, tamaño variable positivo o negativo (el negativo
es con el signo "-")
El cuarto es un texto, tamaño variable.

Alguno de vosotros tiene alguna solución.

Muchas gracias por vuestra ayuda.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
08/02/2005 - 22:43 | Informe spam
hola, Lao !

... cuatro columnas a concatenar (lo estoy haciendo con el signo &).
El primer campo es una fecha (01/01/05)
El segundo es un numero que siempre es de la misma cantidad de digitos.
El tercero es un importe, tamaño variable positivo o negativo (el negativo es con el signo "-")
El cuarto es un texto, tamaño variable.



[segun yo] donde requieras un formato 'especifico' puedes usar la funcion 'texto()' [p.e.]
=texto(celda_fecha,"dd/mm/aa ")&celda_numero&" "&texto(celda_cantidad,"$#,##0.00 ")&celda_texto

toma nota que 'mis' separadores con coma para los miles y argumentos y putnto para las decimales

saludos,
hector.
Respuesta Responder a este mensaje
#2 Lao_España
09/02/2005 - 08:16 | Informe spam
Gracias por tu respuesta pero no lo he podido solucionar así (o no he
sabido)

Te ampliado mi problema.

tengo en celdas el siguiente dato
01/01/05 9000001 -9570,00 EUR Gastos xxxxx
02/01/05 9000002 -22,00 EUR Gastos xxxxx

Al concatenarlo en una sola celda, que es lo que necesito, pone lo siguiente

01/01/05 9000001 -9570,00 EUR Gastos xxxxx
02/01/05 9000002 -22,00 EUR Gastos xxxxx

Como ves al ser los importes distintos se pierde el efecto columna, es decir
la parte decimal del importe ya no está en su sitio, lo que necesito es
alguna formula o codigo que mantenga todo debidamente tabulado.

Un saludo.

"Héctor Miguel" escribió en el mensaje
news:%
hola, Lao !

> ... cuatro columnas a concatenar (lo estoy haciendo con el signo &).
> El primer campo es una fecha (01/01/05)
> El segundo es un numero que siempre es de la misma cantidad de digitos.
> El tercero es un importe, tamaño variable positivo o negativo (el


negativo es con el signo "-")
> El cuarto es un texto, tamaño variable.

[segun yo] donde requieras un formato 'especifico' puedes usar la funcion


'texto()' [p.e.]
=texto(celda_fecha,"dd/mm/aa ")&celda_numero&"


"&texto(celda_cantidad,"$#,##0.00 ")&celda_texto

toma nota que 'mis' separadores con coma para los miles y argumentos y


putnto para las decimales

saludos,
hector.


Respuesta Responder a este mensaje
#3 Héctor Miguel
09/02/2005 - 09:24 | Informe spam
hola, Lao !

... no lo he podido solucionar asi... ampliado mi problema tengo en celdas el siguiente dato
01/01/05 9000001 -9570,00 EUR Gastos xxxxx
02/01/05 9000002 -22,00 EUR Gastos xxxxx
Al concatenarlo en una sola celda, que es lo que necesito, pone lo siguiente
01/01/05 9000001 -9570,00 EUR Gastos xxxxx
02/01/05 9000002 -22,00 EUR Gastos xxxxx
... al ser los importes distintos se pierde el efecto columna... la parte decimal del importe ya no esta en su sitio
... necesito... alguna formula o codigo que mantenga todo debidamente tabulado.



al concatenar celdas en una sola, dando un formato 'especial' a numeros/cifras...
para [tratar de] 'mantener' el 'efecto_columna' que mencionas [como yo lo veo]...
'presenta' dos [principales] 'problemas/detalles'...
1.- 'ajustar' los espacios 'faltantes' en cifras 'cortas' con respecto de la cifra 'mayor' [en el rango] y...
2.- el 'tipo' de fuente 'en uso' [seguramente se usara una 'TrueType' o de ancho 'proporcional'] -?-

una [posible] solucion seria:
-> 'llenar' [previamente] con espacios o algun caracter de ancho 'fijo' [en la parte concatenada de 'cifras']
-> y... 'disminuir' [el llenado] con los caracteres [numeros enteros] que 'realmente' va a necesitar la cifra
[p.e.] suponiendo que la cifra 'mas larga' [en el rango] sea de 4 numeros 'enteros'... la formula 'aplicable' seria:
=> la separo 'en secciones' para que no se corte por 'exceso' de caracteres en la linea del mensaje <=texto(celda_fecha,"dd/mm/aa ")
&celda_numero&" "
&repetir(caracter(1),4-largo(entero(abs(celda_cantidad))))
&texto(celda_cantidad,"#,##0.00 ""EUR"" ")
&celda_texto

otra posibilidad [ya que no creo que 'te guste' el llenado de los espacios 'faltantes'] seria...
-> usar un tipo de letra NO 'propircional' [como Courier, FixedSys, System, etc.]
-> y buscar una combinacion de espacios " " para el llenado

¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Lao_España
09/02/2005 - 10:29 | Informe spam
Muchas gracias lo voy a probar y te diré algo.

"Héctor Miguel" escribió en el mensaje
news:
hola, Lao !

> ... no lo he podido solucionar asi... ampliado mi problema tengo en


celdas el siguiente dato
> 01/01/05 9000001 -9570,00 EUR Gastos xxxxx
> 02/01/05 9000002 -22,00 EUR Gastos xxxxx
> Al concatenarlo en una sola celda, que es lo que necesito, pone lo


siguiente
> 01/01/05 9000001 -9570,00 EUR Gastos xxxxx
> 02/01/05 9000002 -22,00 EUR Gastos xxxxx
> ... al ser los importes distintos se pierde el efecto columna... la


parte decimal del importe ya no esta en su sitio
> ... necesito... alguna formula o codigo que mantenga todo debidamente


tabulado.

al concatenar celdas en una sola, dando un formato 'especial' a


numeros/cifras...
para [tratar de] 'mantener' el 'efecto_columna' que mencionas [como yo lo


veo]...
'presenta' dos [principales] 'problemas/detalles'...
1.- 'ajustar' los espacios 'faltantes' en cifras 'cortas' con respecto de


la cifra 'mayor' [en el rango] y...
2.- el 'tipo' de fuente 'en uso' [seguramente se usara una 'TrueType' o de


ancho 'proporcional'] -?-

una [posible] solucion seria:
-> 'llenar' [previamente] con espacios o algun caracter de ancho 'fijo'


[en la parte concatenada de 'cifras']
-> y... 'disminuir' [el llenado] con los caracteres [numeros enteros] que


'realmente' va a necesitar la cifra
[p.e.] suponiendo que la cifra 'mas larga' [en el rango] sea de 4 numeros


'enteros'... la formula 'aplicable' seria:
=> la separo 'en secciones' para que no se corte por 'exceso' de


caracteres en la linea del mensaje <> =texto(celda_fecha,"dd/mm/aa ")
&celda_numero&" "
&repetir(caracter(1),4-largo(entero(abs(celda_cantidad))))
&texto(celda_cantidad,"#,##0.00 ""EUR"" ")
&celda_texto

otra posibilidad [ya que no creo que 'te guste' el llenado de los espacios


'faltantes'] seria...
-> usar un tipo de letra NO 'propircional' [como Courier, FixedSys,


System, etc.]
-> y buscar una combinacion de espacios " " para el llenado

¿comentas?
saludos,
hector.


Respuesta Responder a este mensaje
#5 Lao_España
09/02/2005 - 12:19 | Informe spam
Hola Héctor, lo he probado y funciona, solamente he tenido que quitar del
formato número el punto de millares, pues no lo contaba y descolocaba las
cifras.

Muchísima gracias.


"Héctor Miguel" escribió en el mensaje
news:
hola, Lao !

> ... no lo he podido solucionar asi... ampliado mi problema tengo en


celdas el siguiente dato
> 01/01/05 9000001 -9570,00 EUR Gastos xxxxx
> 02/01/05 9000002 -22,00 EUR Gastos xxxxx
> Al concatenarlo en una sola celda, que es lo que necesito, pone lo


siguiente
> 01/01/05 9000001 -9570,00 EUR Gastos xxxxx
> 02/01/05 9000002 -22,00 EUR Gastos xxxxx
> ... al ser los importes distintos se pierde el efecto columna... la


parte decimal del importe ya no esta en su sitio
> ... necesito... alguna formula o codigo que mantenga todo debidamente


tabulado.

al concatenar celdas en una sola, dando un formato 'especial' a


numeros/cifras...
para [tratar de] 'mantener' el 'efecto_columna' que mencionas [como yo lo


veo]...
'presenta' dos [principales] 'problemas/detalles'...
1.- 'ajustar' los espacios 'faltantes' en cifras 'cortas' con respecto de


la cifra 'mayor' [en el rango] y...
2.- el 'tipo' de fuente 'en uso' [seguramente se usara una 'TrueType' o de


ancho 'proporcional'] -?-

una [posible] solucion seria:
-> 'llenar' [previamente] con espacios o algun caracter de ancho 'fijo'


[en la parte concatenada de 'cifras']
-> y... 'disminuir' [el llenado] con los caracteres [numeros enteros] que


'realmente' va a necesitar la cifra
[p.e.] suponiendo que la cifra 'mas larga' [en el rango] sea de 4 numeros


'enteros'... la formula 'aplicable' seria:
=> la separo 'en secciones' para que no se corte por 'exceso' de


caracteres en la linea del mensaje <> =texto(celda_fecha,"dd/mm/aa ")
&celda_numero&" "
&repetir(caracter(1),4-largo(entero(abs(celda_cantidad))))
&texto(celda_cantidad,"#,##0.00 ""EUR"" ")
&celda_texto

otra posibilidad [ya que no creo que 'te guste' el llenado de los espacios


'faltantes'] seria...
-> usar un tipo de letra NO 'propircional' [como Courier, FixedSys,


System, etc.]
-> y buscar una combinacion de espacios " " para el llenado

¿comentas?
saludos,
hector.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida