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

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

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

asrainocturna


Hola
En varias ocasiones me han ayudado con este mismo archivo en diferentes cosas, iré directamente a lo que necesito
En la hoja Plantilla tengo estas columnas 
Columna P "PAIS"
Columna Q "DEPARTAMENTOS"
Columna O "MUNICIPIOS"
En la hoja Bancos y Departamentos tengo todos los datos que se utilizan en la hoja plantilla
Tengo la columna 
G y H con El cód y el nombre del departamento de todos los PAÍSES
El la plantilla se debe seleccionar el País de una lista de nombres al hacerlo se va reflejar el código ej:
Escojo Alemania y me escribe DE (para esto tiene un macro que trae los códigos), hasta ahí todo bien pero al intentar ya seleccionar un departamento perteneciente a Alemania me trae los departamentos de todos los países y yo necesitaría que se filtre y solo me muestre los departamentos  del país que se escoja y que además me ponga solo el código de departamento, la parte de los municipios solo esta habilitada para COLOMBIA.
Envío el archivo, Muchas gracias
https://drive.google.com/a/udea.edu.co/file/d/0B741w4yf9ULoTnlvc0hWcVFFdWc/view?usp=sharing
Archivos
M7.xlsm
No tienes los permisos para descargar los archivos.
(129 KB)

wibly


Hola asrainocturna,

Lo necesitas sí o sí con macros?

Yo a esto le llamo VALIDACION CONDICIONAL o DEPENDIENTE. Te adjunto un ejemplo para ver si es esto lo que necesitas. No es un tema muy sencillo de explicar, ya que hay que definir NOMBRES, y luego utilizar la función INDIRECTO al definir las validaciones. Todo esto teniendo las tablas de datos correctamente construidas.

Saludos
Archivos
validacion multiple condicional o dependiente.xls
No tienes los permisos para descargar los archivos.
(42 KB)

asrainocturna


Hola

Macro 

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Count > 1 Then Exit Sub
    If Target.Value = "" Then Exit Sub
    If Target.Row = 1 Then Exit Sub
    '
    Application.EnableEvents = False
    If Intersect(Target, Range("Z1:Z5000")) Is Nothing Then
        Target = UCase(Target)
    Else
        Target = LCase(Target)
    End If
    '
    cols = Array("D", "P", "Q", "AD", "AE", "AJ", "AM", "AW")
    noms = Array("GRUPOCUENTA", "PAISES", "DEPARTAMENTOS", "TIPOSAP", _
                 "CLASEIMPUESTO", "BANCOS", "CLASECUENTA", "GRUPOTESORERIA")
    For i = LBound(cols) To UBound(cols)
        If Not Intersect(Target, Columns(cols(i))) Is Nothing Then
            Call PonerCodigo(Target, noms(i))
            Exit For
        End If

El macro se utiliza para mostrar el código de los datos del algunas columnas donde se incluye las columnas del País "P" y Departamento "Q" se tendría que modificar, pero eliminarlo no, ya que lo ideal es que cuando una persona vaya hacer la elección escoja la descripción y lo que se muestre se el código, así como explique antes se debe reflejar el código



Si Elijo Colombia me debe reflejar CO, ya sabiendo que es CO me debería solo mostrar los Departamento de ese País por decir algo elijo Antioquia, me debe reflejar 05 y ya con los municipio no hay necesidad de códigos.

Gracias

tyno


Hola asrainocturna, saludos Adrian.

asrainocturna: lo que yo no entiendo de mi parte, o no me doy cuenta en tu archivo es como se supone se vinculan los países en las columnas D:E de la "Hoja Bancos y Departamentos" con sus respectivos departamentos de la misma Hoja en las columnas G:H.
Es decir, en el caso de Argentina conozco cuales son las provincias (departamentos) pero no así con el resto de los países.
Si no tienes establecido un indice de referencia (algo elemental cuando se cruzan datos que se supone tienen una relación) entonces lo que te sugiero es que en la columna F asignes el código del Pais a cada departamento, por ejemplo para los departamentos de Colombia le asignas en la columna F el código CO, a los departamentos de Argentina AR, para Alemania a cada departamento DE, etc.
Luego de eso subes nuevamente el archivo y creo que seria posible resolver lo que estas necesitando. Saludos

asrainocturna


Hola Adrian

Modifique el archivo organizando un listado de los departamento de cada país con su respectivo Cód, pero ahora tengo que columna Departamento de la hoja datos esta vacía por lo tanto la columna Q y O no funcionan, al parecer es mas complicado de lo que creí, lo que me interesa es hacer el archivo mas amigable para cualquier persona que lo deba trabajar por eso busco que se pueda eligir el nombre del País pero refleje el código que es el que a mi me interesa y por consiguiente que se filtre y solo me muestre los departamentos de ese País para que también le sea fácil elegir el nombre del que corresponda pero me refleje igualmente su código, ya con la municipio no es tan complicado por que solo esta habilitados para Colombia y estos no llevan código.

No importa que tenga modificar el macro estas columnas si hay otra formar de hacerlo para que quede con se necesita.

Gracias
Archivos
M7.xlsm
No tienes los permisos para descargar los archivos.
(128 KB)

tyno


Hola asrainocturna
Paso el archivo con una macro que creo puede cumplir con lo que has pedido.
Al seleccionar una celda en la columna P se ejecuta un cuadro de lista para seleccionar un, este cuadro de lista te indica el código, nombre de país y si tiene departamentos asignados o no por lo que dice  Datos y s/datos respectivamente.
En la columna Q se selecciona el departamento relativo al país, siempre y cuando tenga. 
Lo que no se si en la columna del departamento va el código o el nombre por ahora hice que se aplique el nombre.
Puede suceder y creo que depende de la capacidad del ordenador que se este utilizando que al ejecutarse un cuadro de lista al intentar seleccionar un registro no se pueda, entonces hay que seleccionar otra celda y volver a seleccionar el lugar donde queremos insertar el dato del cuadro de lista.
Prueba el archivo y avisas, casi siempre falta algo. Saludos
Archivos
M7.zip
No tienes los permisos para descargar los archivos.
(132 KB)

asrainocturna


Hola 

Muchas gracias y si tienes razón en la columna "Q" Departamento también me debe mostrar el código para que la O municipio me muestre los únicos municipios que tengo asignados, estos si no tiene código.

Gracias

tyno


¿entonces? eso sabes como modificarlo? ya esta solucionado el tema?

asrainocturna


Hola

No, no sé como modificarlor Sad

tyno


Buscar este codigo:

Private Sub departamentos_Click()
On Error Resume Next
Dim celda As Range
For Each celda In Selection
celda = departamentos.Column(1)
Next celda
ActiveCell.Offset(0, 3).Select
End Sub

y simplemente reemplaza esto:

celda = departamentos.Column(1)

por esto:

celda = departamentos

Es decir, hay que quitar ese  .Column(1)
Por cierto, hice para que se asignara el código de país y departamento de esta manera porque así se puede aplicar a varias celdas a la vez si se lo desea, o bien aplicar una a la vez.

Recuerda que si esta solucionado el tema dalo por resuelto.


 Saludos

asrainocturna


Muchas gracias por tu ayuda!

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.