UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

Por favor antes de hacer su consulta lean "Recomendaciones para hacer preguntas." Den Click aquí

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

ulukai2


Buen dia, 

Una consulta, puede resultar algo estupida pero e intentado y no logro hacerlo.


Tengo tres hojas en un libro de Excel.

Hoja1, Hoja2, Hoja3

Las tres Hojas son parecidas en formato pero cada una tiene una información diferente, Todas tienen la misma Lista desplegable en la Celda A1.

Quisiera una macro, que al cambiar una opción de Hoja1 A1 coloque esa misma opción en Hoja2 y Hoja3 A1.

Al seleccionar de la lista Hoja2 A1 , esta cambie la misma opción en Hoja1 y Hoja3 A1.

Y al cambiar de la lista Hoja3 A1, esta cambie la misma opción en Hoja1 y Hoja2 A1

En pocas palabras lo que quiero es que cuando seleccione una opción de la lista desplegable de cualquiera de las hojas, bien sea la 1 la 2 o de la 3, esta replique esa misma selección en las demás sin importar el orden que lo haga.

Se que es con la opción Worksheet.Activate pero no logro verlo bien, ya que cuando lo hago me sirve bien en ciertas ocasiones pero cuando muevo el valor de hoja2, me borra las de hoja1 y hoja3.

no se si me explique bien, agradecido por la respuesta.

Igtelo

avatar
Hola ulukai.

Lo insertas o pones en "Thisworkbook". Obviamente debes tener la validación de datos en cada celda.
Código:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

Application.EnableEvents = False
If Target.Address = "$A$1" Then
For w = 1 To 3
Sheets(w).[A1] = Target.Value
Next
End If
Application.EnableEvents = True
End Sub

Por favor acostumbra "siempre" subir un archivo.

Saludos
Ignacio Téllez

ulukai2


No envie el archivo porque pense que era una duda bastante puntual y el archivo pesaba bastante.

Aqui te lo envio, le quite muchas paginas asi que perdio su escencia.

Lo explique de esa forma porque pense que podia editar tu codigo y adaptarlo a lo que queria.

Pero fue mi error y no me supe explicar bien.

en realidad no son hoja 1 a las 3 , vendrian siendo como la 11 a la 13,

y celdas a cambiar no seria la A1 sino la de D1 y en una cambia.


Fijate el archivo , yo lo que quiero que es seleccionar un vendedor de la hoja INFO_PLANA , este seleccione el mismo en las demas. 

y que al seleccionar en las demas, replique esa seleccion en las otras.


Disculpa por no explicarme bien.

Muchas gracias por tomarte la molestia de responder.
Archivos
CONTROL MARGEN_modificar.xlsm
No tienes los permisos para descargar los archivos.
(83 KB)

Igtelo

avatar
Ulukai.

Te dejo 2 formas para hacerlo:
1.- Si tus validaciones no están en misma celda de cada hoja, entonces aplica el evento en cada hoja.

Este es para hoja 11, las otras adecua.

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$D$1" Then
Sheets(12).[D1] = Target.Value
Sheets(13).[E1] = Target.Value
End If
Application.EnableEvents = True
End Sub

2.- Utilizando el mismo evento que en respuesta anterior:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$D$1" Or Target.Address = "$E$1" Then
For x = 11 To 13      'Bucle para hojas 11 a la 13
Sheets(x).[A1:F3].SpecialCells(xlCellTypeAllValidation) = Target.Value 'Celda con validación de datos en el rango A1:F3
Next
End If
Application.EnableEvents = True
End Sub

Saludos
Ignacio Téllez

Igtelo

avatar
Resuelto y cierro por abandono.

Ignacio Téllez

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.