Saltarse una celda

12/05/2004 - 19:32 por Esteban Dido | Informe spam
Hola, quisiera conseguir que estando en una celda cualquiera de la columna
A, llamémosla Axx al presionar flecha derecha una vez se posicione en la
celda Cxx, no en la Bxx. ¿Será posible? Estoy usando Excel XP.
Gracias
Un saludo
manacor@flychilesat.net Quita la mosca para enviar un mensaje.

Preguntas similare

Leer las respuestas

#6 Esteban Dido
14/05/2004 - 16:15 | Informe spam
Gracias Héctor por tu ayuda. Te aclaro que yo sólo quiero lo solicitado:
pasar de la columna A a la C pero no a la inversa. Quiero sólo eso, sin
ningún agregado como no poder seleccionar celdas de la columna B, ni ninguna
otra cosa, etc. ¿Se podrá?. Tu fórmula funciona, pero no me deja pasar de la
C a la B y eso me complica.
E.D.
Un saludo
Quita la mosca para enviar un mensaje.
"Héctor Miguel" escribió en el mensaje
news:
hola, chicos ! [perdon por 'meter mi cuchara'] :))

> ... no me deja volver a posicionarme con el teclado en la columna A,


excepto con ... macro [...]
==> o... con el 'mouse' ;)

prueba la siguiente rutina [en el mismo modulo de codigo de 'la hoja']
_________
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Col As Integer: Static Previo As Integer
If Target.Column = 2 Then
If Previo > 1 Then Col = -1 Else Col = 1
Target.Offset(, Col).Select
End If: Previo = Selection.Cells(1, 1).Column
End Sub
¨¨¨¨¨¨¨¨¨¨¨¨¨
=> toma nota de que =>ni siquiera por macro<= 'podras' seleccionar celdas


de la columna 'B' :((
[solo si... 'depositas directamente' en esa/s celdas 'el dato' =>por


macro<=] ;)
=> cuando necesites 'trabajar' en la columna 'B', 'pon':
=>como primera instruccion<= en el procedimiento un 'Exit Sub' [no


olvides 'removerlo'] ;)

saludos,
hector.

Respuesta Responder a este mensaje
#7 Héctor Miguel
14/05/2004 - 18:06 | Informe spam
hola, Esteban !

... aclaro que yo solo quiero lo solicitado: pasar de la columna A a la C pero no a la inversa.
... sin ningun agregado como no poder seleccionar celdas de la columna B [...]



[eventualmente] sucede que las necesidades 'reales' [y las 'añadidas'] van apareciendo 'sobre la marcha' ;)
con estas nuevas indicaciones, puedes 'simplificar' el codigo a lo siguiente:
_________
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static Previo As Integer
If Target.Column = 2 And Previo = 1 Then Target.Offset(, 1).Select
Previo = Selection.Cells(1, 1).Column
End Sub
¨¨¨¨¨¨¨¨¨¨¨¨¨
¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#8 Esteban Dido
15/05/2004 - 00:07 | Informe spam
Gracias Héctor, ahora sí funciona bién. Era lo que necesitaba.
¿Podrías explicarme qué significa cada línea de código para entender el
mecamnismo de funcionamiento de la rutina?
E.D.
Un saludo
Quita la mosca para enviar un mensaje.
"Héctor Miguel" escribió en el mensaje
news:#
hola, Esteban !

> ... aclaro que yo solo quiero lo solicitado: pasar de la columna A a la


C pero no a la inversa.
> ... sin ningun agregado como no poder seleccionar celdas de la columna B


[...]

[eventualmente] sucede que las necesidades 'reales' [y las 'añadidas'] van


apareciendo 'sobre la marcha' ;)
con estas nuevas indicaciones, puedes 'simplificar' el codigo a lo


siguiente:
_________
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static Previo As Integer
If Target.Column = 2 And Previo = 1 Then Target.Offset(, 1).Select
Previo = Selection.Cells(1, 1).Column
End Sub
¨¨¨¨¨¨¨¨¨¨¨¨¨
¿comentas?
saludos,
hector.

Respuesta Responder a este mensaje
#9 Héctor Miguel
15/05/2004 - 02:50 | Informe spam
hola, Esteban !

... que significa cada linea de codigo para entender el mecanismo [...]



1> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
2> Static Previo As Integer
3> If Target.Column = 2 And Previo = 1 Then Target.Offset(, 1).Select
4> Previo = Selection.Cells(1, 1).Column
5> End Sub

+/- la 'logica' fue la siguiente:
1 y 5... 5mentarios :))
2 = declara una variable 'estatica' para [saber] 'de que columna se viene' [al cambiar la seleccion]
3= si 'vas' a la columna 2 =>Y<= 'vienes' de la columna 1... 'brincate' a la columna 3
4 = [invariablemente] 'deja dicho' en cual columna 'te quedaste' [para la siguiente vez del punto 3]

saludos,
hector.
Respuesta Responder a este mensaje
#10 Esteban Dido
15/05/2004 - 03:03 | Informe spam
Muchas gracias, Héctor por la explicación.
:-))
E.D.
Un saludo
Quita la mosca para enviar un mensaje.
"Héctor Miguel" escribió en el mensaje
news:
hola, Esteban !

> ... que significa cada linea de codigo para entender el mecanismo [...]

1> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
2> Static Previo As Integer
3> If Target.Column = 2 And Previo = 1 Then Target.Offset(, 1).Select
4> Previo = Selection.Cells(1, 1).Column
5> End Sub

+/- la 'logica' fue la siguiente:
1 y 5... 5mentarios :))
2 = declara una variable 'estatica' para [saber] 'de que columna se viene'


[al cambiar la seleccion]
3= si 'vas' a la columna 2 =>Y<= 'vienes' de la columna 1... 'brincate' a


la columna 3
4 = [invariablemente] 'deja dicho' en cual columna 'te quedaste' [para la


siguiente vez del punto 3]

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida