Aumentar o Disminuir Decimales con atajos del teclado

17/10/2008 - 07:41 por renemoreno | Informe spam
Hola a todos.

Tengo el siguiente problema, quiero aumentar o disminuir decimales en
un rango, lo ideal sería usar los botones de la barra de formato, pero
para eso tendria que seleccioanr primero el rango. Necesito hacer esto
sin que el usuario seleccione el rango. He buscado un atajo del
teclado, algo como Ctrl+"algo" pero no encuentro nada.

Si grabo una macro solo genera Selection.NumberFormat = "#,##0.0000",
por lo cual supongo que tendre que buscar la posicion del punto y
reducir o aumentar los decimales, segun sea el caso.


Si algiuien sabe que atajo del teclado el corresponde a esto o si
saben como llamar al "comando interno" de excel que hace esto, le
estare muy agradecido que lo comparta.

Saludos
Rene Moreno

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/10/2008 - 08:16 | Informe spam
hola, rene !

(creo que) te saldria mas barato usar los botones de formato para aumentar/disminuir el numero de decimales -?-

(por otro lado) si tu intencion es que el usuario NO "tenga que..." seleccionar un rango para aplicar formatos...
sera necesario que modifiques "estilos" (obviamente, dicho estilo tendra que ser previamente aplicado a "los rangos")
y si seria necesario contar las decimales "actuales" para actuar "en consecuencia" (aumentando/disminuyendo su numero)

(en via de mientras) los comandos internos que hacen este trabajo son +/- los siguientes ejemplos de macro:
obviamente, se estaria "actuando" exclusivamente sobre el rango seleccionado y... (OJO):
-> el numero de decimales "final" sera de acuerdo al numero de decimales de la celda activa (en el rango seleccionado)

Sub Mas_decimales()
Application.CommandBars.FindControl(Id:98).Execute
End Sub
Sub Menos_decimales()
Application.CommandBars.FindControl(Id:99).Execute
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __
Tengo el siguiente problema, quiero aumentar o disminuir decimales en un rango
lo ideal seria usar los botones de la barra de formato, pero para eso tendria que seleccioanr primero el rango.
Necesito hacer esto sin que el usuario seleccione el rango.
He buscado un atajo del teclado algo como Ctrl+"algo" pero no encuentro nada.

Si grabo una macro solo genera Selection.NumberFormat = "#,##0.0000"
por lo cual supongo que tendre que buscar la posicion del punto y reducir o aumentar los decimales, segun sea el caso.

Si algiuien sabe que atajo del teclado el corresponde a esto o si saben como llamar al "comando interno" de excel que hace esto ...
Respuesta Responder a este mensaje
#2 renemoreno
17/10/2008 - 15:38 | Informe spam
Muchas Gracias Hector Miguel, como siempre has sido de gran ayuda. Con
las lineas que me diste use una celda "base" para aplicar el formato y
despues de esas celda lo aplico en el rango de captura del usuario.

Aqui les pongo como quedo al final, espero que algiuen le sirva o si
alguien tiene una idea mejor pues es bien recibida:

'
Option Explicit

Sub Mas_decimales()
Set_Decimales Aumentar:=True
End Sub

Sub Menos_decimales()
Set_Decimales Aumentar:=False
End Sub

Sub Set_Decimales(ByVal Aumentar As Boolean)
Dim sCellFormat As String

'celda base
Range("rCellFormat").Select
If Aumentar Then
Application.CommandBars.FindControl(ID:98).Execute
Else
Application.CommandBars.FindControl(ID:99).Execute
End If

'lee el formato final
sCellFormat = Range("rCellFormat").NumberFormat

'aplica el formato final al rango de captura del usuario
Range("rCaptura").NumberFormat = sCellFormat

'reajusta el tamaño de las columnas
Range("rCaptura").EntireColumn.AutoFit
End Sub
'

Saludos
Rene Moreno




On 17 oct, 01:16, "Héctor Miguel"
wrote:
hola, rene !

(creo que) te saldria mas barato usar los botones de formato para aumentar/disminuir el numero de decimales -?-

(por otro lado) si tu intencion es que el usuario NO "tenga que..." seleccionar un rango para aplicar formatos...
sera necesario que modifiques "estilos" (obviamente, dicho estilo tendra que ser previamente aplicado a "los rangos")
y si seria necesario contar las decimales "actuales" para actuar "en consecuencia" (aumentando/disminuyendo su numero)

(en via de mientras) los comandos internos que hacen este trabajo son +/- los siguientes ejemplos de macro:
obviamente, se estaria "actuando" exclusivamente sobre el rango seleccionado y... (OJO):
-> el numero de decimales "final" sera de acuerdo al numero de decimales de la celda activa (en el rango seleccionado)

Sub Mas_decimales()
  Application.CommandBars.FindControl(Id:98).Execute
End Sub
Sub Menos_decimales()
  Application.CommandBars.FindControl(Id:99).Execute
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __



> Tengo el siguiente problema, quiero aumentar o disminuir decimales en un rango
> lo ideal seria usar los botones de la barra de formato, pero para eso tendria que seleccioanr primero el rango.
> Necesito hacer esto sin que el usuario seleccione el rango.
> He buscado un atajo del teclado algo como Ctrl+"algo" pero no encuentro nada.

> Si grabo una macro solo genera Selection.NumberFormat = "#,##0.0000"
> por lo cual supongo que tendre que buscar la posicion del punto y reducir o aumentar los decimales, segun sea el caso.

> Si algiuien sabe que atajo del teclado el corresponde a esto o si saben como llamar al "comando interno" de excel que hace esto ...- Ocultar texto de la cita -

- Mostrar texto de la cita -
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida