Script para seleccionar celdas

22/07/2004 - 16:29 por R. C. | Informe spam
Tengo un problemilla, hay una parte de una macro en Excel que no consigo
hacer, y se que es una tontería, me explico.

En un momento, hay seleccionadas dos celdas, una y la inmediatamente
inferior. Quisiera conseguir introducir algo en el script que cambiase la
selección por las dos celdas situadas inmediatamente a la izquierda de
estas, por ejemplo:

Estando seleccionado G3:G4 que pasase a tener seleccionado F3:F4

Es posible??

Muchas gracias.

Ramón Cano

Unidad de Investigación de Accidentes y Dinámica Vehicular
INSIA
Campus Sur UPM - Ctra. Valencia km.7
28031, Madrid
Tlfn: 630.78.24.64 / 91.336.53.35
Fax: 91.336.53.02

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
22/07/2004 - 17:58 | Informe spam
hola, R. C. !

... parte de una macro ... hay seleccionadas dos celdas ... que cambiase ... por las dos celdas ... a la izquierda [...]



para 'desplazar' la referencia a un rango [ya sea para 'trabajar' con el nuevo o cambiar la seleccion]...
usa la propiedad offset(filas_a_desplazar, columnas_a_desplazar) de un objeto rango [p.e.]
Selection.Offset(, -1).Select

saludos,
hector.
Respuesta Responder a este mensaje
#2 R. C.
23/07/2004 - 09:53 | Informe spam
Hola 'Héctor Miguel'

... parte de una macro ... hay seleccionadas dos celdas ... que
cambiase ... por las dos celdas ... a la izquierda [...]



para 'desplazar' la referencia a un rango [ya sea para 'trabajar' con
el nuevo o cambiar la seleccion]...
usa la propiedad offset(filas_a_desplazar, columnas_a_desplazar) de
un objeto rango [p.e.]
Selection.Offset(, -1).Select




Muchas gracias, Héctor, al final lo hice con esta instrucción:

ActiveCell.Offset(0, -1).Range("A1:A2").Select

Ramón Cano

Unidad de Investigación de Accidentes y Dinámica Vehicular
INSIA
Campus Sur UPM - Ctra. Valencia km.7
28031, Madrid
Tlfn: 630.78.24.64 / 91.336.53.35
Fax: 91.336.53.02
Respuesta Responder a este mensaje
#3 Héctor Miguel
23/07/2004 - 10:21 | Informe spam
hola, Ramón !

... al final lo hice con esta instruccion: ActiveCell.Offset(0, -1).Range("A1:A2").Select



solo para 'complementar' las diferencias en el 'accionar' de ambas 'formas'...
1.- la que te habia 'propuesto' [segun lo que solicitabas] =>Selection.Offset(, -1).Select< siempre 'cambia' la seleccion activa, desplazandola una columna a la izquierda
'manteniendo' el mismo numero de celdas [sin importar si es una sola o un rango]
2.- la que finalmente estas usando =>ActiveCell.Offset(0, -1).Range("A1:A2").Select< siempre selecciona un rango de 2 celdas a la izquierda de la celda activa
sin importar si [p.e.] la celda activa estuviera en el medio de algun rango seleccionado
=> en ambos casos habria que 'cuidar' que la seleccion NO 'este' en la columna 'A' <= ;)

saludos,
hector.
Respuesta Responder a este mensaje
#4 R. C.
26/07/2004 - 17:21 | Informe spam
Hola 'Héctor Miguel'

... al final lo hice con esta instruccion: ActiveCell.Offset(0,
-1).Range("A1:A2").Select



solo para 'complementar' las diferencias en el 'accionar' de ambas
'formas'...
1.- la que te habia 'propuesto' [segun lo que solicitabas]
=>Selection.Offset(, -1).Select<= siempre 'cambia' la seleccion
activa, desplazandola una columna a la izquierda 'manteniendo'
el mismo numero de celdas [sin importar si es una sola o un rango]
2.- la que finalmente estas usando =>ActiveCell.Offset(0,
-1).Range("A1:A2").Select<= siempre selecciona un rango de 2
celdas a la izquierda de la celda activa sin importar si [p.e.]
la celda activa estuviera en el medio de algun rango seleccionado =>
en ambos casos habria que 'cuidar' que la seleccion NO 'este' en la
columna 'A' <= ;)



Gracias, adopto tu solución, que parece más funcional ;-)

Ramón Cano

Unidad de Investigación de Accidentes y Dinámica Vehicular
INSIA
Campus Sur UPM - Ctra. Valencia km.7
28031, Madrid
Tlfn: 630.78.24.64 / 91.336.53.35
Fax: 91.336.53.02
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida