Salto de celdas (con codigo en hoja)

28/09/2006 - 14:42 por kusflo | Informe spam
Tengo el código necesario para realizar un salto de celdas en una hoja. Pero
mi pregunta es la siguiente: ¿En que procedimiento debo meter este código
para que funcione correctamente? Mi intención es meterlo de alguna forma en
la propia hoja sin usar módulos. ¿Es posible?

APPLICATION.ONKEY "{ENTER}", SALTOLUGAR
'Enter normal
APPLICATION.ONKEY "{~}", SALTOLUGAR
'Tabulador
APPLICATION.ONKEY "{TAB}", SALTOLUGAR

Function SALTOLUGAR()

'Esta función tiene como objeto ayudar al usuario en el desplazamiento por
las celdas
C = ActiveCell.Column
R = ActiveCell.Row
Select Case C
Case 2
APPLICATION.Goto Cell(R, C + 1)
Case 3
APPLICATION.Goto Cell(R, C + 1)
Case 4
APPLICATION.Goto Cell(R, C + 2)
Case 6
APPLICATION.Goto Cell(R, C + 3)
Case 9
APPLICATION.Goto Cell(R, C + 1)
Case 10
APPLICATION.Goto Cell(R + 1, C - 8)
End Select
End Function




"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.

Preguntas similare

Leer las respuestas

#1 David
28/09/2006 - 23:02 | Informe spam
Hola, kusflo.

Application.OnKey debe ser ejecutado dentro de un procedimiento, no en la
sección de declaraciones.

En lo personal, te sugeriría que elaboraras un procedimiento para programar
las teclas que necesita tu usuario, y otro para desprogramarlas. Prueba
copiar y pegar este código a un módulo cualquiera de un libro, y luego
ejecuta el procedimiento ActivarTeclas. Cuando desees que las teclas Enter y
Tabulador regresen a su función normal, ejecutas el procedimiento
DesactivarTeclas.

Sub ActivarTeclas()
'Reprogramando las teclas ENTER y TAB:
'Enter numérico
Application.OnKey "{ENTER}", "SALTOLUGAR"
'Enter normal
Application.OnKey "~", "SALTOLUGAR"
'Tabulador
Application.OnKey "^{TAB}", "SALTOLUGAR"
End Sub

Sub DesactivarTeclas()
'Desprogramando las teclas
'Enter numérico
Application.OnKey "{ENTER}"
'Enter normal
Application.OnKey "~"
'Tabulador
Application.OnKey "^{TAB}"
End Sub

Sub SALTOLUGAR()
'Esta función tiene como objeto ayudar al usuario en el desplazamiento por
'las celdas
Beep
C = ActiveCell.Column
R = ActiveCell.Row
Application.StatusBar = C
Select Case C
Case 2
Application.Goto Cells(R, C + 1) 'OJO: Tu procedimiento decía
Cell(R,C+1)
Case 3
Application.Goto Cells(R, C + 1)
Case 4
Application.Goto Cells(R, C + 2)
Case 6
Application.Goto Cells(R, C + 3)
Case 9
Application.Goto Cells(R, C + 1)
Case 10
Application.Goto Cells(R + 1, C - 8)
End Select
End Sub

Espero comentarios de cómo te fue.



"kusflo" escribió:

Tengo el código necesario para realizar un salto de celdas en una hoja. Pero
mi pregunta es la siguiente: ¿En que procedimiento debo meter este código
para que funcione correctamente? Mi intención es meterlo de alguna forma en
la propia hoja sin usar módulos. ¿Es posible?

APPLICATION.ONKEY "{ENTER}", SALTOLUGAR
'Enter normal
APPLICATION.ONKEY "{~}", SALTOLUGAR
'Tabulador
APPLICATION.ONKEY "{TAB}", SALTOLUGAR

Function SALTOLUGAR()

'Esta función tiene como objeto ayudar al usuario en el desplazamiento por
las celdas
C = ActiveCell.Column
R = ActiveCell.Row
Select Case C
Case 2
APPLICATION.Goto Cell(R, C + 1)
Case 3
APPLICATION.Goto Cell(R, C + 1)
Case 4
APPLICATION.Goto Cell(R, C + 2)
Case 6
APPLICATION.Goto Cell(R, C + 3)
Case 9
APPLICATION.Goto Cell(R, C + 1)
Case 10
APPLICATION.Goto Cell(R + 1, C - 8)
End Select
End Function




"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.
Respuesta Responder a este mensaje
#2 David
29/09/2006 - 17:53 | Informe spam
Una opción sería que grabaras un archivo como un complemento (Add-in), y
luego lo instalaras en tu cliente con Herramientas - Complementos. El
problema sería que deberías generar aplicaciones generales. Si en un archivo
las columnas son diferentes, la primera solución no te serviría. Otro
problema es que una vez que has instalado un complemento, no lo puedes
remover, sólo activarlo o desactivarlo, por lo que deberías probar muy bien
tu código antes de hacerlo.

Pruéba esta opción, y comentas cómo te fue (tal vez en un nuevo post, porque
a veces los hilos antiguos ya no se consultan).



"kusflo" escribió:

Ante todo Gracias por la contestación David.
He probado lo que me dijiste y funciona perfectamente lo que sucede es que
la aplicación que estoy creando tiene como objeto instalarla en los equipos
de algunos clientes y al crear un módulo tengo miedo que les de algún tipo de
problemas cuando nos devuelvan la hoja de cálculo por email. (Problemas con
antivirus y demás).
Si puedes darme algún tipo de consejo respecto a preparar aplicaciones excel
con el fin de instalarlas en clientes te lo agredeceria. Un saludo!
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.


Respuesta Responder a este mensaje
#3 Gabriel Raigosa
30/09/2006 - 18:18 | Informe spam
Carpeta
Descripción
Dirección

1
** Microsoft Excel *
http://esnips.com/web/GabrielRaigosa

2
Archivos para usar en clase
http://esnips.com/web/RaigosaClase

3
Fechas y Horas
http://esnips.com/web/RaigosaFechasHoras

4
Formato y Formato Condicional
http://esnips.com/web/RaigosaFormatos

5
Foro Excel
http://esnips.com/web/ForoExcel

6
Funciones de Busqueda
http://esnips.com/web/RaigosaBusqueda

7
Funciones de Texto
http://esnips.com/web/RaigosaTexto

8
Funciones Financieras
http://esnips.com/web/RaigosaFinancieras

9
Funciones Logicas
http://esnips.com/web/RaigosaLogicas

10
Graficos con Excel
http://esnips.com/web/RaigosaGraficos

11
Grupo (Sabados)
Privado

12
Grupo (Viernes)
Privado

13
Grupo Excel Septiembre
Privado

14
Juegos con Excel
http://esnips.com/web/RaigosaJuegosExcel

15
Macros con Excel
http://esnips.com/web/Macros-con-Excel

16
Manuales Excel
http://esnips.com/web/RaigosaManuales

17
Paginas WEB
http://esnips.com/web/RaigosaPaginasExcel

18
Practicas - XLS
http://esnips.com/web/RaigosaPracticasXLS

19
Tablas Dinámicas
http://esnips.com/web/RaigosaTablasDinamicas

20
TEST
http://esnips.com/web/GabrielRaigosa-test

21
Validación
http://esnips.com/web/RaigosaValidacion

22
Varios
http://esnips.com/web/RaigosaVarios

23
VBA - Visual Basic para Aplicaciones
http://esnips.com/web/RaigosaVBA


Gabriel Raigosa
http://esnips.com/web/Raigosa
http://esnips.com/web/ForoExcel
"kusflo" (donotspam)> escribió en el mensaje
news:
| Tengo el código necesario para realizar un salto de celdas en una hoja.
Pero
| mi pregunta es la siguiente: ¿En que procedimiento debo meter este código
| para que funcione correctamente? Mi intención es meterlo de alguna forma
en
| la propia hoja sin usar módulos. ¿Es posible?
|
| APPLICATION.ONKEY "{ENTER}", SALTOLUGAR
| 'Enter normal
| APPLICATION.ONKEY "{~}", SALTOLUGAR
| 'Tabulador
| APPLICATION.ONKEY "{TAB}", SALTOLUGAR
|
| Function SALTOLUGAR()
|
| 'Esta función tiene como objeto ayudar al usuario en el desplazamiento por
| las celdas
| C = ActiveCell.Column
| R = ActiveCell.Row
| Select Case C
| Case 2
| APPLICATION.Goto Cell(R, C + 1)
| Case 3
| APPLICATION.Goto Cell(R, C + 1)
| Case 4
| APPLICATION.Goto Cell(R, C + 2)
| Case 6
| APPLICATION.Goto Cell(R, C + 3)
| Case 9
| APPLICATION.Goto Cell(R, C + 1)
| Case 10
| APPLICATION.Goto Cell(R + 1, C - 8)
| End Select
| End Function
|
|
|
|
| --
| "Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
| aquí el verdadero saber." Confucio.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida