Aportación al Foro: TreeView Control en un UserForm

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 31 Mar 2006 23:08

En el archivo adjunto encontraran un ejemplo del uso de este control el cual desde mi perspectiva permite presentar en una forma más profesional y amigable una serie de datos en forma jerárquica. Eje: La estructura de una empresa.

Espero le sea de utilidad a alguno de ustedes y se den un tiempo de leer las posteriores notas para entender un poco la necesidad de meterme en el uso de este control.

Historia:

Tengo un archivo con una hoja oculta donde almaceno información como base de datos y otras hojas que mediante formulas crean ciertos reportes.

En la anterior versión del archivo mediante un ControlBox en la hoja el usuario efectúa una selección que utilizo como variable dentro de las formulas.

El archivo cuenta con un botón mediante el cual se puede copiar las hojas como valores a un nuevo archivo sin incluir la hoja de BD. Obviamente en el nuevo archivo no existí­a mas la opción del ControlBox y por consecuencia si se deseaba distribuir todas las sucursales de una Región o Market se tení­an que generar tantos archivos como sucursales tiene esa Region o Market. Lo cual lo convierte en poco operativo y tedioso.

Para solucionar lo anterior la primera opción fue crear un UserForm con un ListBox con selección múltiple, pero me pareció más profesional y de fácil uso para el usuario utilizar el TreeView control.

Ahora en la nueva versión una vez efectuada la selección elimino los registros de la hoja de BD que no fueron incluidos y salvo el archivo con un nombre diferente el cual mantiene la posibilidad de generar nuevos archivos a partir de nuevas selecciones.

Créditos:

1.- El código del procedimiento MakeFamilyTree() es una adaptación casi integra de la página de Masaru Kaki mejor conocido como Colo en los foros en ingles. Este procedimiento es parte fundamental para el uso del TreeViewControl.

En el siguiente link pueden obtener el código original y el archivo de ejemplo de Colo:

http://puremis.net/excel/code/080.shtml

2.- El código del Class Modules cTitleBarHider que permite ocultar la barra de titulo de un UserForm lo obtuve de un libro tipo Add-In (Visual Basic Collection). Que me parece alguna vez estuvo disponible en este foro y que no dudo este incluido en el Manual de Macros en español que se puede comprar en el foro.

3.- Poner todo junto, la creación de los otros UserForm, las opciones que se muestran al seleccionar un nodo del control y obviamente el código de estos procedimientos. Fueron creados en esos momentos de lucidez que me suelen ocurrir de vez en cuando.

Saludos.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Notapor galileogali » 01 Abr 2006 13:56

SAILE:
Pre-Comentario:
Es mediodí­a y me topo con algo semejante, no puedo en este preciso momento digerir semejante desarrollo, de hacerlo deberí­a Trasferirte..... LOS COSTOS DE LA DEMANDA DE "DIVORCIO" que me va a A ENTABLAR mi esposa......

Supongo que en Tu empresa el TREE...será un CUPHRAESUS, es decir un CIPRES, más conocido como ARBOL de .........

Por lo que entendí­ de la receta
.... se COLOca el Addin y entonces todo SAILE como corresponde...

Nota: Hay muchos FOROS importantes sobre EXCEL, donde muchas veces se barajan temas con profundidad, pero nunca me tope con uno donde Nos encante tanto COMPARTIR en forma ESPONTANEA nuestros hallazgos y creaciones.
AUTO-APLAUSOS para nosotros MISMOS...
EXCELUCIONES una COMUNIDAD con PERSONALIDAD PROPIA!!!!!

G
A L
I L E
O G A L I
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 03 Abr 2006 10:37

Hola Galileo,

Gracias por el comentario, tratándose del tipo de negocio donde me desarrollo efectivamente es bastante grande. La empresa se divide en dos divisiones, yo trabajo en la del Este que se divide a su vez en cuatro regiones cada una dividida en sub-regiones y mercados y cuenta con aproximadamente 100 funerarias y 100 cementerios y la otra división debe de andar por el mismo tamaño.

Creo que el compartir nuestros avances o proyectos es una especie de retribución a lo que aprendemos en el foro ya sea en respuestas recibidas o dadas. Estas últimas en muchas ocasiones por no tener la solución de primera mano nos llevan a profundizar en temas que para nosotros eran desconocidos.

Saludos
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor galileogali » 12 Jul 2006 08:22

Sr. Sailepaty: Me he aprovechado de su conocimiento y deliberadamente he optado por la primera de las dos opciones que Ofrecí­a.
Digámoslo más sencillo: descarté reformular el Código y me limité a armar la tabla que alimenta los nodos y sus Ramas.
Resultado: funciona "al pelo", como era de esperar con sus explicaciones.


(voz en Off: "Ahora viene la parte abusiva")

Usted podria decirme (y evitarme pensar ) cómo puedo lograr que:
1) Se elimine el Userform con los Option...."None", "self", "Children",....
y

2) que el evento que se dispara con Click (en el Control Treeview) seleccione, elija: hacia arriba o tal vez habria que decir hacia la "RAIZ".
a pesar de que intuyo que debe estar comprendiéndome aclaro con un ejemplo:

si selecciono "Mariposa Monarca", click en su Cuadradito "SELECTOR", que consecuentemente se seleccionen:

Reino Animal >>Invertebrados >> Insectos >> Lepidópteros >> Mariposa Monarca

y supongo que deberia ocurrir que seleccionando simplemente Lepidopteros se seleccionen:

Reino Animal >> Invertebrados >> Insectos >> Lepidópteros.

Digamos: lograr una equivalencia de funcionamiento con los Arboles Exploradores de Directorios (ohh qué antigí¼edad!!!) , que efectuada una eleccion en cualquier carpeta, se seleccione todas las Carpetas (bien!!!), hasta el /la (indecisión) Raí­z.

Como de costumbre todo lo que hacemos, sin apuro y en la medida en que se halle el tiempo "ad hoc".

Me queda la duda de si deberia Incluir Artrópodos como anterior a Insectos o si este es contenido por.

La verdad es que el uso que le estoy dando a la cuestion nada tiene que ver con taxonomí­as zoológicas, pero creo que a más de un taxónomo vegetal o animal le vendrí­a muy bien el Arbol y más aun si lo "setea" conforme mi pedido. (suena a "presión extorsiva"?).


Hata Pronto
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Notapor galileogali » 25 Jul 2006 20:52

Sr. Sailepaty: ¿Tendré que intentar resolverlo sin su participación?

GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 25 Jul 2006 21:44

Nada de eso mi estimado Galileo, lo que sucede es que es tiempo de presupuestos y como de costumbre estoy de un lado para otro (sufriendo como siempre).

Lo habí­a pospuesto hasta conseguir algún buen ejemplo de estructura pero si en el miedo tiempo se te atraviesa alguna de ejemplo para trabajarla serí­a genial.

Saludos.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Notapor galileogali » 25 Jul 2006 21:52

Me pondre en campaña.....
a SEGUIR "SUFRIENDO"!!

GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Notapor cubaezb » 26 Jul 2006 11:22

Sr Sailepaty gracias por su aporte.

Creo que lo usaré en varios proyectos en los que un control de este tipo supera al Listbox.

Me alegra mucho el saber que el foro se alimenta de aportes tan valiosos como este.

Hasta Luego
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
cubaezb
Miembro Frecuente
Miembro Frecuente
 
Registrado: 30 Nov 2005 19:46
Ubicación: Bogota, Colombia

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 27 Jul 2006 01:54

Antes que nada Cubaezb me alegra que te haya servido el archivo.

A ver mi estimado Galileo este parece que hace lo que estas buscando y solo falta crear la estructura que mas se ajuste a zoológica.

Saludos
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 27 Jul 2006 02:48

Hola Galileo,

Aquí­ tienes otro mucho mas simple que el anterior que lo único que hace al momento de presionar en el nombre del nodo es mover la selección al nivel inmediato superior.

Saludos
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor galileogali » 27 Jul 2006 21:04

Bravo SAILE!!!.
De los dos últimos que enviaste el que se ajusta a mi pedido es el Primero Up & Down.

Para estar redondito me vendria mejor que saltee el paso de programa en el que presenta los OptionButtons y que tome directamente Default la opcion ForeFather

Pero calculo que puedo arreglarme con el código.

El ejemplo en el que lo voy a usar no será provechoso para la mayoria por su singularidad.


Se me ocurre algo mas plural:


Supongamos el Balance General de una Empresa.

BALANCE >>2004
2005
2004>>ACTIVO
PASIVO
CUENTAS PATRIMONIALES

ACTIVO>>CORRIENTE
NO CORRIENTE


CORRIENTE >>DISPONIBILIDADES
BIENES DE CAMBIO
CUENTAS A COBRAR

y abriendo y abriendo el ARBOL en todas sus ramificaciones hasta llegar a las SUBCUENTAS, DE LAS CUENTAS, DE LOS SUBRUBROS DE LOS RUBROS, etc.

PERO AL SELECCIONAR UNA SUBCUENTA, SELA ASOCIARIA , A TODO EL ARBOL HACIA ARRIBA

ES DECIR

CTA CTE PEREZ<<CTAS A COBRAR<<CORRIENTE<<ACTIVO<<EJERCICIO 2004<<BALANCES GENERALES DE XXXXXXX. CO INC.

GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor DOOCH » 27 Jul 2006 21:51

Saludos

Pues esta conversación entre expertos es como oir algo en chino para mí­, un ejemplito sencillo de como crear nodos y ramas por favor

Gracias
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor sailepaty » 27 Jul 2006 22:07

Estimado Gali ya que estamos entrados en análisis de cuentas y aprovechando el break aquí­ esta su pedido

Dooch, las aplicaciones para este control pueden ser tan variadas que se me hace difí­cil generalizar una explicación (además de que no es mi fuerte, te lo puede asegurar mi esposa). La parte totalmente variable es lo que desees hacer cuando seleccionas uno de los nodos. Sin embargo a penas el tiempo lo permita te envió algunas consideraciones que debes de tener en cuenta para crear la estructura a mostrar en el Treeview Control.

Saludos
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
sailepaty
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Oct 2004 12:31
Ubicación: Dallas, TX

Notapor galileogali » 27 Jul 2006 22:24

Simplemente Excelente!!!
Gracias SAILE.......

Vista la Prontitud en el Delivery....
no sé si llamar a su servicio FAST-FILE, o FAST CONTROL....

GALI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
galileogali
Moderator
Moderator
 
Registrado: 07 Ene 2005 22:46
Ubicación: QUIROGA (ba), ARGENTINA

Re: Aportacií³n al Foro: TreeView Control en un UserForm

Notapor ivan_10 » 26 Mar 2008 12:04

Estimado se le ocurre como hacer lo mismo para un archivo como este????...
de antemano muchas gracias
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
ivan_10
Miembro Frecuente
Miembro Frecuente
 
Registrado: 13 Oct 2005 09:29
Ubicación: CHILE

Siguiente

Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados