Cómo crear una aplicación de gestión de viajes y viajes en Excel con menú personalizado

Cómo crear una aplicación de gestión de viajes y viajes en Excel con menú personalizado

hola, esto es randy con excel para autónomos y bienvenido al administrador de viajes en el episodio de esta semana, les mostraré cómo crear este increíble administrador de viajes completo con viajes ilimitados, reservas ilimitadas por viaje, archivos adjuntos de costos totales , vamos a tener un viaje calendario y vamos a crear una increíble barra de herramientas personalizada será una capacitación increíble espero que se quede con nosotros no puedo esperar así que comencemos bien bienvenidos a la capacitación tengo una aplicación realmente fantástica después de tanto nosotros no viajamos, pensé que era hora de tener ganas de viajar y vamos a crear un administrador de viajes realmente increíble completo con este tablero dinámico que rastreará nuestras ubicaciones a dónde vamos y, por supuesto, estará completo con un mapa y mucho más con costo y todo podremos agregar viajes guardar viajes nuevos viajes y eliminar viajes también podremos agregar reservas ilimitadas por viaje para que podamos realizar un seguimiento de cualquier tipo de reserva que tengamos voy a tenga una pantalla de administración dinámica, podremos agregar iconos de colores y eso se usará en nuestro calendario de viajes programados aquí, vamos a mantenerlo capaz de rastrear todo lo que necesitamos en este calendario cada tipo de reserva individual, ya sea hotel o automóvil o vuelo o algo así puede tener colores dinámicos íconos dinámicos y mucho más podremos agregar seleccionar un año diferente y podremos cambiar los meses y podremos hacer mucho más , así que vamos a crear eso y podremos agregar una actualización, así que muchas cosas suceden en esta aplicación además de eso, vamos a agregar esta barra de herramientas realmente dinámica y genial, una interfaz de usuario personalizada barra de herramientas voy a mostrarte cómo crear eso si nunca has creado uno antes es muy divertido y vamos a entrar en eso, así que tenemos mucho que cubrir, espero que te quedes con esto , si le gusta esta aplicación, puede descargarla de forma totalmente gratuita utilizando sus enlaces en la descripción, por supuesto, vamos t eso con su correo electrónico o con facebook messenger y se lo enviaremos directamente a usted, sin embargo, si desea apoyarnos con este canal, hay muchas maneras de hacerlo, incluida nuestra cuenta de patreon, patreon, por supuesto, es una excelente manera de obtener mucho más que estos entrenamientos tengo cosas como todas estas imágenes de íconos y todo lo que implica y recursos adicionales vamos a poner eso en nuestra cuenta de patreon tengo que tengo entrenamientos Obtendré las capacitaciones antes que nadie. Videos descargables. Aplicaciones descargables. libro de códigos, así que espero que se unan a nosotros allí mismo en Patreon. Incluiré los enlaces a continuación, está bien, entremos en esto, así que tenemos un tablero realmente dinámico, realmente cuatro partes de este tablero, vamos a poder. seleccione diferentes viajes y luego e Cada viaje tiene su propia reserva, así que ya sean vuelos, automóviles, taxis o cualquier comida, también podemos tener eso y, por supuesto, en ese calendario que viste, tiene algunos componentes diferentes y luego vamos a agregarlo todo. vamos a traerlo con esta pequeña barra de herramientas aquí, así que vamos a hacer eso ahora que el administrador es un poco simple relativamente, tenemos una carpeta donde almacenamos esos íconos que necesitaremos tener esos íconos porque estarán disponibles para nosotros en nuestro calendario, así que vemos esos íconos diferentes, vuelos, automóviles, hoteles y todas esas cosas y, por supuesto, también en nuestros administradores queremos realizar un seguimiento de la carpeta de documentos de viaje estos documentos de viaje cuando entramos en los viajes que podemos almacenar ilimitados podemos agregar diferentes documentos si queremos hacer eso o podemos agregar muchas cosas diferentes con eso, así que tenemos muchos si queremos agregar una imagen, simplemente podemos agregar una imagen cualquiera tipo de documento a eso para que sepa que los documentos son realmente importante para que cada reserva individual pueda tener documentos individuales correctos, por lo que podemos, por supuesto, esos documentos pueden ser jpegs, pueden ser word o cualquier tipo de cosa, así que creo que veamos, tenemos uno aquí, este tiene algunos documentos diferentes aquí, creo. el taxi de París aquí tiene algunos diferentes aquí, así que tenemos un pdf, podremos obtener una vista previa de ese pdf , también tendremos un jpeg o incluso podemos hacer documentos de Word, podemos obtener una vista previa allí y nosotros vamos a poder abrirlos o vamos a poder borrarlos simplemente haciendo clic en este pequeño icono aquí va a abrir cualquier aplicación que tengas, de hecho, si es un visor de pdf podremos para abrir eso, así que tengo un pequeño visor de pdf aquí para mi zorro en pdf y puedes abrirlo para que podamos verlo también, así que tenemos muchas características en esta aplicación, estoy Voy a tratar de hacerlo paso a paso si tiendo a hablar un poco rápido, lo cual suelo hacer cuando me emociono. Con estas aplicaciones porque me encanta traértelas cada semana, por supuesto, sigue adelante y reduce la velocidad de ese video, pero intentaré ir lento y recordaré, oh, olvidé una función que se muestra en el itinerario, estaremos capaz de mostrar el itinerario y vamos a poder imprimir el itinerario, por lo que hay tantas funciones que, como saben, a menudo se me olvidan, por lo que es mejor que esté atento a la aplicación completa, nunca se sabe qué funciones pueden aparecer durante estas aplicaciones y, por supuesto Voy a explicarte cada línea de código. Algunas de estas las hago desde cero, pero en una complicada como esta, donde hay mucho código, las revisaré paso a paso, lo que nos ahorrará mucho tiempo. ya que estos videos de capacitación duran más de una hora, a veces dos o incluso más, por lo que probablemente serán dos, veamos cómo va bien, así que entremos en el código y entremos en el libro de trabajo y veamos qué estamos haciendo. cierto, tenemos la capacidad de crear un nuevo viaje que se está realizando g para borrar todo cuando seleccionamos en un viaje va a cargar ese viaje no hay reservas asociadas a menos que seleccionemos una reserva específica si queremos agregar una nueva reserva va a borrarlo y podemos agregar cualquier reserva que queramos así que digamos que queremos agregar un hotel, digamos una ciudad o cualquier ciudad, así que podemos hacer un hotel nevada si queremos hacerlo bien y luego podemos establecer un tipo de reserva aquí tenemos una lista completa de tipos de reserva que proviene del administrador, podemos poner el número de confirmación aquí si tenemos un número de confirmación, queremos una fecha de inicio, si tenemos un calendario emergente, otra característica que olvidé mencionar, así que queremos ingresar una fecha de inicio específica, podemos y tenemos una hora adecuada si queremos establecer una hora de entrada podemos hacer una hora de entrada en cualquier momento que queramos fijemos una hora de entrada razonable agradable y temprano en la mañana allí y luego, por supuesto, cuando estemos voy a agregar el control de eso, así que digamos que queremos quedarnos allí unos días y luego agregamos al control kout tiempo o algo así un sitio web de correo electrónico si desea ubicación dirección ciudad así que tal vez hagamos las vegas una de mis ciudades favoritas y luego haremos podemos hacer esto es bueno para el estado o la ciudad o los condados haremos solo haz nevada, está bien, ahora lo tenemos controlado, así que ahora hemos agregado algo a este viaje por europa, aunque realmente no tiene sentido ir de europa a nevada, pero entiendes algunas notas para que podamos ahorrar esa reserva y se guardará automáticamente , se pondrá en la parte inferior para que vea que ahora tenemos esto, vamos desde Roma hasta Las Vegas, así que será divertido y podemos agregar documentos, por supuesto, como yo acabo de mostrárselo bien, muy bien, así que ahora en nuestro tablero, por supuesto, vamos a mostrar que tenemos la capacidad de mostrar los viajes y algo como lo repasamos antes, está bien, genial, así que tenemos eso que se ve muy bien y por supuesto, si desea eliminar esa reserva, todo lo que tenemos que hacer es hacer clic en Eliminar, se eliminará esa reserva y esa reserva se ha ido ahora, así que realmente tenemos algunas características geniales con esto que muestra el itinerario lo que va a hacer va a ocultar el primer conjunto de columnas mire esto cuando ocultamos esa iteración tenemos columnas visibles desde g a través de o está bien y luego tenemos un conjunto de botones cuando mostramos esa iteración, ocultará esas columnas, lo mostrará a través de ac y también determinará todas esas paradas que estamos haciendo para eso en particular y luego es vamos a ponerlos en orden y luego lo que vamos a hacer es poder imprimir esa iteración para imprimir de forma predeterminada para que podamos imprimir fácilmente el itinerario, tiene números de confirmación, el tipo y el nombre y, por supuesto, el origen al tiempo junto con la fecha a la fecha y las dos veces el costo y las notas asociadas con eso también dentro de nuestro itinerario tenemos un costo total del viaje así que sabemos el costo total de ese viaje vamos a usar eso y por supuesto queremos saber si vamos a ir a hawa ii, eso es realmente genial, también les mostraré cómo poner esta función de mapa realmente genial, y saben si queremos que esto sea inherente a Excel, lo cual es genial ahora que estoy usando la versión más nueva de Excel en este caso, generalmente uso uno más antiguo y casi siempre casi nunca uso funciones, pero esta función me gusta mucho, por lo que esta función vendrá solo en versiones más nuevas de Excel para que el mapa, pero todo lo demás estará bien, así que va a mapa, le mostraremos cómo poner estos íconos, será genial volver a los viajes, así que, por supuesto, podemos agregar, editar y actualizar esas reservas como queramos, ahora lo mejor que podemos hacer es que queremos asegúrese de que queremos separar todo en datos claros adecuados, así que dentro de esto tengo una lista de nuestros viajes ahora vimos los tres viajes tenemos una identificación de viaje que es única para cada viaje un nombre de viaje en consecuencia y luego el de fecha la hasta la fecha y luego solo algunos detalles del viaje, por lo que el viaje es muy básico y ahora para cada uno ch viaje individual recuerde la identificación del viaje uno dos o tres tenemos una lista de reservas ahora que irá a una tabla separada si vamos aquí vemos que tenemos una identificación de reserva que también es única para cada reserva que tenemos tengo una identificación de viaje que es única para ese viaje viaje número uno viaje número dos o viaje número tres nombre de reserva correcto con el nombre de esa reserva cuál es el tipo de confirmación para que todos los campos asociados con esa reserva específica se almacenen en esta tabla individual, así que todo lo que vio aquí y vamos a usar el mapeo de datos como lo hacemos a menudo, si no lo ha visto antes, lo revisaré y básicamente lo que hará es mapear estos campos j11 m11 011 j12 va a mapear esas columnas individuales con los campos individuales en nuestros viajes, por lo que si nuestro nombre de reserva es j11, nuestro tipo de reserva es m11 y nuestra información aquí, la confirmación aquí es o11, así que está mapeado, está bien, entonces tenemos esos viajes. reservas también tenemos algunos viajes documentos ahora notamos cuando pudimos agregar viajes, por supuesto, podemos agregar esos documentos de viaje, podemos agregar información de reserva aquí si queremos, así podemos obtener una vista previa o no podemos eliminarlo, así que también queremos almacenar una lista de documentos que se van a adjuntar y que van a estar aquí llamados dentro de nuestros documentos de viaje y van a estar aquí dentro del viaje, así que de acuerdo con eso, tenemos una identificación de viaje individual , tenemos la reserva id el nombre del documento la fecha el tipo y la ruta en la que vamos a poder crear carpetas y luego una fila asociada con eso y solo vamos a usar una pequeña tabla dinámica en eso pero para la mayoría parte, todo lo demás es relativamente simple , directo, así que vamos a entrar en eso, está bien, entonces lo que me gustaría hacer es comenzar con los viajes, esa es la parte central, ¿cómo creamos nuevos viajes y cómo lo hacemos? borramos viajes y así sucesivamente también alguna información aquí en nuestras columnas aquí tenemos información que quiero saber si selecciono un viaje quiero saber la identificación que está asociada con ese viaje , así que observe que la identificación va a cambiar de 1 a 2 a 3 a medida que seleccionamos esos viajes y la fila que está asociada con ese viaje tengo algunos rangos con nombre que nos ayudarán en esto, echemos un vistazo a algunos de esos rangos de nombre y revisemos los que he creado para esto, así que quiero saber adentro comencemos con el nombre del viaje aquí vamos a hacer un viaje así que tenemos una identificación de viaje aquí ahora la identificación del viaje es un rango dinámico con nombre para todas las identificaciones de viaje y también queremos saber el nombre del viaje que es un rango dinámico con nombre para todos los nombres de nuestros viajes y luego también quiero saber las ciudades de viaje correctas y ese será el individuo, lo revisaremos en un minuto a medida que lo revisemos, así que será algo diferente y eso es para viajes, pero también lo que quiero hacer es repasar algunos de los nombres de las reservas, así que si volvemos a las fórmulas y d rango con nombre echamos un vistazo dentro de las reservas que vamos a ver que tenemos una identificación de reserva dinámica y que está asociada con todas las reservas individuales es algo nuevo y también quiero saber la identificación de viaje que está asociada con cada idea de libro individual, vamos a poner eso en un rango con nombre y también los tipos que quiero saber los tipos de reserva correctos, así que todos aquellos que nos ayudarán con esos tableros y vamos a entrar en cada uno individualmente, así que eso es algunos de los rangos básicos con nombre porque necesito usar esa identificación de viaje de rango con nombre para determinar la fila, así que si sé que este viaje es 1. Quiero saber en qué fila está asociado si miramos en la lista de viajes vemos ese viaje id 1 está ubicado en la fila 4. Entonces, todo lo que vamos a hacer es usar una fórmula de coincidencia, lo hemos hecho muchas veces aquí y, por supuesto, vamos a usar b1, vamos a usar la coincidencia y voy a agregar 3 porque el primero comienza en la fila 4. También quiero saber la identificación del próximo viaje, vamos a usar el ma x fórmula más 1 máximo de todas las identificaciones de viaje más 1 nos dará la próxima disponible porque cuando creo una nueva , esta nueva identificación de viaje se usará para la siguiente. También quiero saber qué fila ha sido seleccionado si selecciono una fila diferente, usaremos el formato condicional y se basará en eso, así que echemos un vistazo dentro del formato condicional y veamos qué reglas está bien, por supuesto, eso se basará en b4 si mire b4 la fila que está asociada antes quiero colorear ese turquesa oscuro con la fuente blanca y también quiero llamarlo filas alternas para filas pares e impares si hay un valor contenido quiero llamarlo la rosa par un poco blanca y quiero llamarla la rosa impar un azul muy claro y vamos a obtener esto así es como obtenemos este color alterno aquí vamos a hacer exactamente lo mismo para nuestras reservas no vamos a repasar eso, pero básicamente tenemos una fila seleccionada, nuestro sele Filas cted ubicadas aquí en b10, está bien, tengo el mismo formato condicional para roles pares e impares, así que básicamente este es el libro seleccionado que mira b10 cuando hago una selección cuando hago un cambio de selección de e5 hacia abajo que quiero hacer seguro de que hay un valor dentro de e si hay un valor i entonces lo que quiero hacer es cargar los detalles de ese viaje quiero poner en el nombre del viaje la fecha desde y hasta la fecha y quiero poner los de aquí está bien, entonces, ¿cómo lo hacemos bien? Eso se basará en el evento de cambio de selección, así que entremos en eso y echemos un vistazo rápido dentro de eso, así que vamos a ir a los desarrolladores visual basic alt f11 para obtener hay un atajo y vamos a entrar en el código aquí ahora echamos un vistazo al código dentro de aquí nos vamos a centrar en esta hoja nuestra hoja de viaje es en la que me quiero centrar y vamos para centrarme en la selección cambio de evento hoja de cálculo cambio de selección está bien y lo que quiero hacer hay algunas personas formas duales que queremos ocultar automáticamente si selecciono en un documento específico quiero que aparezcan ciertas formas, así que echemos un vistazo a esto aquí y verás este grupo aquí hay dos grupos de vamos a acercarnos un poco para que puedas Vea, básicamente , uno nos permitirá ver la imagen y lo que nos permitirá eliminar esa imagen o archivo adjunto para que esas dos formas estén en un grupo y eso se llama el grupo de documentos . Solo quiero que aparezca si el usuario hace un cambio de selección dentro, así que cualquier otra cosa que quiero que esté oculta, así que lo primero que quiero hacer en cualquier momento es verificar si hay un cambio de selección si ese agarre está visible, quiero ocultarlo, está bien, vamos a haga eso, quiero asegurarme de que eso también esté oculto, así que echemos un vistazo aquí dentro del código y observemos que si el grupo de documentos de formas está visible, entonces ocúltelo. El documento de formas visible es igual a falso. Voy a ocultar eso también. vas a usar el desvanecimiento guardado m mensajes cuando guardo ese viaje quiero que se desvanezca el mensaje este llamado viaje guardado se va a desvanecer automáticamente correcto voy a hacer lo mismo para la reserva si guardo esa reserva quiero que aparezca otro mensaje de desvanecimiento correcto aquí llamado guardado de reserva que le permitirá al usuario saber que la reserva se guardó y se desvanecerá ahora quiero asegurarme de que esas son dos formas quiero asegurarme si por alguna razón esas dos formas están visibles que deberían no será solo por un corto tiempo , quiero asegurarme de ocultarlos para que podamos hacerlo con estas dos líneas de código si tripp guardó un mensaje que es una de esas formas, el nombre de las formas es visible, luego ocúltelo, vamos para hacer ambas cosas con la forma guardada de la reserva y el recorte, de modo que esas dos formas que acaba de ver solo nos aseguraremos de que estén ocultas porque solo queremos que aparezcan temporalmente a corto plazo tal como está siendo guardado una vez que está hecho y eso es todo lo que también quiero hacer seguro de que ese calendario está oculto ahora, este es un código que se asegura de que el calendario el calendario que solo queremos mostrar o ese selector de fecha emergente que viste solo cuando selecciono una fecha si selecciono cualquier otra cosa quiero asegurarme está oculto, por lo que también tiene que estar anidado. Hay algún código en el que no vamos a entrar, que se asegurará de que exista. Está bien, si no existe, lo tomará de una hoja oculta aquí y es voy a reemplazarlo porque esta es una forma aquí, así que si se elimina por algún motivo, irá a una hoja oculta ahora, si vamos a mostrar estas hojas, hay una hoja oculta llamada vaca emergente, es va a tomar, hay un código, va a tomar este calendario y esta hoja oculta y lo va a colocar directamente allí, así que lo reemplazará, así que mantenemos esta hoja oculta, solo voy a hacer clic con el botón derecho y ocultarla. lo siento, está fuera de la pantalla allí, pero haga clic con el botón derecho en la hoja y ocúltela para que esta c oda aquí nos va a ayudar con ese código de cambio de selección aquí vamos a configurar el calendario solo estamos comprobando si el calendario si no existe vamos a ejecutar una macro que simplemente va para reemplazar eso, también quiero saber si el calendario está visible, vamos a ocultarlo, eso es todo, y luego también quiero asegurarme de que si el recuento objetivo es grande es mayor que 2, entonces x del sub, eso significa que si el el usuario realiza un cambio de selección en más de una celda a la vez y luego sale de la sub y eso realmente ayuda a eliminar cualquier error que pueda existir que pueda suceder mientras seleccionamos bien ahora lo que vamos a hacer es vamos para centrarnos solo en el cambio de selección que mencioné de e5 a e99, eso es en la selección de viajes, por supuesto, queremos asegurarnos de que e contenga un valor, si e no contiene nada, no hay nada que debamos hacer correctamente, así que queremos asegurarnos de que e contiene un valor si lo hace, entonces queremos ejecutar la macro th at va a cargar ese viaje, así que lo que quiero hacer es tomar cualquier fila que el usuario haya seleccionado. Quiero colocarlo directamente dentro de b4 aquí mismo. Eso es lo primero y luego lo que quiero hacer es quiero. para asegurarnos de que podemos establecer una identificación correcta una vez que sepa la fila, también tengo esta identificación oculta ubicada aquí en la columna d si echamos un vistazo a esto, vemos dentro de nuestra barra de fórmulas que esa es una si echamos un vistazo a esto son dos y tres, ahora están ocultos automáticamente, podemos hacerlo con un poco de formato aquí, formato personalizado para que veamos la costumbre, vamos a usar el formato personalizado para ocultar eso y qué es eso, no va a ser una muestra, solo vamos para usar tres comas tres puntos y comas aquí uno dos tres y eso lo ocultará automáticamente para que no podamos verlo, así que seleccionamos aquí volviendo aquí al formato personalizado, ahora vemos que hay un formato personalizado de esos tres puntos y comas que va a ocultarlo automáticamente, está bien, eso es amable muy bien, pero está ahí, puede verlo si en la barra de fórmulas puede verlo, está allí o si hace doble clic en la celda, también puede verlo, así que lo que quiero hacer es tomar esa identificación que es el id que está asociado con lo que sea que esté en d y quiero colocarlo directamente dentro de b1, así que hacemos eso con esta columna aquí b1 es igual a lo que sea que esté en d y la fila de destino vamos a establecer esa identificación de viaje y luego vamos a ejecutar la macro para cargar ese viaje que es la macro a la que voy a entrar ahora y que se ubicará justo en nuestra macro de viaje, así que si hago clic en las macros de viaje, tenemos la lista de carga, guardamos la actualización y vamos a comenzar. solo el que cosí y luego volveremos arriba, está bien, lo primero que quiero hacer es asegurarme de haber borrado todas las celdas asociadas con todas las celdas de reserva, todas las celdas de documentos y todo el viaje una vez que hayamos hecho eso en dos líneas de código, quiero asegurarme de que si hay alguna vista previa, cualquier vista previa del documento para ejemplo, esta forma particular aquí, no digamos que uno busque la forma asociada con eso, lo que significaría una reserva específica en esta en particular, tenemos algunas reservas, esto siempre se llamará vista previa del muelle, esta pequeña forma aquí se llama vista previa del muelle como yo cargarlo, quiero asegurarme de que haya alguna forma que con este nombre se elimine, si no está allí, podría crear un error, por lo tanto, he envuelto un currículum en el aire a continuación y en el aire va a cero, así que vamos a eliminar elimine cualquier imagen existente, pero existe, está bien, también quiero asegurarme de que haya una fila asociada con esto, una fila calculada usando eso, si está vacía por algún motivo, no podemos cargarla, esa es la fila asociada con nuestro viaje, por lo que es muy importante y lo necesitamos aquí b2 si está vacío, hágale saber al usuario que seleccione un viaje correcto, está bien, vamos a desactivar la actualización de la pantalla de la aplicación a falso, eso hará que las cosas sean mucho más rápidas que lo que vamos a hacer es fueron voy a determinar nuestras rutas de viaje basadas en b2 en una variable, luego voy a ejecutar solo un mapeo de datos básico de la columna 2 a 5 y vamos a traer los valores y le mostraré lo que eso significa básicamente todo lo que vamos a hacer es ejecutar dentro de nuestra lista de viajes. Tengo algo básico de dos a cinco aquí b a cinco. Vamos a ejecutarlo para que sepamos la fila, así que en i5 estamos vamos a poner esto en k5 vamos a poner esto y en n5 vamos a poner esto y en i6 vamos a poner esto para que el mapeo de datos tome cualquier valor en base a cualquier fila y lo va a colocar directamente dentro de aquí dentro de i5 dentro de k5 o dentro de n5 o dentro directamente de i6 eso es todo lo que vamos a hacer y eso es exactamente lo que hará esta línea de código aquí mismo agregar una aplicación de actualización bien entonces lo que queremos hacer es que quiero cargar la lista de reservas ahora hay otra macro a la que vamos a acceder en un momento lista de reservas, eso significa que quiero saber todo el b reservas asociadas con este viaje aquí todas esas reservas bien quiero cargar eso para que la macro funcione tan bien así que depende de la carga del viaje está bien, entonces estamos bien, por supuesto, vamos a activar la actualización de la pantalla de la aplicación De acuerdo, repasaremos esta macro pronto, pero primero queremos cubrir todas las macros asociadas con este viaje, así que regresemos y comencemos en la parte superior. Lo primero que queremos hacer es cargar la lista de viajes correctamente. Si ejecuto esta macro, hacemos esto cada vez que guardamos un viaje. Si hago un cambio. Si hago un cambio y digo que quiero llamar a este europe22023 correctamente y guardo ese viaje. Necesito asegurarme de actualizar esta lista. aquí con el nombre correcto correcto, así que esta lista tiene una macro que se ejecutará cuando guarde ese viaje, es esta macro la que se ejecutará y actualizará automáticamente esta lista, así que eso es exactamente lo que haremos a primera hora lo que queremos hacer es con la pantalla de viaje quiero borrar la fila seleccionada lo primero que quiere hacer es borrar esa fila seleccionada porque no sabemos en qué orden va a ser, así que b4 esa fila de viaje seleccionada se va a borrar. También quiero borrar cualquier cosa de todas las identificaciones. ubicado en la columna d hasta e y hacia abajo, así que quiero borrar todo, así que desde d hasta e 99 estamos borrando todos los viajes anteriores y los números de identificación una vez que tenemos eso, también quiero centrarme directamente en la base de datos de viajes a la derecha la base de datos de viajes es donde vamos a cargarlos todos, así que si echamos un vistazo dentro de nuestra lista de viajes, este es el que queremos, quiero cargar todos esos nombres de viaje correctamente y quiero las identificaciones de viaje y quiero asegúrese de que tenga una fecha actual, así que vamos a traer todo aquí estas listas únicas justo aquí solo para asegurarnos de que tenemos todo lo que necesitamos, así que vamos a determinar la última fila con el viaje el última fila, vamos a borrar el contenido de cualquier resultado anterior, quiero asegurarme de que tenemos el último t fila y luego lo que vamos a hacer es en caso de que no haya filas flash de datos de menos de tres, vamos a salir de esto vamos a ejecutar un filtro avanzado porque solo quiero asegurarme de que tenemos el hasta la fecha correcta y por qué es tan importante por qué es tan importante bien porque tenemos un filtro en esta otra característica no lo mencioné de nuevo quiero incluir los viajes completados o no, así que si selecciono aquí anulo la selección no lo hacemos tengo fichas completas, pero si selecciono aquí, quiero que se ejecute la misma macro, así que si hay un viaje que tal vez no queríamos, devolvámoslo, tal vez un año diferente, cambiemos esto a 2021, correcto, eso se completaría aquí, así que 2021 y cambiemos el año aquí, regresemos y pongamos esto en la historia un poco, así que traigamos esto aquí y lo pongamos aquí, veamos el 31 de marzo, está bien, ahora voy a guardar ese viaje y, oh, déjame actualizar. eso y poner la fecha correcta aquí 2021 y ahora lo que queremos hacer es guardar eso t rip bien y ahora vemos que solo aparecieron dos viajes correctos, coincidieron con los del pasado, pero si incluyo los más antiguos, aparecerán automáticamente, así que es realmente genial, así que lo que quiero hacer es quiero sé cuáles están en el futuro y tal vez solo quiera filtrar aquellos en el futuro si se han completado. No quiero mostrarlos, así que podemos hacerlo muy fácilmente , pero necesitamos algunos criterios para eso. así que dentro de nuestra lista de viajes, lo que voy a hacer es configurar la fecha actual. Si sé que he decidido que no mostraremos ningún viaje anterior o viajes completados, voy a anular la selección. ahora tenemos una celda específica que está vinculada al valor, así que cuando formateamos esa celda vemos que el enlace es b5 y observamos b5 y b5 como falsos, ahora lo que queremos hacer es básicamente tomar algunos criterios aquí y podemos hacer un poco de una fórmula, así que básicamente si b5 es igual a verdadero, entonces mostraré cualquier cosa con un derecho de 2 días cualquier cosa independientemente, sin embargo, si es falso, quiero mostrar algo mayor o igual que el día actual y eso es para las dos fechas, así que cualquier viaje que tenga dos fechas mayores o iguales que la fecha actual, eso significa pasar todo lo que se completó es no va a aparecer y así es como obtenemos este criterio aquí, así que es muy fácil y vemos que se ha almacenado aquí, así es como podemos ver fácilmente que tenemos esos viajes para que podamos mostrar ambos en ellos , así que vamos para usar eso como nuestro criterio, entonces nuestro criterio será n2 a n3 y eso es solo lo que tenemos en nuestro filtro avanzado, así que vamos a tomar todos los datos de a3, observe las filas de encabezado a3, podemos usar nuestros criterios de n2 a n3 y queremos que esos resultados lleguen a través de p2 y q2 p2 ahora solo queremos la identificación y queremos el nombre del viaje y eso es lo que tenemos aquí p2 a q2 solo tenemos el nombre de identificación porque es la única identificación en el nombre que queremos traer de vuelta a nuestros viajes y ponerlos en d5 y d propio y eso es lo que vamos a hacer, vamos a determinar la última fila de resultados en función de la columna p si los últimos resultados fueron menos de 3 , entonces vamos a salir de esto; de lo contrario, lo traeremos información aquí dentro de las fichas d5 a e más dos, necesitamos agregar dos porque estamos trayendo eso a la fila cinco como el primero, pero proviene de p3, así que sabemos que necesitamos aumentar eso y eso es todo lo que tenemos que hacer bien, así es como cargamos la lista, pero cómo, sin embargo, cómo guardamos o actualizamos eso y, por supuesto, esa es la macro que está vinculada cuando guardamos o actualizamos cuando hago clic en este botón , ya sea que estemos guardando uno nuevo o estamos actualizando el existente, queremos que aparezca bien, entonces, ¿cómo vamos a hacerlo? Bueno, somos relativamente fáciles. Lo primero que queremos hacer es asegurarnos de que tenemos los campos requeridos. Quiero asegurarme de que hay un nombre de viaje a partir de la fecha y a la fecha quiero asegurarme de que todos estén completos si alguno de esos están vacíos , por supuesto, infórmele al usuario, de modo que eso es lo primero que haremos si i5 está vacío, k5 o n5 están vacíos, luego infórmele al usuario que agregue un nombre de viaje desde y hasta la fecha antes de guardar el viaje . Voy a salir de esto. También quiero verificar si hay nombres de viaje duplicados . No quiero tener nombres de viaje duplicados. Quiero asegurarme de que cada nombre de viaje sea único. Ahora podemos verificar eso con una fórmula simple derecha y vamos a tener una fórmula roja aquí y esa fórmula la vamos a envolver en caso de error necesito diferenciar necesito saber si este es un viaje nuevo o es un viaje existente para que podamos separemos que ahora sabemos si es un nuevo viaje, b2 estará vacío, lo sabemos porque no habrá una fila calculada y ahora que sabemos que podemos mirar hacia atrás dentro de nuestro nombre de viaje duplicado si b2 es igual a md entonces de Por supuesto , nos vamos a centrar, sabemos que es nuevo, entonces solo tenemos que comprobar si existe ese mismo nombre. dentro de la lista de nombres de viaje, entonces lo que voy a usar es usar la fórmula de coincidencia ahora emparejar filamento ahora sé si hay un error con este significado, no se encuentra bien si i5 mira i5 estoy mirando dentro del nombre del viaje, si no se encuentra, dará como resultado un error, así que lo que quiero hacer es si vamos a verificar si hay un error, si ese error es falso, lo que significa que hay una coincidencia, no hay ningún error, ¿verdad? aire es igual a falso, lo que significa que hay una coincidencia si hay una coincidencia, vamos a poner verdadero; de lo contrario, vamos a poner falso, está bien, así que esto es para si se encuentra si está dentro si es un viaje nuevo sin embargo qué pasa si es un viaje existente entonces lo que quiero hacer es buscar esto y quiero ver si se encuentra en la fila cinco si es genial si se encuentra en otra fila entonces sabemos que hay un tapete hay un duplicado así que nosotros podemos hacer eso si estamos buscando el nombre del viaje más tres a la derecha estamos buscando la coincidencia si estamos buscando esa fila y una p lus 3 significa que esta es la fila asociada con ella, se encuentra en esta fila si no es igual a b2 significa que se encuentra en otra fila, entonces sabemos que hay un duplicado , entonces lo pondremos en verdadero; de lo contrario, es falso ahora, si hay algún error, solo voy a poner falso eso es todo lo que tenemos que hacer en cualquier momento esto es cierto todo lo que tenemos que hacer si pongo hawaii aquí sabemos que es una coincidencia, sabemos que se encuentra en otra fila esto irá a Cierto , lo sabemos porque es por eso que ya se usó, por lo que automáticamente no nos permitirá guardar un viaje. Dirá que el nombre de este viaje ya se usó. Por favor, cree un nombre de viaje único. Eso es todo lo que tenemos que hacer para simplemente verifique si ese duplicado es nuevo y podemos hacerlo aquí si b6 es igual a verdadero, el nombre se ha utilizado, así que eso es todo lo que tenemos que hacer, está bien, ahora lo que queremos hacer es determinar si es un pedido completamente nuevo. o es un viaje existente en realidad un nuevo derecho así que si es un viaje nuevo tenemos que hacer una f Nuevas cosas si b2 está vacío, como ya hemos discutido , sabemos que es nuevo. Lo primero que debemos hacer es determinar la fila de viajes. La fila será la primera fila disponible dentro de la base de datos de viajes. Esa es la lista de viajes. vamos a usar un xl up más uno, entonces lo que vamos a hacer es simplemente tomar la identificación del próximo viaje que se calculó a través de la fórmula máxima que se encuentra aquí y la colocaremos directamente en b1, también estoy tomaremos la misma identificación del próximo viaje que colocamos en b1 y la colocaremos en la columna a, la colocaremos directamente dentro de aquí en la siguiente fila disponible, así que eso es lo que vamos a hacer hazlo aquí b1 tomará la siguiente columna de identificación de tira a junto con esa nueva fila de viaje tomará lo que sea que esté en b1 eso es todo lo que tenemos que hacer si es un viaje existente si es un viaje nuevo si es no existe, todo lo que tenemos que hacer es extraer la fila de viaje de b2, todo lo demás, vamos a usar el mapeo de datos tal como w Lo hicimos en la carga, pero esta vez será al revés de las columnas 2 a 5, tomaremos lo que esté en ese rango, lo que esté ubicado en la fila 1 usando el mapeo de datos, fila 1, recuerde que la fila 1, lo que esté en i5, lo que esté en k5 o lo que sea que esté en n5 y lo colocaremos directamente aquí ahora cuando diga i5 n5 o k5, eso significa que será lo que sea que esté en i5 aquí lo que sea que esté en k5 aquí o lo que sea que esté en n5 aquí y estamos voy a colocar directamente dentro de esa ruta específica especificada aquí aquí y aquí y así es como usamos el mapeo de datos, así que eso es todo lo que tenemos que hacer ahora lo que quiero hacer es ejecutar la macro una vez que la guardemos bien vamos para ejecutar la macro para cargar esa lista, repasaremos esa lista esa lista de carga, la lista de carga de viaje es lo que revisamos aquí y eso solo volverá a cargar la lista en caso de que cambiemos el nombre, así que recargue o agregue el nuevo viaje de recarga la lista está bien, así que ahora lo que quiero hacer es una vez que haya cargado la lista de viajes correctamente, ¿cómo lo hago? Así que echemos un vistazo a esto, digamos que cambio esto de nuevo a 2021 justo donde debería estar bien, lo que quiero hacer es que quiero asegurarme de que esté seleccionado cuando lo carguemos cuando lo guarde, lo borrará, quiero asegurarme que 22021 se vuelve a cargar correctamente si cambio esto aquí a grandes viajes grandes viajes a la derecha y luego quiero asegurarme de que ese nombre se seleccione nuevamente, así que necesito asegurarme de que voy a buscar la fila donde sea que encuentre esto y Voy a asegurarme de que esté seleccionada, así que tomaré cualquier fila y me aseguraré de que b4 contenga esa fila, quiero asegurarme de que esté seleccionada nuevamente para que podamos hacerlo con el siguiente código, ¿de acuerdo? en primer lugar, voy a obtener la identificación del viaje que se ubicará en b1, luego, lo que quiero hacer es determinar la fila del viaje, ¿cómo sabemos el viaje? No , también sabemos que podemos usar la coincidencia de nombres. pero también sabemos que las identificaciones están ubicadas aquí, si sé que las identificaciones están ubicadas aquí, hago uno dos o tres y sé que solo s aved dos todo lo que tengo que hacer es buscar la identificación usando la búsqueda si se encuentra en la fila dos aquí está oculta pero se encuentra bien si cambio ese formato cambiará está aquí vemos el 2 aquí arriba voy a busque en qué fila, sea cual sea la fila que se encuentre, incluyendo 6, voy a colocar ese 6 directamente aquí, así que eso es lo que vamos a hacer, vamos, ya tenemos la identificación del viaje y una variable, vamos a configure las filas de viaje seleccionadas para que se basen en d5 a d9 que vamos a usar find vamos a usar id de viaje ahora vamos a usar fórmulas xl esto es muy, muy importante porque observe que está oculto cuando está oculto con una columna oculta o con un formato personalizado como es, no se podrá encontrar si estamos usando el valor de Excel, por lo que debemos usar la fórmula de Excel y eso lo encontrará y lo que quiero hacer es extraer el fila una vez que se encuentra, si no se encuentra, podría crear un error , por lo tanto, lo envolvimos en el aire, reanudar a continuación y en el aire, ir a cero si el viaje seleccionado br o eso es como si el trípode no fuera igual a cero, simplemente tomaré lo que sea y lo colocaré directamente en b4 que activará el formato condicional y luego lo ejecutaremos mensaje de desvanecimiento ese mensaje de desvanecimiento simplemente tomará esa forma, la forma que tenemos si echamos un vistazo aquí adentro y vemos esa forma correctamente , no quiero ver todas esas formas, miramos el panel de selección aquí y quiero tomarlo, no necesitamos mirar ese calendario, pero nos desplazamos aquí hacia abajo y podemos encontrar esa forma, el mensaje guardado del viaje o aquí, el mensaje guardado de la reserva, así que es esta forma la que quiero mostrar, quiero desvanecerme esa forma se llama mensaje de guardado de viaje esta forma se llama mensaje guardado de reserva, así que quiero desvanecerlos, así que cuando guarde ese viaje quiero mostrar ese mensaje, quiero desvanecerlo lentamente para que el usuario lo vea y se vaya ser exactamente lo mismo con el mensaje guardado de la reserva, así que cuando guarde esa reserva g tenemos que seleccionar una reserva para guardarla cuando guarde esa reserva quiero asegurarme de que ese mensaje de reserva también se desvanece para que podamos hacerlo con esta línea de código así que es muy simple vamos a tomar básicamente esa forma y vamos a usar un bucle y vamos a cambiar la transparencia cada vez más clara o aumentar la transparencia a medida que avanzamos y, por último, vamos a ocultar la forma que es todo lo que tenemos que hacer en el nuevo viaje que es la misma macro que ejecutamos cuando hago clic en nuevo viaje quiero borrar todo y queremos asegurarnos de que queremos borrar todas las filas de viaje seleccionadas las filas de reserva seleccionadas todo lo demás se borra, así que vamos a borrar un montón de celdas que usan los contenidos claros vamos a eliminar, por supuesto, cualquier vista previa del documento y vamos a seleccionar i5, queremos asegurarnos de que i5, por supuesto, es nuestro nombre de viaje y eso le permitirá al usuario ponerlo está bien, está bien, genial, entonces lo que va a hacer es aclararlo ahora, viaje lo anuncio vamos a hacer muy similar vamos a borrar todas las celdas ya revisamos esa macro aquí viaje eliminar muy muy simple cuando eliminamos un viaje queremos hacer solo algunas cosas esto es muy importante que no solo si vamos a eliminar no voy a ser crearé un nuevo viaje está bien si creo llamemos a este viaje de prueba está bien agreguemos una nueva fecha aquí e iremos a la fecha y agregaremos en una fecha completamente nueva, está bien, así que pruebe, así que si agrego si guardo ese viaje, por supuesto, ese viaje ahora estará aquí, observe que hay cuatro avisos, los cuatro se muestran porque ese no es un formato personalizado, ¿verdad ? repasarlo de nuevo porque es realmente importante que un formateador tres puntos y comas va a ocultar eso en la costumbre aquí tres puntos y comas, así que uno dos tres va a ocultar eso y siempre va a estar oculto bien para que podamos ver eso allí para que sepamos que eso es viaje cuatro si quiero eliminar ese viaje, ¿qué debo hacer? Quiero asegurarme de que estoy d eliminando todas las reservas asociadas con eso, así que si tengo una reserva de prueba aquí y tengo un nuevo libro y tipo, digamos que agregué esto es un recorrido y tenemos una confirmación y ese recorrido comenzará en aquí y va a ir a una fecha diferente aquí que no tiene mucho sentido pero es lo suficientemente justo, así que quiero guardar esa reserva también quiero eliminar cualquier reserva que esté asociada con ese viaje si agrego un documento que también quiero elimine cualquier documento que esté asociado con eso, por lo que debemos poder hacerlo para asegurarnos de que lo estamos guardando, está bien, así que no solo debemos eliminar el viaje correctamente, no solo debemos eliminar la fila 4 aquí, pero yo También disculpe la fila 7 id4, pero también necesito eliminar cualquier reserva que esté asociada con ella, que es esta reserva aquí. Tenga en cuenta que tenemos una idea de reserva para la identificación de reserva de 29 , la identificación de viaje de cuatro identificaciones de viaje, puede verla aquí. nombre de reserva de identificación de viaje, por lo que esta prueba también debe eliminarse i también dentro de nuestros documentos de viaje i necesito asegurarme de que esto se elimine aquí , así que cuando lo elimine, debemos asegurarnos de que estamos haciendo todo eso, entonces, ¿cómo vamos a hacerlo bien? Vamos a hacerlo con esta macro aquí, así que primero de todo lo que vamos a dar es una confirmación para asegurarnos de que quieren eliminar las reservas. Si dicen que no, por supuesto que vamos a salir del sub, entonces lo que queremos hacer es determinar si se ha guardado. o no está bien si hago un nuevo viaje bien si hago un nuevo viaje y pongo una prueba aquí prueba aquí y elimino ese viaje va a ser muy fácil así que firmemos esa macro correctamente probablemente cambiaré el nombre de la macro entonces lo que voy a hacer aquí simplemente seleccione esto y mantenga presionado el control seleccione ambos vamos a buscar esa identificación de viaje, así que vamos a asignar la macro y luego eliminar el viaje es el que está aquí queremos asignar bien, primero vamos a recibir el mensaje de confirmación. ¿Está seguro de que desea eliminar este viaje? Si decimos que sí, entonces lo que quiero Lo que tengo que hacer es eliminarlo , pero si aún no se ha guardado, simplemente podemos omitir la eliminación de todas las filas porque no las guardamos y eso es lo que estamos probando aquí. ¿Cómo sabemos si se ha guardado antes? bueno, por supuesto, b2 va a estar vacío si no se ha guardado, así que podemos usar eso si b2 es igual a mp, entonces podemos omitir todo esto aquí y simplemente ir a no guardar y luego todo lo que tenemos que hacer es simplemente ejecutar la macro eso borrará el contenido y volverá a cargar la lista de pedidos, está bien, sin embargo, si se ha guardado , necesito eliminar las filas individuales de la base de datos tanto para viajes como para reservas y, por supuesto , para documentos, por lo que tendré que eliminarlos. lo primero que vamos a hacer es determinar esa fila de viaje dentro de una variable, se ubicará en b2, esa será nuestra fila de viaje, por lo que nuestra fila de viaje está asociada con eso y luego, por supuesto, lo eliminaremos por completo fila en la base de datos de viajes, está bien, eso es bastante fácil, pero ¿qué pasa con nuestras reservas para nuestro libro ? Podríamos tener varias reservas múltiples, así que si tenemos varias reservas, tendré que eliminar más de una, así que si pruebo este viaje y agrego una reserva adicional aquí y no, digamos que agregue una reserva adicional aquí y luego solo pon vuelo, cualquier cosa va a estar bien aquí y luego pondré la fecha en que la reserva escribe nuestra casa eso no tiene mucho sentido una casa no debería ser un vuelo al menos un poco de sentido incluso aunque son datos de prueba y luego lo que haré es darle una hora específica y todo estará bien, así que voy a guardar esa reserva, de modo que cuando tenga más de una reserva, debo asegurarme de que ambas obtengan eliminé ambos ahora se eliminan ahora sé qué pasa si elimino la fila 32 primero , luego cambiará qué fila es esta, así que necesito asegurarme de que solo elimino la fila 33 primero y luego elimino la fila 32, entonces, ¿qué vamos a hacer? es que vamos a proporcionar un filtro avanzado y lo que va a hacer es que nos permitirá k ahora, dónde están asociadas esas reservas, así que si miro dentro de la lista de reservas aquí, quiero saber cuáles vamos a eliminar, así que echemos un vistazo dentro de estas dos reservas aquí, queremos mostrar los nombres que van a estar aquí esto es lo que estoy buscando aquí, así que lo que voy a hacer es tener estos, sé las filas si hay filas asociadas con eso y las traeremos y nos aseguraremos de que haya filas una vez ejecutamos que me dará el número de filas números de fila entonces lo que voy a hacer es invertirlo voy a poner la fila más alta primero y la fila más baja en segundo lugar para poder eliminar la fila más alta primero y luego elimine el segundo, así es como lo haremos, así que aquí es donde podemos hacer reservas, determinaremos la última fila si es menos de 4, iremos a no guardar, ejecutaremos nuestro el filtro avanzado es un 3 a través de u y lo que va a hacer es ejecutar un filtro avanzado para todos nuestros derechos, quiero asegurarme de que u está incluido todo porque necesitamos esa fila, así que a3 hasta el último y quiero poner esos resultados cuál es el criterio bueno, el criterio será solo para una identificación de viaje específica, se basará en esta identificación de viaje esto simplemente está vinculado a b1 en nuestros viajes aquí está nuestro criterio queremos que esos resultados vengan aquí desde a2 hasta ac2 ahí es donde queremos que los resultados vengan de aa2 a ac2 una vez que vamos a entonces lo que tenemos que hacer es determinar el último fila de resultados si el último resultado fue menor a tres, eso significa que no hay reservas asociadas con ese viaje si la última fila es menor a 4, eso significa que no hay necesidad de ordenarla, podemos omitir la ordenación; sin embargo , si hay más de una fila i quiero ordenar y quiero ordenar descendentemente quiero poner la fila más alta primero, esa fila vendrá directamente de la columna ac aquí, así que si ejecuto esta macro hasta este punto aquí y luego lo que vamos a hacer hacer es vamos a ver esa lista en realidad puedo ejecutar la macro completa, los datos permanecerán en los resultados, lo cual está bien , así que ac y voy a ejecutar que nuestro rango va a ser de aa a ac vamos a hacer exactamente lo mismo que vamos a hacer si vamos a recorrer esos resultados desde el 3 hasta la última fila, voy a determinar esa fila de la base de datos en función de lo que hay en ac3 y luego lo que vamos a hacer es eliminar toda la reserva fila aquí, solo vamos a recorrer y hacer todo eso, estamos haciendo exactamente lo mismo para los documentos de viaje idénticos, excepto que solo estamos usando, vamos a ejecutar nuestros criterios y estos nuestros documentos de viaje son un poco diferentes nuestro los criterios vendrán directamente de j2 a j3, esa identificación de viaje se ubicará aquí, esos resultados vendrán directamente dentro y a través de la p derecha, esos resultados vendrán directamente de n2 a través de r, la r está bien está bien, r está bien y luego lo que vamos a hacer es determinar la fila aquí, esto es l Ubicado en n el número más alto, voy a ordenarlo en función de n 3 esta vez descendiendo a la derecha porque ahí es donde se encuentra nuestra fila y luego vamos a recorrer y eliminar esos resultados y luego vamos a cargarlo así eso es todo lo que tenemos que hacer de nuevo, echemos un vistazo aquí dentro si borro este viaje con estas dos reservas borro el viaje ¿estamos seguros de que lo borraremos? y dentro de la lista de viajes vemos que uh trip id4 se ha ido junto con las reservas de viaje aquí cuatro se han ido y los documentos de viaje aquí cuatro se han ido bien genial así que sabemos cómo eliminarlo. acabamos de eliminar, así que lo que vamos a hacer es simplemente eliminar los asociados , borrar todos los formularios y campos ejecutando el viaje macro nuevo y luego cargando la lista, recargando esa lista porque acabamos de eliminarla, ahora vamos a tomar un mira el itinerario a la derecha toma un mire y diga cuando queremos mostrar el itinerario vemos lo que tenemos echemos un vistazo dentro del viaje agreguemos un itinerario específico donde tenemos bien lo que quiero hacer es básicamente ejecutar otro filtro avanzado i' voy a cargar toda esta información para el viaje especificado, así que dentro de esto, lo que vamos a hacer es cargar toda esa información usando una reserva de viaje muy específica, así que una vez que tengamos nuestra reserva de viaje, quiero para cargar toda la información asociada para una identificación de viaje específica para que tengamos los resultados de un itinerario esta vez vamos a ejecutar los mismos criterios y2 a y3 y luego lo que vamos a hacer es que vamos a hacer que toda esa información venga aquí y luego adentro tráigala adentro después de ejecutar eso, así que hay dos macros asociadas con eso, lo primero que vamos a hacer es simplemente alternar entre eso, así que si tomamos una mirada dentro de nuestras macros de itinerario de módulo vamos a encontrar dos m diferentes acros aquí dentro de este módulo y luego también vamos a uno llamado ocultación del visor de itinerarios porque es la misma macro que vamos a usar tanto para ocultar el itinerario como para mostrarlo, así que todo lo que tenemos que hacer es marcar para ver si hay una columna, por ejemplo, si la columna g ya está oculta, sabemos que debemos mostrarla a la derecha si, digamos, si g está visible, sabemos que debemos mostrar el itinerario; sin embargo, si g está oculta, debemos ocultar el itinerario para que podamos usar columna g para determinar eso o cualquier columna , así que vamos a hacer exactamente eso con el viaje si omg todo oculto es igual a falso significa que no está oculto, se muestra, entonces lo que queremos hacer es mostrar el itinerario para que podamos voy a tomar un grupo de viaje ahora grupo de viaje He creado un grupo para todas estas formas aquí y lo llamaremos el grupo de viaje, así que los agrupé a todos y llamaremos a ese grupo de viaje que quiero ocultar ese grupo no quiero mostrar ese grupo quiero mostrar otro grupo quiero mostrar s algo llamado itinerario nuestro grupo itin este es el grupo que quiero mostrar por lo que necesitamos mostrar y ocultar botones en consecuencia para que podamos hacer eso aquí así que vamos al grupo de viaje vamos a hacer que sea visible igual a falso somos vamos a ocultar el grupo de viaje, luego mostraremos el grupo de itinerario usando esta línea de código, luego ocultaremos las columnas g a t y mostraremos las columnas u a ac, así que eso simplemente ocultará estas columnas g hasta el final y luego mostraremos u a través de ac después de hacer eso, todo lo que quiero hacer es simplemente actualizar, ejecutar la macro que vamos a repasar a continuación, llamada actualización de itinerario, sin embargo , si vamos a estar escondiendo vamos a hacer exactamente lo contrario, excepto que no estamos actualizando el itinerario, simplemente vamos a mostrar el grupo de viaje ocultando el grupo de itinerario y luego invirtiendo las columnas mostrando y ocultando en consecuencia eso es todo lo que tenemos que hacer es simplemente ver y ocultar, es la misma macro vinculada a ambos e botones es la misma macro vinculada a este botón y este botón a continuación quiero poder imprimir el itinerario quiero poder imprimirlo en cualquiera que sea nuestra impresora predeterminada estoy usando snagit así que quiero que eso sea predeterminado si quiero hacer eso, quiero asegurarme de que también cuando lo imprimamos en nuestro valor predeterminado, lo imprimiremos en nuestra orientación horizontal y podemos hacerlo con solo unas pocas líneas de código, imprimiendo el itinerario y yo probablemente debería haber puesto eso sigamos adelante y ponga eso aquí esto aquí voy a poner este mac voy a copiar eso voy a borrar eso voy a entrar en el itinerario y yo Voy a colocarlo aquí, así que imprimo el itinerario aquí mismo. Me gusta tener todo esto , así que tenemos tres macros que muestran la impresión oculta y luego la actualización, así que todo lo que tenemos que hacer es simplemente ejecutar este viaje macro, imprimir verdadero falso y eso va a imprima ese itinerario relativamente simple allí, deshagámonos de este aquí tengo dos macros que son culos asociado con la impresión, este me gusta más porque lo va a dimensionar mejor, así que quiero asegurarme de que sea este el que está vinculado a ese botón y el ícono asociado, eso es lo que pensé, dos macros diferentes, esto creo que es el uno que estamos usando porque siempre es correcto, pero voy a verificarlo dos veces asegurándome de que voy a hacer clic con el botón derecho en este manteniendo presionado el botón de control allí y luego lo que vamos a hacer es voy a asigne la macro a esto solo para asegurarse de que tenemos la macro correcta diapositiva itinerario imprimir itinerario ese es el que quiero esa es la macro que se va a usar y vamos a hacer clic en Aceptar, así que es esa macro a la que vamos para repasar junto con la actualización, así que primero comenzaremos con la actualización y, básicamente, con la actualización, todo lo que quiero hacer es simplemente ejecutar un filtro avanzado basado en lo que le mencioné, sin embargo, dentro de las reservas de viaje ciertamente lo haré. Empezar a borrar Quiero borrar toda la información aquí pero más importante Antly, lo que quiero hacer es borrar cualquier información aquí dentro de eso porque si voy a borrarlo, vamos a borrar todo el camino desde usted a través de ac vamos a borrar eso dentro de los viajes u6 a través de ac vamos a borrar todas las alternativas existentes ahora nos vamos a centrar en las reservas vamos a determinar la última fila dentro de la lista de reservas si es menos de 4 vamos a salir del sub de a3 a usted Recuerde que vamos a ejecutar los criterios y2 a y3 dentro de nuestras reservas de viaje. Nuestros criterios se establecen automáticamente en función de una fórmula y2 a y3. Esos resultados vendrán aquí desde af hasta n y luego los reduciremos hasta af. a través de an va a donde nuestros resultados vamos a verificar la última fila a través de si es menos de tres vamos a salir del sub y luego simplemente traemos los resultados eso es todo para actualizar relativamente simple imprimir el itinerario voy a determinar una vez que lo hayamos traído necesito determinar th e última fila de nuestros resultados, por lo que la última fila que podemos usar aquí porque es un campo obligatorio debajo de usted, por lo que nos lo hará saber, por lo que el u 99 nos dará la última fila del itinerario, la última fila una vez que tengamos ese último fila siempre que no sea inferior a 6 si es inferior a 6 hágale saber al usuario que agregue algunos detalles de la reserva antes de imprimir el itinerario vamos a configurar esa área de página quiero configurar el área de impresión solo estoy va a comenzar en u4, que es ese encabezado hasta ac en la última fila , que será nuestra área de impresión una vez que tenga eso, también quiero configurar la configuración de la página de orientación, la orientación es igual al paisaje y luego vamos para imprimirlo, eso es todo, simplemente asegurándonos de que siempre nos alinearemos con el área de impresión de configuración de página que acabamos de configurar aquí, está bien, no queremos imprimir fuera, eso es todo, eso es todo lo que necesitamos hacer para ambos el itinerario y el viaje, entonces, ¿qué pasa con las macros de reserva? Las macros de reserva son relativamente simples . h las macros de reserva aquí, tenemos algunas aquí adentro, por supuesto, vamos a guardar la reserva nueva y eliminar la reserva y también cargar esa lista cada vez que guardamos una reserva que queremos asegurarnos de volver a cargar la lista para asegurarse de que si hay algún cambio , se actualicen automáticamente, así que repasemos esas macros ahora, así que de vuelta dentro del vba nos vamos a centrar en reservar el módulo llamado reservar macros y eso se pondrá en orden y esta vez reservando macros lo primero que queremos hacer es cargar la lista correctamente cada vez que queramos volver a cargar esto, por supuesto, debemos asegurarnos de que estamos borrando lo existente , tenga en cuenta que tenemos esas identificaciones ocultas en la columna f para que podamos quiero asegurarme de borrar f a g y hacia abajo, así que con los viajes aquí f10 a g y hacia abajo borrando el contenido de esas reservas existentes a continuación, nos centraremos principalmente en esas reservas, ¿verdad? Quiero saberlo todo. las reservas asociadas a un viaje específico, por lo que queremos asegurarnos de que nos vamos a centrar en algunos criterios nuevamente vincular a esa identificación de viaje ubicada en y2 a y3 voy a traer todas esas reservas de aab traer el filtro avanzado para que podamos Me moveré un poco más rápido porque hemos estado en esto antes de obtener la última fila y luego asegurarnos de que sea menos de cuatro. Incorporar ese filtro avanzado y2 a y3 es nuestro criterio a2 a b2 tener esos resultados verificando la última fila de esos resultados haciendo seguro que son menos de tres y luego traerlos aquí eso es todo lo que tenemos que hacer es muy, muy simple a menos que vayamos allí, está bien, así que continuando a la derecha si hay menos de cuatro, simplemente vamos a omitir e ir a sin datos de viaje bien, lo que quiero hacer ahora de nuevo es asegurarme de que si actualizo esa lista, quiero saber automáticamente cuál está seleccionado correctamente si ejecuto esa macro, esa macro se borrará, digamos que esta fila de deslizamiento es 10 correcta, así que Voy a eliminar esa fila seleccionada ahora . Lo que voy a hacer es eliminar el formato condicional aquí, pero lo que quiero hacer es asegurarme de que, sea lo que sea, si guardamos ese libro y lo actualizamos, quiero asegurarme de que ese 10 se vuelve a seleccionar. Lo que voy a hacer es buscar este ID de reserva que se encuentra en b1 y lo buscaré aquí. Está justo aquí . Es 1. Está ubicado en b10, pero. si selecciono uno diferente, quiero saber en qué fila está reservando id3, quiero saber en qué fila se encuentra y una vez que encuentre esa fila , la colocaré directamente dentro de b10, está bien, hay dos formas en que podemos hacerlo. i He mostrado ambas formas, está bien, así que si podemos buscar la identificación de la reserva o podemos buscar el nombre de la reserva correctamente, así que si todo lo que hago es tomar el nombre de la reserva aquí, búsquelo en esta lista y una vez que encontremos ese nombre aquí, tome la fila que se haya encontrado y póngala en 12, está bien, así que tenemos dos formas, recuerde dos formas en que podemos buscar la reserva i d aquí o podemos buscar el nombre de la reserva aquí ambos están bien, así que eso es todo lo que tenemos que hacer, así que vamos a usar el nombre de la reserva aquí nombres de reserva en j11 vamos a lo que sea que esté en la cárcel 11 vamos a ponerlo en una variable, entonces lo que vamos a hacer es determinar la fila seleccionada, vamos a buscarla en g aquí , podemos usar valores porque esos son visibles si estamos vamos a usar identificadores que están ocultos usamos fórmula, así que quiero explicar la diferencia vamos a buscar ese nombre ese nombre de reserva en g10 todo el camino hacia abajo estoy buscando ese nombre quiero saber en qué fila cuándo se encontró que voy a tomar esa fila, la pondremos directamente aquí, así que eso es todo lo que haremos si la fila de reserva no es 0, entonces lo que vamos a hacer es tomar eso fila seleccionada y colóquelo en b10 también quiero establecer esa identificación de reserva ahora tenemos que establecer la identificación de reserva en b11 así que quiero asegurarme de que esa identificación de reserva se encuentre aquí y que id está ubicado directamente en f a la derecha, así que lo que sea que esté en f en esa fila f en esa fila seleccionada, tome esa identificación de reserva y póngala en b11 así es como sabemos que obtuvimos la información de reserva correcta, está bien, qué pasa cuando quiero guardarlo de Por supuesto, cuando decida que voy a guardar esa reserva, quiero asegurarme de que haya cambios o cualquier otra cosa que pongamos aquí se guardará automáticamente, así que todo lo que tengamos es una dirección larga. Quiero asegurarme de que eso se debe a que cuando recargo otro y vuelvo a cargar ese quiero asegurarme de que los datos de cambio se guarden automáticamente, así que nuevamente vamos a usar el mapeo de datos como lo hicimos aquí y luego, pero aquí tenemos dentro de nuestras reservas. tenemos mapeo de datos aquí hasta aquí todos esos campos están mapeados, por lo que guardarlo es relativamente simple, incluso si tenemos muchos campos, queremos asegurarnos de cubrir los campos requeridos primero, no podemos guardarlo, no lo hacemos no tengo un nombre no tenemos un tipo de reserva o no tengo la fecha de inicio y he decidido hacer si hacemos una nueva reserva, hagamos una prueba , voy a automatizar eso, así que si no ingresan ningún tipo de fecha, solo quiero automatizar eso automáticamente entonces si guardo ese aviso, observe que dos días fueron automáticamente allí, así que quiero asegurarme de que los dos días se vuelvan automáticos si está en blanco, entonces la fecha hasta será la misma que la fecha desde que ayuda a mantener el registro, así que j11 m11 y j12 son necesarios y eso significa que es un nombre de reserva, un tipo de reserva de reserva o una fecha de inicio. Quiero asegurarme de que todos sean necesarios . Quiero volver a determinar, tal como lo hicimos con los viajes, si se trata de una reserva nueva o es una reserva existente. Las nuevas reservas automáticamente tienen la fila de reserva vacía porque no hay una identificación de reserva. Las reservas existentes siempre tienen una fila asociada en b12. b12 nos lo hará saber. si no existe, así que si b2 está vacío, sabemos que es un nuevo bo De acuerdo, nueva reserva, hacemos algo de información diferente, entonces, ¿qué vamos a querer para determinar esa fila de libro esa fila de reserva primera fila disponible en nuestra pantalla de reserva, está bien y luego b11 tomará esa identificación de reserva que la próxima reserva vamos a hacer? vamos a usar la misma fórmula que max va a estar ubicado aquí dentro de b13 usando la fórmula max vamos a tomar esa identificación y colocarla directamente dentro de b11 así que desde b13 vamos a colocar en b11 entonces estamos voy a hacer eso aquí mismo, voy a tomar la misma identificación de reserva y ponerla en la columna a y también quiero poner la fila en la columna u a la derecha, así que esas son las cosas que hacemos para los nuevos, así que dentro de esa reserva a obtiene el la columna de identificación de la reserva u obtiene una fórmula que mostrará esa fila aquí, será esa fórmula, por lo que esas son las únicas cosas que hacemos para las nuevas reservas si es una reserva existente, todo lo que tenemos que hacer es extraer la fila de b12 todo lo demás va a ser lo mismo aquí es donde vamos a automatizar eso desde th en la fecha si n12 esta es nuestra fecha dos si está vacío entonces lo que vamos a hacer es tomar nuestro n12 simplemente va a ser lo que sea que esté en j12 j12 es nuestra fecha de inicio así que vamos a establecer la fecha a partir de la fecha si está en blanco si está vacía si está vacía está bien, eso es todo, solo para asegurarnos de que tenemos una fecha requerida a continuación, vamos a usar el mapeo de datos que hemos revisado antes de irnos para recorrer todas las columnas y básicamente mapear esos datos, lo que sea que se encuentre en estos campos aquí dentro de nuestra reserva aquí, nos aseguraremos de que se coloquen directamente en la fila correcta dentro de nuestras reservas de viaje aquí, eso es todo lo que tenemos que hacer con mapeo de datos usando este mapeo de datos en la fila uno, está bien, eso es todo, simplemente ejecutaremos la macro que revisamos para volver a cargar la lista de reservas y vamos a ejecutar un mensaje de desvanecimiento que indica que el mensaje de ajuste es exactamente como el que cubrimos excepto que esta vez estamos enfocados en hacer clic en guardar mensaje todo lo demás es el s ame reserva carga relativamente simple solo queremos asegurarnos de que tenemos una fila asociada si no sabes quiero asegurarme de que cuando estamos cargando cuando la seleccionamos ¿cómo sabemos que hay una fila correcta si hago una selección cambiar lo que voy a hacer es tomar esa identificación que está ubicada en la columna f la voy a colocar directamente en el lado b11 también voy a tomar la fila y la voy a colocar directamente dentro de 10. luego voy a ejecutar la macro para cargar, echemos un vistazo a que es un evento de cambio de selección, así que vamos dentro de los viajes y echamos un vistazo dentro del evento de cambio de selección esta vez nos enfocamos en la columna d así que si echamos un vistazo aquí abajo en las reservas a la columna g lo siento en la selección de la columna de reservas g estamos haciendo una selección queremos asegurarnos de que g contiene un valor vamos a tomar esa fila vamos para colocarlo en b10 recuerda que vamos a tomar lo que esté en f esa es nuestra identificación de reserva esa identificación de reserva oculta vamos a colocarla en 11 y luego vamos a ejecutar la macro para cargar la reserva, eso es todo, eso es todo lo que tenemos que hacer para llegar a esta macro, esta macro, solo nos aseguraremos de tener una fila asociada en b12 una vez que sepamos que tenemos tenemos una fila, queremos asegurarnos de poner eso en una variable llamada fila de libro, vamos a desactivar la actualización de la pantalla de la aplicación para hacer las cosas más rápido y activarla antes de que finalice la macro, puede usar el mapeo de datos simplemente para cargarlo ahora, es básicamente lo contrario de este mapeo de datos, es absolutamente inverso esta vez esta vez estamos tomando esta información que se encuentra en estas celdas y la estamos colocando en la base de datos la base de datos de reservas esta vez estamos tomando información de la base de datos de reservas y lo estamos colocando directamente dentro de estas celdas que se encuentran aquí todo lo demás es igual reserva nuevo muy muy similar simplemente limpiando un montón de celdas y seleccionando esto tenga en cuenta que si ejecuta esta macro y no está en el actual hoja obtendrá un error r Bien, si trato de ir a la lista de viajes y hemos seleccionado y trato de ejecutar esto, obtendremos un error, ¿por qué? Porque no podemos seleccionar una hoja que no lo es y ahora, si tiende a ejecutar esto, puede hacerlo. ejecute una verificación para asegurarse de que no podemos seleccionar una hoja si no estamos actualmente en ella si estamos en esa hoja, entonces trato de continuar con esta macro , se ejecutará sin problemas porque podemos seleccionarla porque en realidad estamos en esa hoja , ya estamos en la hoja de viaje, está bien, eliminando la subreserva ¿Qué es esto? Esto es muy, muy simple si quiero eliminar una reserva, entonces todo lo que necesito hacer es determinar la fila asociada con eso está seguro de que desea eliminar la reserva determinando la fila correctamente asegurándose de que si está vacía, eso significa que la reserva aún no se ha guardado podemos ir a no guardar podemos omitir la eliminación de esa fila y bajar aquí pero si se ha guardado vamos a extraer esa fila correctamente y luego lo que vamos a hacer es eliminar toda esa fila. todo lo que tenemos que hacer es borrar todo ejecutando la macro bookies new y recargando la lista correctamente y eso es fácil, así que si decido que quiero eliminar esto, eliminar la reserva, obtendremos esa confirmación, sí, vamos para borrar todo el contenido vamos a volver a cargar la lista y vamos a eliminar la fila que está asociada muy bien qué pasa con los documentos ahora los documentos que hemos repasado eso es todo en las reservas vamos a pasar al libro de documentos los documentos tienen un módulo, está bien, lo que quiero hacer es actualizar los documentos, quiero poder agregar un documento y cómo actualizamos bien actualizar los documentos tan pronto como haga clic en una celda específica que se va a cargar, vamos salir de esa celda aquí está bien una vez que lo carguemos bien queremos asegurarnos de que vamos a poder agregar un documento bien quiero cargar la lista de documentos cargando esta lista borrándola y básicamente lo que quiero hacer es quiero saber todos los documentos que ar Estoy asociado con esta reserva específica directamente con la reserva de la idea de reserva tres, así que lo que vamos a hacer es ejecutar un filtro avanzado como siempre lo hacemos, lo basaremos en esta identificación de reserva que quiero. saber, por supuesto, el viaje 1 y la identificación de la reserva, pero la identificación de la reserva es suficiente. Quiero saber todos los documentos asociados con la reserva id3. Si echamos un vistazo aquí, vemos que tenemos la identificación de la reserva 3. Tenemos tres documentos diferentes. quiero que esos tres vengan aquí, entonces traeré esa información con un filtro avanzado, así que echemos un vistazo a eso y dentro del vba vamos a actualizar el documento, lo primero que quiero hacer es borrar el contenido de todos los asociados también quiero eliminar cualquier forma de vista previa que pueda estar allí. Voy a determinar la última fila de los documentos. La última fue la lección cuatro. Vamos a ejecutar un filtro avanzado basado en los criterios que acabo de mencionar. a usted quiero saber que criterios k2 a k3 y hacer que esos resultados pasen de n a r a la derecha y a través de r y vamos a verificar la última fila y si no hay menos datos, simplemente traeremos quiero traer las filas de la base de datos esas filas de la base de datos que necesito Para saber a qué fila están asociados, es por eso que traemos la fila. Necesito saber la regla de la base de datos 4, 5 y 6. Es muy importante porque si elimino uno de esos, necesito saber qué fila eliminar, así que estoy voy a traer esa base de datos voy a traerlos aquí cuatro cinco y seis voy a traer la columna b así que esa es una línea de código la siguiente línea podría quiero traer toda la información aquí entonces aquí en b1 es igual a b b21 hasta b en la última fila de resultados más 18. Recuerde que nuestros resultados comenzarán en la fila 3. Nuestros viajes tendrán que comenzar en la fila 21, por lo que debemos sumar 18 para compensar esa diferencia. agregando esa fila y columna b de la base de datos y, por supuesto, eso vendrá directamente de n una vez que tengamos ese ins ide nuestros documentos de viaje, necesitamos saber llamar a las columnas y allí, lo que queremos hacer es traer el resto de nuestros resultados, nombre, fecha, tipo y ruta, y traerlos directamente dentro de nuestros viajes, nombre, fecha, tipo , ruta y traerlos aquí, eso es todo lo que tenemos que hacer para actualizar, es esta macro la que cargamos automáticamente cuando cargamos una reserva, vamos a ejecutarla, por lo que las macros de reserva que cargan esa lista son las que cargan la reserva, específicamente esta carga de reserva aquí es esta macro la que ejecutamos para cargar esos documentos de viaje automáticamente, de modo que se cargue automáticamente, está bien, pero ¿qué pasa si queremos agregar un documento? Si agrego, decido que quiero agregar un documento, necesito saber en qué carpeta ponerlo lo que quiero hacer es crear una carpeta de documentos aquí y, si echamos un vistazo a mi escritorio, quiero crear un documento específico llamado viaje y dentro de aquí quiero que se creen carpetas individuales para cada viaje que hagamos dentro esas carpetas rs quiero poner cualquier documento que esté asociado con eso, así que lo primero que quiero hacer es establecer una carpeta específica donde irán nuestros documentos de viaje, es esa carpeta que se encuentra dentro de nuestra pantalla de administración llamada documento carpeta está ubicada aquí mismo en e6 y le damos un rango de nombre llamado carpeta de documentos. Necesito asegurarme de que esa carpeta existe , así que vamos a echar un vistazo aquí primero que nada, queremos asegurarnos de que tenemos No quiero guardar ningún tipo de documentos a menos que tenga ambos. Quiero asegurarme de dos cosas . Quiero asegurarme de que el viaje se guarde, lo que significa que b2 tiene que tener una fila y también quiero asegurarme de que se guarde la reserva . lo que significa que debemos asegurarnos de que la reserva tenga una fila, por lo que tanto b2 como b12 deben contener un valor, por lo que debemos verificar eso primero y asegurarnos de que tenemos un viaje guardado b2 si es igual a vacío, deje la orden para guardar ese viaje por qué ¿Es importante porque necesito asignar una identificación para ese documento que necesito para un asigne una identificación de viaje y necesito firmar una identificación de reserva muy importante, por lo que queremos asegurarnos de que realmente los estamos guardando bien, entonces b12 también debe contener un valor una vez que sepamos que tanto el viaje como la reserva se han guardado, podemos entonces pase a obtener esa información, por lo que lo primero que debemos hacer es obtener esa carpeta de documentos y colocarla en una variable llamada carpeta de documentos, asegúrese de que el nombre de su variable sea diferente de su rango de nombres, lo que puede crear algunos problemas. Me aseguré de que sean diferentes y vamos a agregar una barra invertida en eso, está bien, entonces solo quiero ejecutar verificar si la carpeta del documento está vacía o tal vez tenemos esta carpeta de administración en particular, no necesitamos ambas. si el directorio está vacío o si el valor en sí está vacío, infórmele al usuario que seleccione el documento que vamos a ejecutar , presione la macro, busque documentos de viaje a la derecha, así que se ejecutará, busque cuál es la siguiente macro hacia abajo , pero si no está vacío, lo que podemos hacer es entonces solo ejecute otra verificación para asegurarse de que todavía esté vacío incluso después de que les hayamos dado instrucciones, entonces lo que vamos a hacer es simplemente salir del sub y luego, si no es así, simplemente vamos a reasignar esa variable como lo hicimos aquí bien, también podemos establecer el nombre del viaje en función de lo que se encuentra en i5. Quiero que la fila del documento sea la correcta. Necesito la primera fila del documento disponible porque vamos a tener que guardarla dentro del documento de viaje, así que necesito saber la primera fila disponible dentro del documento una vez que tengo esa fila y la pongo en una variable que necesito saber para configurar los documentos aquí vamos a ejecutar el archivo de la aplicación doc quiero buscar ese documento, así que vamos a usar el diálogo de archivo de la aplicación de archivo de documento ese documento ya está dimensionado como un diálogo de archivo está bien, genial, así que con el documento le vamos a dar un título, vamos a dejar que busquen cualquier tipo de documento, por lo tanto, solo tenemos un período dentro de la captura salvaje en cualquier lado que significa un y tipo de archivo que permite la selección múltiple falsa derecha si no seleccionan nada vamos a omitir que vamos a establecer el nombre del archivo siendo el directorio significa que solo el nombre del archivo junto con la extensión del archivo se ubicarán en el nombre de archivo quiero la ruta de archivo completa en la variable de ruta de archivo ahora lo que quiero hacer es ver si ya está en la carpeta correcta, quiero crearlo quiero poner todo en esa carpeta quiero poner esto doc vengan de donde vengan, quiero ponerlos en carpetas específicas, pero ¿y si ya están en la carpeta? Si ya están en la carpeta, no hay necesidad de moverlos, así que lo que haremos es vamos a verificar si la ruta del archivo es igual a la seleccionada, lo que significa que la ruta del archivo donde queremos colocarlo es la misma que donde ya está, entonces podemos ir, ya está en la carpeta correcta, vamos a omitir esto y baje aquí si aún no está en la carpeta correcta y queremos ponerlo allí lo que quiero hacer es i wa No para verificar que esa carpeta existe correctamente, queremos crear carpetas para cada viaje, así que lo que vamos a hacer es verificar si el directorio, la carpeta del documento y el nombre del viaje están vacíos. significa que esa carpeta de viaje aún no existe, vamos a crearla usando el directorio make y eso va a crear la carpeta para el viaje ahora voy a buscar en esa carpeta si ese documento ya existe si el nombre de eso el documento ya existe en esa carpeta, entonces quiero eliminarlo bien, tal vez queramos, tenemos un itinerario actualizado o algo actualizado , así que queremos reemplazar cualquier cosa con el mismo nombre, así que vamos a verificar si el directorio de la ruta del archivo lo hace no es igual vacío, eso significa que existe con ese nombre y debemos eliminar el actual antes de moverlo, de modo que lo eliminará si existe, está bien, entonces lo que estamos listos para hacer, estamos listos para copiar ese archivo desde dondequiera que lo hayan buscado en la nueva carpeta que hemos e creado para que podamos hacer que ese archivo copie el seleccionado, que es la ruta original a la ruta de destino es donde queremos ir, así que va a copiar ese archivo a la nueva ruta, está bien, genial, así que ahora lo que hemos hecho es que hemos puesto que hemos obtenido toda la información, la hemos puesto en el lugar correcto, pero ahora lo que quiero hacer es agregar esa información, así que voy a tomar esa fila del documento que vamos a poner en b19 a la derecha, así que también quiero saber cuándo tenemos una carpeta seleccionada b19 es la fila del documento seleccionado quiero poner eso cuando seleccionamos uno diferente quiero asegurarme de que el formato condicional cambie automáticamente y quiero poner b19 ese documento, esa fila que está asociada, activará el formato condicional tal como lo hicimos con los viajes y tal como lo hicimos con las reservas, lo colocará allí, así que b19 lo asumirá, así que lo sabemos porque va a ser la primera fila disponible a medida que agregamos nueva es cuál es la primera fila disponible basada en co lumn i así que vamos a hacer eso para documentar la fila que ya hemos hecho aquí documentar la fila basada en i esa primera fila disponible la última fila con el valor más uno es esa primera fila disponible así que irá en b19 ahora , lo que también necesitamos, amigos, por supuesto, debemos agregar esa información a la fila de la base de datos. Tenemos nuestros documentos de viaje. Ahora, lo que queremos hacer es agregar la identificación del viaje, la identificación de la reserva, el nombre, la fecha y la ruta . introduzca toda esa información, así que eso es lo que vamos a hacer aquí a va a tomar el id de viaje b va a tomar el id de la reserva c va a tomar lo que va a tomar el nombre del documento el tipo y la ruta y eso va a ser de c a fc a través de f va a tomar de i a l a la derecha, así que vamos a agregar automáticamente esa información para que eso agregue todo y necesitamos que ya hayamos agregado aquí creo que me salteé eso, lo siento , b se va a encargar, esto está dentro de los viajes, la fila de la base de datos. va a ir a b el nombre del documento va a ir a ij va a tomar la fecha k la fecha actual k va a tomar la extensión de archivo que es simplemente la correcta buscando la cadena en la inversión de cadena estamos buscando ese período que nos dará nuestra extensión de archivo y luego nuestra ruta de archivo, así que primero lo que vamos a hacer es colocar todo eso directamente, así que colocamos el nombre del documento, la fecha, la extensión y la ruta, así que estoy colocando eso, entonces todo lo que tenemos que hacer es tomar esta información, copiarla o traerla usando valor a valor y traerla directamente aquí desde c hasta f, así que esa es la línea de código aquí ahora dentro de la base de datos, por lo que esto está dentro de los viajes aquí, esto está dentro de la base de datos, por lo que debemos agregar que ambas bases de datos tomarán la identificación del viaje, la identificación de la reserva, luego c3f tomará i a través de li a l a la derecha que va a la nombra la fecha del documento o el tipo de ruta y, por último, vamos a p ut la fila en la columna ci necesito saber esa fila porque cuando cargamos cuando traemos eso necesito saber qué filas asociadas con esos documentos dentro de los viajes necesito asegurarme de que esas filas vienen aquí bien, así que las tenemos vimos lo importante que es ahora lo que quiero hacer es obtener una vista previa de ese documento, independientemente del tipo de documento, ya sea pdf , word o imagen, quiero poder obtener una vista previa de ese documento y quiero tener eso la vista previa aparece directamente aquí dentro, así que podemos hacerlo con las siguientes líneas de código una vez que agregamos un documento, vamos a ejecutar una macro llamada vista previa del documento y estará aquí y la ejecutaré así si hay algún documento existente primero, lo eliminaremos , lo ajustaremos y lo reanudaremos a continuación si b19 está vacío b19 es nuestra fila de documentos seleccionada, es muy importante, verdad, necesito saber b19, necesito saber 21 porque tengo para extraer la ruta en la que se encuentra la ruta c la columna l derecha, por lo que b19 es fundamental, aunque tengo una fila si b19 está vacía, entonces seleccione el documento para verlo. Puede salir de la fila del documento. Vamos a poner eso en una variable b19. La ruta del archivo estará en l lo que sea en l, si está vacío, vamos a salir del sub, queremos asegurarnos de que tenemos una ruta de archivo correcta y también lo que quiero hacer es asegurarme de que lo hayamos verificado, así que si vamos para ejecutar el directorio de la ruta del archivo si está vacío, nos aseguraremos de que tal vez la ruta en sí sea incorrecta o tal vez el documento se movió o eliminó. También quiero establecer el tipo de archivo según la columna k, eso es muy importante porque las imágenes son se ven de manera diferente o se abren de manera diferente que quizás objetos como Word , Excel y PDF, eso es muy importante, así que si es una imagen, vamos a establecer ese tipo de archivo, vamos a extraer ese tipo de archivo de k y si el tipo de archivo se ajusta a un png jpeg si es un tipo de imagen, todo lo que tenemos que hacer es simplemente usar una imagen de punto s dot insert y luego inserte esa ruta de archivo, asígnele un nombre específico llamado vista previa del documento; sin embargo, ¿y si es más podría ser? digamos una palabra, incluso Excel funcionaría Excel, puede hacerlo en Excel, no sé si lo haría o PDF correcto , esos son los estándar, así que en esos casos, lo que vamos a hacer es insertar un objeto, un objeto ole, podemos hacerlo con un nombre de archivo, vamos a establecer el nombre del archivo en esa ruta de archivo , sabemos qué para abrir se basa en ese archivo, no necesitamos vincularlo y no necesitamos mostrarlo como un ícono y necesitamos darle un nombre específico, quiero asegurarme de que el nombre que estamos voy a darle es exactamente el mismo nombre que si fuera una imagen, la razón es porque ambos tipos de objetos una vez que sé que eso significa que puedo dimensionarlo y colocarlo independientemente del tipo, independientemente de si es una imagen o si es un palabra incrustada en pdf o objeto de documento de Excel, luego puedo dimensionarlo y colocarlo en consecuencia, así que le doy el mismo nombre , así que ahora podemos trabajar con él, ya sea una palabra pdf o una imagen, luego puedo trabajar con él usando la vista previa de formas de puntos, lo primero que vamos a hacer es bloquear la relación de aspecto en la que no queremos que el ancho o la altura se contorsionen. solo queremos asegurarnos de que necesitamos establecer algunos límites en la altura, por lo que si la altura es mayor que 80, estableceremos ese límite en 80. Si el ancho es mayor que 120, estableceremos el ancho en 120 vamos a establecer el ancho máximo y con la altura máxima también quiero establecer la posición izquierda quiero centrar esa posición izquierda quiero centrar entre columnas y una o así que necesito saber el ancho de esa columna y yo También necesito restar el ancho de lo que sea que sea esa forma, así que una vez que tomo el ancho de la columna menos el ancho de la forma y lo divido por dos, eso significa que va a poner la misma distancia en ambos lados. Quiero la misma distancia entre columnas. y una distancia igual en ambos lados que lo colocará allí, así que simplemente agregaremos la izquierda posición del n21 configurando la distancia igual vamos a hacer lo mismo con la parte superior sé que me estoy moviendo rápido tenemos mucho que cubrir aquí así que recuerda que puedes ver esto tantas veces como quieras ralentizar el video sin embargo quieres, está bien , así que también queremos centrarlo verticalmente a la derecha, quiero asegurarme, así que esta vez nos centraremos en las filas 21 a 26, quiero saber la altura de esas filas, entonces lo que quiero hacer es quiero saber la altura de esa forma en particular y luego esa forma, simplemente vamos a restar eso en dos que diferenciarían, así que nuevamente vamos a usar esa posición superior esta vez vamos a determinar la altura de esas filas que También vamos a determinar la altura del objeto que vamos a restar y dividiremos ese espacio por 2. Eso va a establecer esa posición central superior en función de la posición superior y agregar eso a la posición superior de n21 ahora estamos solo para asegurarnos de que esto sea útil para los documentos de Word, estamos volviendo a verificar la posición superior porque los documentos de Word son una especie de cosa rara que vas a tener a veces con los documentos de Word, cambiarán bien para que veas que se ve bien, no se ve muy bien, no lo sabes, y luego verás esto change it lo hace independientemente del trabajo por alguna razón porque la razón es que lo está insertando en un objeto y quiere que el usuario final realmente use esto como un objeto, si fuera un objeto más grande, en realidad podría usarlo. en realidad, puede hacer doble clic en él y sabe usarlo correctamente, así que manténgalo ahora, va a hacer doble clic, funcionará, así que lo abrirá, así que tenga en cuenta que las formas cambiarán en la palabra. Tuve un poco de suerte, pero esto te ayuda incluso después de unos segundos, podría cambiar por sí solo , así que solo nos aseguraremos de que la posición superior esté establecida, que es básicamente, vamos a volver a verificar esa posición superior y eso es realmente solo para documentos de Word, objetos incrustados, archivos PDF, no hay problemas con las imágenes. no hay problema, así que tenlo en cuenta, verás algunas cosas raras que suceden con los documentos de Word allí, muy bien, eso es todo para la vista previa, eso es todo lo que tenemos que hacer, ¿y si quiero abrir un documento correctamente? Todo lo que necesito. hacer es hacer clic en este botón de vista y eso lo abrirá directamente en Word, muy, muy bueno, entonces, ¿cómo hacemos que haya una macro asignada a este pequeño botón i aquí? Por supuesto, desea obtener estos íconos junto con todos los íconos que tenemos estoy usando eso estará en nuestros recursos en nuestro patreon, así que espero que te unas a nosotros en nuestro patreon, así que el documento se abre muy, muy, muy simple, ciertamente debemos asegurarnos de tener una fila seleccionada sin esa fila seleccionada, no lo hacemos. sabemos qué abrir y, por supuesto, ese hipervínculo se encuentra en la columna l y esa fila seleccionada, la pondremos en una variable llamada fila de documentos, entonces todo lo que tenemos que hacer es determinar la ruta del archivo, esa ruta del archivo se encuentra aquí. va a utilizar este hipervínculo de archivo de libro de trabajo que se va a abrir independientemente del tipo de documento, ya sea una imagen, pdf, word, excel, sea lo que sea, lo más probable es que lo abra siempre que tenga ese programa predeterminado configurado en su computadora . documento nuevamente, todo lo que debemos hacer es asegurarnos de tener una fila seleccionada , sabemos que la columna b contiene esa fila de la base de datos, por eso es tan importante, necesito saber qué fila eliminar para cinco o seis, siempre que b contenga un valor sabemos qué eliminar , así que colóquelo dentro de una variable llamada fila de base de datos de documentos y luego use el comando eliminar para que se elimine en los documentos de viaje y elimine toda esa fila, entonces, por supuesto, quiero eliminar cualquier forma que estaba conectada a eso usando o en realidad, esto debería eliminarse, no visible , probablemente debería eliminarse correctamente, así que elimine aquí correctamente porque quiero eliminarlo cuando lo seleccionemos, creará uno nuevo automáticamente si no existe, podría crear un error y, por lo tanto, yo estoy envolviendo un n onair reanudar a continuación o ir a cero, está bien, así que quiero asegurarme de que vamos a hacer eso y luego, por supuesto, vamos a volver a cargar los documentos, esto en sí mismo, esta macro en sí misma lo haría, probablemente no lo necesite. porque esta macro no necesita eso porque esta macro ya lo hace bien si miramos la actualización del documento aquí a la derecha vemos aquí la actualización del documento vemos que ya tiene así que no necesariamente necesitamos ese derecho ya lo tenemos aquí no eso es necesario está bien muy bien así que hemos cubierto eso ahora me gusta eso bien bien así que tenemos nuestros documentos cubiertos así que hemos cubierto todo en esta pantalla hemos cubierto los viajes hemos cubierto las reservas que hemos cubrimos la adición de vistas previas y la exploración de documentos geniales y hemos cubierto el itinerario, así que hemos ido mucho más lejos ahora centrémonos en este calendario, este calendario realmente genial , está bien, repasaré solo la parte principal de esto ahora si quieres entrar en muchos detalles en cuanto a lo anterior y cómo fue este calendario creado, incluiré algunos enlaces, pero tenemos muchas aplicaciones de programación, así que no voy a repasar la creación del calendario porque ya es grande, pero quiero centrarme específicamente en el que va a actualizar este derecho nuestro ¿Sabes que tenemos calendarios? He repasado muchas de las fórmulas, por supuesto, puedes descargarlas gratis y echar un vistazo a estas fórmulas, pero quiero centrarme solo en las macros que se asocian y eso está en este módulo llamado calendario. macros aquí y la principal en la que realmente quiero centrarme es esta llamada actualización de calendario ahora hemos tenido muchas cosas que nos ayudarán y, con suerte, la repetición de que hemos hecho muchas cosas con esto porque es tan y también cuando seleccionamos aquí, irá directamente a eso, creo que olvidé decir otra característica que olvidé mencionar, pero muy, muy fácilmente, eso significa que cuando seleccione algo, irá a ellos, incluso si olvido todos los características que agregué aquí para que cuando hagas clic en algo vaya a dir ectly a esa reserva, muy útil, está bien, entonces lo que quiero hacer es concentrarme si voy el próximo mes, por supuesto , no hay nada, no tengo nada programado en ese mes, el mes anterior, este 22 de marzo es donde todo está programado y nada aquí, así que lo que quiero hacer es asegurarme de que quiero saber todas las reservas que están asociadas en un mes determinado en este momento para hacer eso, debemos asignar sabemos que este comienzo de mes se ubicará dentro de esto vamos adelante y vea los encabezados aquí, por lo que se ubicará aquí dentro de b4, así que b4 le he dado un rango de nombre llamado inicio de mes, este es el primer día del mes, observe que esto va a cambiar a medida que cambiamos los meses . b4 va a cambiar, tiene una tarifa con nombre llamada inicio de mes, así que lo que quiero hacer es básicamente quiero saber todas las reservas asociadas en un mes determinado y podemos usar, por supuesto, mis filtros avanzados favoritos, así que necesitamos usa esto este es el filtro avanzado que vamos a usar y básicamente lo que quiero saber es a partir de la fecha cualquier cosa mayor o igual al inicio del mes y dos fechas que sean menores o iguales al final del mes o esto es o y un y o esto o quiero saber una fecha desde que es menor o igual al final del mes y una fecha 2 que es mayor que igual al inicio del mes, por lo que esto es un poco confuso, lo sé, pero asegúrese de que sea esto lo que lo habilitará ahora que no lo necesitamos. esas fechas formateadas correctamente eso no es necesario, de hecho, prefiero que no tengan la fecha formateada porque este número, este número original que es una fecha, funcionará independientemente del formato de fecha o la configuración regional que pueda tener en su Excel o su computadora, por lo que es muy importante estamos ejecutando filtros avanzados para usar estos números aquí, así que lo que esto va a hacer es proporcionarnos cualquier cosa con una fecha de inicio en el mes o cualquier cosa dentro de dos datos en el mes y va a crear esos resultados aquí, entonces qué vamos a hacer es que somos g vamos a recorrer esos resultados y vamos a colocar formas en eso en nuestro calendario según la fecha de inicio y lo que vamos a hacer es tomar esta forma de muestra aquí y estamos vamos a duplicar esta forma de muestra aquí y la vamos a duplicar para todos, también vamos a agregar un ícono y ahora esos íconos están todos aquí, así que tenemos un montón de íconos aquí y esos íconos van a ser muy muy útil cuando nosotros y ellos se crearán automáticamente, lo que significa que si elimino todos estos íconos aquí, se volverán a crear automáticamente porque se basan en los íconos que tengo en la carpeta, así que si actualizo eso y echamos un vistazo, vemos que esos íconos se han recreado aquí automáticamente, ¿cómo vienen? ¿De dónde vienen? Bien , vienen de la pantalla de administración, por supuesto, y de una carpeta, así que asocié estos íconos con los tipos de reserva . hotel hotel por lo que estos íconos son los mismos íconos a los que vamos para usar dentro de esta carpeta aquí, así que si echamos un vistazo dentro de la carpeta de íconos aquí y vemos que todos estos íconos, por supuesto, están disponibles a través de Patreon, los nombres de estos íconos son exactamente los mismos nombres que son y hemos buscado conocemos la carpeta en la que están ubicados aquí porque se encuentra aquí llamada carpeta de íconos, así que lo que quiero hacer es recorrer todos estos íconos. Quiero crear un ícono. Quiero combinar esta ruta de archivo con este nombre de ícono y quiero crear un ícono dentro de este calendario aquí quiero crear una lista y una vez que lo haga, lo que quiero hacer es en cualquier momento que encuentre este ícono si, por ejemplo, es un recorrido por la ciudad o si es un vuelo, quiero tomar esto icono y quiero ponerlo directamente con un vuelo para que estos iconos estén asociados hoteles asociados con esto un recorrido está asociado con este esquí está asociado con esto tenemos un icono de esquí o vuelo o taxi o algo así va a ser asociado con eso, así que quiero asegurarme de que el los íconos se vuelven a crear, así que lo que quiero hacer dentro de la mac quiero eliminar todos los íconos primero y luego quiero recrearlos quiero agregarlos en función de todos los íconos aquí, está bien, también quiero los colores de aquellos basados ​​​​en eso así que si cambio a la derecha si cambio, digamos si quiero que los aviones estén en rojo, entonces vuelvo al calendario y lo actualizo, verá que todos esos vuelos cambian a rojo, así que ahora tenemos una comparación de vuelos. Todo en rojo, por lo que queremos que los colores también sean dinámicos en función de los colores que establezcamos y podemos usar este teorema de color emergente realmente genial. Ni siquiera llegamos a eso. Tantas características me confunden . estos en tres días, pero es como si tres fueran mucho trabajo, así que no siempre recuerdo cada función, por eso tienes que seguir con estos entrenamientos hasta el final porque nunca se sabe , de hecho, nunca sé qué funciones van a tener. surja a medida que avanzamos en estos, así que asegúrese de que haya otros videos largos, pero hay más gran cantidad de valor aquí cuando selecciono el año quiero asegurarme de que el año cambie y actualice la programación para que ese año esté conectado a algo si entramos en el control de formato vemos que está conectado a b11 así que si echamos un vistazo i' Tengo una lista de años aquí, así que si echamos un vistazo a b11, vemos que es uno que está asociado con el año dos cero dos dos dos cero dos dos correcto, así que lo sé. También quiero saber el año seleccionado. Vamos a usar el índice i. tengo un rango con nombre llamado años, aquí está nuestro rango con nombre, así que si sé si voy a indexar nuestros años y quiero poner cualquier año que haya sido seleccionado, no lo pondré aquí, todo lo que tengo que hacer es simplemente indexar los años y quiero basarlo en b11 va a poner ese año aquí si sé el mes que es dinámico y sé el año entonces sé la fecha de inicio de ese mes porque simplemente será la fecha del año del mes y el día uno para que sepamos la fecha de inicio del mes y también sabemos la fecha de finalización del mes porque simplemente te va use la fórmula eo mes y eso estará directamente dentro de nuestras fórmulas aquí usando eo mes rendimiento mes aquí será el último día del mes, está bien, genial, así que continuemos con esta macro a medida que avanzamos, tenemos un montón de dimensiones las revisaremos a medida que avanzamos en el calendario lo primero que quiero hacer es configurar este libro y cambiar verdadero no creo que sea importante para esta capacitación pero podría ser en el futuro , así que tenlo en cuenta b1 bueno, voy a borrar cualquier libro seleccionado y hacer esto. No necesito algunas ideas que tenía. Una de mis ideas que tenía podría estar poniendo lo que quería. poner algo de información aquí sobre la reserva seleccionada, como tener una columna aquí con la reserva seleccionada pero no la necesitamos porque seleccionamos, irá directamente a todos los detalles, así que no hubo necesidad de poner nada más y fue realmente muy Fácil, está bien, por eso tal vez hubiéramos tenido la identificación de la reserva aquí. Estaba pensando en t la identificación de reserva seleccionada y la fila de reserva aquí y luego aparece información, pero no era necesario . Por supuesto, debemos eliminar todos los íconos y todas las formas asociadas con él, por lo que si echamos un vistazo, se llama grupo de reserva cinco . mire dentro de esto, vemos que está reservando el id de viaje uno correcto y el id de reserva aquí también, así que si vamos al calendario de viaje, el que acabamos de seleccionar reservando dos, este es este aquí, vuelo a París, ese es el indicado, así que tenga en cuenta que se llama reserva grupo dos, así que lo que quiero hacer dentro de la forma aquí reservando el grupo dos si extraigo eso, nos aseguraremos de que queremos asegurarnos de que cuando creamos nombres, los creamos para cada forma y lo eliminamos fácilmente para que el primero lo que quiero hacer es eliminar todas las formas excepto para la muestra, excepto para la muestra , por lo que básicamente vamos a usar cada forma, por lo que se llama forma de libro de muestra, por lo que quiero incluir cada forma que incluya la reserva de palabra completa, la reserva de palabra completa, por lo que incluye este grupo de reserva de forma o esto forma reserva 5 o incluso el ícono cómo se llama el ícono el ícono se llama libro ico cinco libro icl5, pero sabemos que el grupo en sí mismo contiene grupos de reserva, así que eso es suficiente para nosotros porque el grupo que se ha agrupado contiene reserva, así que podemos hacer Entonces, lo que voy a hacer es para cada forma de reserva en el calendario de formas. Básicamente, quiero borrar todas las formas de reserva existentes. ese grupo que contiene la palabra reserva lo vamos a eliminar también quiero eliminar esos íconos recuerda los íconos aquí también quiero eliminarlos porque quiero actualizar esa lista en caso de que el usuario final decida hacer cambios o agregar nuevos o nes, así que también vamos a eliminar todos esos íconos, así que usando este ícono si es mayor que cero, luego borre la forma del libro, elimine esos íconos una vez que los hayamos eliminado, podemos continuar, así que lo que quiero hacer ahora es básicamente tome todos esos íconos de la pantalla de administración y tráigalos tal como los vio, así que configuraré esa carpeta de íconos en función de la carpeta de íconos en la pantalla de administración que estará en una variable de cadena si está vacío estamos voy a informar al usuario para asegurarnos de que obtengamos la carpeta de íconos para que podamos buscarla si desea los mismos íconos que yo, únase a nuestro patreon, me aseguraré de que se los enviemos. vamos a configurar esa carpeta de íconos en una variable y si todavía está vacía incluso después de que les hayamos pedido que la busquen, podemos ir a sin íconos, simplemente irá allí y omitirá todo el camino hasta aquí si es ' t vacío lo que voy a hacer es simplemente recorrer quiero asignar números de icono y quiero darles a cada uno un individuo número dual muy importante, así que este es el primero llamado ícono uno, el segundo se llama ícono dos y así sucesivamente, pero básicamente lo que quiero hacer es recorrer todos estos íconos comenzando en la fila 10 hasta el final hacia abajo hasta la fila positiva 26. Así que vamos a recorrer a los que buscan eso, así que vamos a ejecutar un bucle del 1 al 17. ¿Por qué 17 porque tenemos 17 íconos posibles para hacer? Tenemos 17 correctos, tengo 17 posibles. unos, así que ese es solo el nombre que se me ocurrió, el número que se me ocurrió, así que lo primero que quiero hacer es asegurarme de que el administrador y el número del ícono recuerden que comenzando en 1 más 9, será 10. Entonces, e10 es nuestro primero si no es igual a vacío, eso significa que tenemos un nombre de icono , por lo que vamos a establecer la ruta del icono, se basará en la carpeta de iconos usando una barra invertida y cualquiera que sea el nombre del icono que se encuentra en la columna e, ese es el ruta completa del icono, entonces voy a verificar para asegurarme de que tenemos una ruta correcta si el icono del directorio pat h no es igual a vacío , entonces sabemos que es correcto, tenemos una ruta precisa, podemos continuar, así que con esa hoja, las imágenes del calendario se insertan correctamente, probablemente no necesitemos el calendario porque creo que lo tenemos aquí , no, lo hacemos. imágenes del calendario inserte la ruta del ícono y le damos un nombre específico llamado ícono y el número del ícono y luego nos aseguramos de que tenga un número único, el nombre único correcto con ese número único, entonces lo que vamos a hacer es trabajar con solo quiero configurarlo en función de la izquierda en la columna una configuración con una ubicación específica y básicamente vamos a recorrer eso y crear una ubicación específica justo fuera de la pantalla en la columna a para que podamos mostrarlos y voy para configurar una macro en ese llamado conjunto de reserva de calendario y eso significa que cuando seleccionan un ícono, quiero asegurarme de que algo suceda, repasaremos esa macro en solo un minuto cuando incluso seleccionen el ícono y también si seleccionar en la forma o si seleccionan en el icono i w y que la macro se ejecute, entonces necesitamos asignar una macro a ese ícono porque si asignamos una macro a ese ícono aquí, si asigno una macro a ese ícono una vez que ese ícono se duplique y se ponga en forma, sé que la macro lo hará mucho también se duplicará junto con eso , así que vamos a bloquear la relación de aspecto y le daremos una altura específica de 10. Eso es todo y solo vamos a recorrerlo para que se creen todos los íconos. ahora nos vamos a centrar en la hoja de reserva, recuerda, como mencioné antes, necesitamos ejecutar un filtro avanzado. Quiero saber todas las reservas en un mes determinado. Vamos a tener esos resultados aquí, así que lo primero que vamos a hacer es ejecutar ese filtro avanzado vamos a determinar la última fila quiero borrar cualquier resultado dentro de esa reserva determinando primero la última fila ejecutando nuestro filtro avanzado en función de los criterios de fecha que mencioné ar2 a as4 que es un criterio muy importante aquí mismo va a traer esos resu Está allí una vez que tengo esos resultados en u2 a bc, vamos a determinar la última fila en función de au si hay menos de tres, eso significa que no hay datos, podemos salir de esto, está bien si hay datos que vamos a desactivar la actualización de la pantalla de la aplicación hacer las cosas un poco más rápidas quiero ordenarlas según dos parámetros primero quiero ordenarlas por fecha justo en ayquiero ordenarlas primero por fecha aquí en ay y luego después por hora justo primero por fecha luego, por tiempo, para que podamos hacer eso básicamente con la ordenación, por lo que lo primero es la fecha del byte, así que vamos a ejecutar esa ordenación, pero lo que quiero hacer es quiero agregar, quiero borrar cualquier ordenación existente y quiero agregar la primera clave que es fecha por ay3 y luego por hora por az3, así que vamos a ejecutar eso y luego, por supuesto, vamos a ejecutar y aplicar esa clasificación en función del rango de au a bc, asegurándonos de llamar a la hoja de nuevo porque estamos dentro de una clasificación de ancho , entonces lo que vamos a hacer es recorrer y una vez que están ordenados según la fecha . Voy a recorrer cada fila dentro de esos resultados, cada una de las filas, así que desde la tres hasta la última fila, quiero recorrer cada una. Quiero poner esa identificación de reserva. Quiero saber la reserva del viaje. id muy importante porque entonces también quiero saber el nombre de la reserva porque es que los nombres de las formas que se iban a basar en eso cuando entramos en el calendario necesito saber, por supuesto, necesito saber el texto aquí este es nuestro nombre de nuestra reserva y también necesito saber la idea de la reserva porque vamos a poner esa identificación aquí para obtener eso, así que vamos a extraer esa información, también necesito saber en qué fecha está activado porque necesito colocarlo en un día específico y también necesito saber la posición si hay cuatro reservas diferentes en un día determinado necesito asegurarme de que no se superpongan así que necesito incrementar la posición superior hacia abajo abajo, así que si hay cuatro, depende de cuántas reservas en una fecha determinada, está bien, así que tha Es muy importante, por lo que necesitaremos saber toda esa información , por lo que necesitamos saber la fecha de reserva, la fecha de origen que vendrá y traerá nuestros resultados aquí dentro de nuestras reservas de tributación, y tomará la fecha de reserva correcta. nombre de aw y la identificación del viaje y av, así que vamos a obtener toda esa información aquí, ay ba será la fecha actual si necesitamos eso, es posible que no lo necesitemos y luego también necesito saber el nombre de la reserva en aw y también quiero saber el tipo de reserva no el estado del pedido es el tipo de reserva el tipo de reserva es muy importante por algunas razones un tipo de reserva nos permitirá saber qué icono usar y también qué color usar realmente necesitamos saber necesito saber todo sobre ese tipo de reserva, así que necesito buscar eso adentro necesito encontrar con qué fila está asociado porque la fila nos dirá de qué color la fila también nos dirá qué icono a usar por lo que necesitamos saber la fila por lo que necesito saber la fila de ese libro ing donde es para hacer que vamos a establecer el icono de tipo de reserva en función de hacha recuerda hacha se va a encargar de ese hacha de reserva necesito saber que este es el tipo de reserva coche hotel lo que sea y así sucesivamente y así sucesivamente una vez que tengamos eso, quiero obtener esa fila como mencioné, así que vamos a hacer o el número de ícono correcto, así que lo que voy a hacer es establecer la fila de ícono de número de ícono en cualquier fila que vaya a ser para buscar eso estoy buscando dentro de los tipos de reserva del administrador tengo un rango con nombre dentro del administrador llamado tipos de libros bien ¿qué estoy buscando estoy buscando la pestaña de reserva estoy buscando en los valores y yo Voy a restar 9, ¿por qué quiero eso? porque quiero el número de icono. Quiero establecer esos números de icono. Si el número de icono no es cero, entonces sabemos por qué necesitamos ese número de icono porque aquí te lo mostraré. por qué una vez que encontramos esa fila, digamos que se encuentra un hotel en la fila 10, ¿qué número de icono es ese? Cuando miro dentro de nuestro calendario de viajes aquí echamos un vistazo a este hotel en particular, se llama icono 1. Entonces, si se encuentra en la fila 10 y quiero obtener ese número, sé que es el icono 1. El icono 1 se encuentra en la fila 10. Entonces, ¿a qué vamos? hacer es por eso que estamos restando 9 correcto, se encuentra en la fila 10 aquí, pero no quiero 10, quiero uno, así que debemos restar, eso nos dará nuestro número de ícono configurando nuestro número de ícono si no es cero, podemos establecer el color de la reserva, sabemos el color de la reserva ahora, otra forma en que podríamos hacerlo es probablemente podría haberlo conseguido, lo llamaría, digamos fila de tipo de reserva, la fila de tipo podría ser 10, esa es otra forma de hacerlo, pero aún necesitamos el número de ícono, ¿de acuerdo ? lo que quiero hacer es saber el color, ¿cómo puedo encontrar el color de nuevo? Vamos a agregar 9 aquí, así que esto nos dará 10. Entonces, d y 10, quiero extraer ese color que necesito . para saber qué color ha establecido el usuario aquí y ese color se basará en d y en la fila que sea, así que quiero obtener el color de fondo y poner ese int o una variable, así que vamos a determinar el color interior de lo que sea que se encuentre y lo pondremos dentro de una variable llamada bookcaller aquí solo si el número del icono no es cero si se ha encontrado también quiero saber cuántos Recuerde que quiero saber cuántas reservas en un día determinado, eso es realmente muy importante, así que si miro dentro de nuestras reservas de viaje, quiero saber, por ejemplo, en el tercero, cuántas reservas hay en el tercero o cuántas hay en el 10. Bien, necesito saber cuántos si echas un vistazo al día 10, vemos que hay cuatro reservas diferentes, así que si entramos en nuestro calendario de viaje y vamos al día 10, vemos que hay cuatro reservas diferentes, así que quiero contar eso, así que Voy a echar un vistazo. Nos encontramos con esa fecha. Sabemos que pusimos esa fecha en una variable que a partir de la fecha. Pero ahora quiero contar cuántos hay allí, así que lo que vamos a hacer es vamos a establecer el conteo de pedidos por día y lo basaremos en los resultados de la fecha de inicio ahora tengo g ot un rango con nombre aquí llamado desde los resultados de la fecha, déjame mostrarte ese rango con nombre para que entendamos que el administrador de nombres de fórmulas está bien, se llamará desde la derecha, así que si miramos desde los resultados de la fecha, este es un rango con nombre dinámico que usa la opción en la que se basa los resultados de eso desde la fecha de los resultados de la fecha, por lo que tengo un rango con nombre basado en la compensación, por lo que, sin importar el tiempo que duren los resultados, pondrá todas esas fechas en una tasa con nombre, así que ahora lo que quiero hacer es buscar una fecha específica en ese rango de nombres. Quiero contar cuántas instancias de esa fecha hay dentro de esa columna dada para que podamos hacer eso. Vamos a llamar a eso el conteo del orden del día. Háganos saber cuántos conteos hay que va a usar. función de la hoja de trabajo de la aplicación vamos a usar el conteo si es lo mismo como lo haríamos dentro de una fórmula y qué estoy reduciendo voy a contar la fecha de inicio y voy a contar cuántas fechas de inicio hay dentro de nuestros resultados eso nos va a dar una nota como va a igualar vamos s ver el número de instancias de una fecha dentro de nuestros resultados ahora si es mayor que 10 eso significa demasiado para un día correcto no podemos tener eso si es menos de 10 lo que voy a hacer es lo que voy a hacer dividirlo bien para que la mitad y la mitad para que pueda así que básicamente es menos de 10 no tenemos no tenemos más de cinco pero si lo hicimos bien, lo que hacemos es cortarlos por la mitad para poder poner la mitad de esto y la mitad de esto, así que básicamente tenemos cinco y podemos tener dos columnas, así que si tenemos dos columnas de cinco, podemos tener un total de diez, por eso lo configuramos para que el máximo sea diez si son diez, simplemente configúrelo en diez si el día el recuento de pedidos es mayor que uno. También quiero mantener el seguimiento del pedido a medida que recorremos estos a medida que avanzamos en el primero, el segundo que quiero incrementar, así que sé que tenemos que colocar el arriba a la derecha. Quiero realizar un seguimiento . en uno, los dos, los tres o los cuatro, necesito saberlo porque necesito seguir moviendo la posición superior hacia abajo, hacia abajo, así que debemos realizar un seguimiento de esa cuenta t para que el recuento de pedidos del día sea mayor que uno, entonces el número de pedido es igual al par ordenado, vamos a realizar un seguimiento de los números de pedido para saber cuántos pedidos vamos a establecer el número de reservas en un día cuántas reservas dadas en una fecha específica mientras realizamos un seguimiento de eso ayudará a que la posición superior baje ya que sabemos en cuáles estamos bien si el número de pedido es igual a uno, es el primer pedido que quiero encontrar donde eso es correcto, sabemos que quiero saber que esa pantalla es el día 21, así que lo que voy a hacer es recorrer todas estas filas, sucede muy rápido, así que voy a pasar, digamos, e4 todo el camino hacia k4, luego voy a bajar una fila, luego voy a ir desde e10 hasta k10 y así sucesivamente, así que necesitamos dos bucles para ese para las filas filas 4 filas 10 fila 16 y así sucesivamente, y una para las columnas 5 a 11. Entonces, debemos hacer eso aquí, así que lo primero es recorrer las filas para th La fila del calendario es igual a 4 a 34. No estamos revisando todas las filas, vamos a revisar cada sexta fila, así que vamos al paso 6. También necesito recorrer todas las columnas de la 5 a la 11. lo que voy a hacer es buscar esa fecha si el calendario se vende como el valor de la fila y la columna si el valor de estos es igual a la fecha de inicio básicamente estoy buscando esto es recordar esta es una fecha muestra 15, pero en realidad es una fecha, ¿cómo sabemos que debido a un formato personalizado, si cambio eso a una fecha corta, veremos que en realidad es la fecha, por lo que en realidad muestra la fecha, pero en realidad es una formato qué formato de número es un formato personalizado y básicamente todo lo que vamos a mostrar es d, solo queremos mostrar la d y eso es todo lo que vamos a mostrar en ese formato personalizado, pero estas son fechas, así que si es encontrado si está montado, sé en qué columna y sé en qué fila colocarlo, está bien , así que una vez que se encuentra si es igual si es igual es encontramos que vamos a establecer la fila del calendario en la fila del calendario vamos a establecer la columna de la columna igual a la columna del calendario y vamos a crear un orden vamos a omitir vamos a obtener fuera de ese ciclo, no necesitamos ese ciclo, se ha encontrado, podemos salir de eso, por lo que se llamará algo llamado crear orden, se omitirá aquí, genial, pero si no es la primera reserva en un día correcto, así que si no lo recuerda, aquí está el primer número, el primer número de pedido, si no lo es, todo lo que tenemos que hacer es simplemente incrementar la fila en uno, ¿por qué no apostamos a que no lo es? Ya lo hemos encontrado, solo quiero incrementar uno por uno y uno y eso moverá esa fila un poco hacia abajo, la columna permanecerá igual a la derecha, así que podemos hacer eso, eso es todo lo que tenemos que hacer aquí si el número de pedido es igual a 6, entonces lo que vamos a hacer es qué quiero decir con eso significa que vamos a hacer 5 luego otra columna y otra fi correcto, así es como vamos a actualizar el número de orden para que la fila del calendario sea igual al contador, básicamente, estamos reduciendo las filas a la fila superior si el número de orden es igual a seis, pero si es menor que simplemente estamos incrementando las filas quiero repasar eso otra vez es un poco confuso recuerda que estamos mostrando 4 pero podríamos mostrar 10 vamos a dividir esto por la mitad bien si fuera por la mitad así bien podríamos hacer más de uno podría verse algo como esto si duplico que podría verse así, así que podríamos hacer 10 bien, así que cuando lleguemos al quinto, el quinto y ya estamos en seis, el sexto va a subir arriba, así que necesitamos volver a que las filas sean menos cualquier fila que esté aquí menos 4 correcto, vamos a restar las filas y luego vamos a comenzar esa columna nuevamente, así que eso es todo lo que tenemos que hacer dentro del código, simplemente reducir es decir, si el número de orden es igual a 6, la fila del calendario es igual a lo que sea la fila del calendario menos 4 i th tinta que debería ser menos 5 bien, déjame comprobar eso, así que bien, estamos aquí en la fila 15, tendrá que volver a la fila ahora, es menos cuatro, tendrá que volver a la fila 11. del 15 al 11 restando cuatro para que sea correcto, de lo contrario, simplemente estamos aumentando la fila una vez, si no es seis, si estamos en uno, dos, tres, simplemente estamos aumentando la fila para que vaya de la fila 11 a 12 a 13 en el mismo día, está bien, me alegro de que hayamos aclarado eso, de acuerdo , continuando, así que ahora queremos crear ese pedido o crear debería decir crear reserva, pero está bien, esto vino de un pedido, así que está bien ordenar reservar lo mismo ahora lo que vamos a hacer es que vamos a necesitar saber si el calendario será igual a cero solo para asegurarnos de que necesitamos la fila del calendario y necesitamos la columna si alguno de ellos es cero por algún motivo vamos a omitir ese pedido, está bien, así que ahora lo que vamos a hacer es que estoy listo para crear esa reserva, listo para crear eso forma de reserva, por lo que lo primero que queremos hacer es tomar esta forma de muestra aquí llamada forma de reserva de muestra y vamos a duplicarla bien. Voy a duplicarla y colocarla directamente aquí, así que lo primero que queremos hacer es duplicarlo y darle un nombre muy específico para que podamos hacer una reserva de muestra duplicar la palabra reserva y la identificación de la reserva y una vez que se haya duplicado podemos trabajar con él pero quiero verificar el contador de pedidos diarios quiero verificar eso si el día o la cuenta recuerda que quiero establecer el ancho recuerda que el ancho va a ser diferente si el número de pedidos es hasta cinco no hay problema el ancho puede ser el largo total pero si el número de pedidos es mayor, digamos que tenemos seis seis o siete u ocho o nueve o diez reservas en un día necesito asegurarme de que ese ancho sea la mitad de lo que sea la columna , así que quiero establecer el ancho en la columna completa o en la mitad, así que vamos para verificar que si aquí el conteo de pedidos del día es mayor a cinco, entonces el boo k el ancho es simplemente igual a las celdas el ancho de esa columna dividido por dos, de lo contrario, lo configuraremos en el ancho completo, de lo contrario, el ancho de la reserva es igual al ancho completo de la columna derecha, así que necesito verificar el ancho de eso basado en eso está bien ahora también quiero establecer la posición izquierda ahora la posición izquierda si el número de pedido es mayor que 5 si ya estamos y luego la posición izquierda será donde la posición izquierda será aquí si es menos de 5, la posición izquierda estará aquí, por lo que debemos dividir la posición izquierda en función de cuántos hay en un día y podemos hacerlo con las siguientes líneas de código para reservar la posición izquierda si es mayor que 5 va a ser la posición izquierda de esa columna más el ancho de ese pliegue el ancho de la columna dividido por dos, así que básicamente está dividiendo la columna en dos y moviéndose sobre la derecha; de lo contrario, la posición izquierda será simplemente la posición izquierda en la columna está bien, genial, así que ahora tenemos la posición izquierda n tenemos el ancho configurado y tenemos configurada la posición izquierda ahora simplemente necesitamos colocarlo de modo que con esta nueva forma que acabamos de crear la reserva y la identificación de la reserva vamos a establecer la posición izquierda en función de la reserva, vamos a establecer la posición superior en función de la fila del calendario justo donde está la fecha aquí es donde se encontró la fecha las filas donde se encontró la fecha más uno derecho no lo quiero dentro de la fila de fecha i lo quiero uno abajo a la derecha que está aquí, así que sea cual sea la fila, sea cual sea la fila del calendario, sea cual sea la fila que se haya incrementado , será ese más uno y queremos configurarlo en la columna del calendario y luego vamos a agregar más uno porque no lo queremos directamente en la parte superior. Voy a establecer el ancho en función del ancho de la reserva. Estaba aquí a la derecha o aquí, así que hay dos opciones en el ancho de la reserva, pero vamos a establecer que aquí estamos. vamos a establecer la altura en 15. queremos establecer texto allí , se basará en ese texto de reserva ahora que bo El texto correcto ya se definió aquí y se basará en el nombre de la reserva, así que voy a configurar el texto allí. Una vez que tengamos el texto de la reserva, podemos configurar una macro a la derecha. Quiero configurar esa macro en el calendario de acción. es posible que no sea tan importante hacer eso si configuramos nuestra muestra correctamente, observe que nuestra muestra no ha asignado la macro, pero si asigno esa macro a la muestra, puede que no sea necesario realizar este paso porque estamos duplicando la muestra y si duplicamos, entonces la muestra ya tiene la macro asignada , entonces esto puede no ser necesario, está bien, ahora lo que queremos hacer es establecer el color del libro , siempre que el color de la reserva no sea igual a vacío, vamos a establecer el relleno de color de la forma para el color rgb es igual al color de la reserva establecer el color de la reserva, así que repitamos el libro y el color establecidos y eso configurará ese color de reserva único basado en el color que ya se encontró dentro , siempre que se haya encontrado ese icono ok genial ahora lo que vamos a hacer es vamos a establecer la hoja de grupo quiero crear un grupo del que quiero agrupar estas dos formas básicamente esta forma aquí y esta forma el icono esas dos formas quiero crear un grupo de eso así que necesito una cadena que la cadena va a retener ambos nombres de forma, la reserva de nombre de forma 5 y el icono de reserva de nombre de forma 5 o lo que sea, así que quiero asegurarme de crear una pantalla, así que estoy creando una cadena, esta cadena nos ayudará a crear el grupo que va a comenzar. fuera de eso, la transmisión comenzará con la reserva y la identificación de la reserva ahora estamos listos para agregar los íconos, está bien, si el tipo de reserva recuerda que el tipo de reserva no es igual a vacío y el ícono, solo vamos a asegurarnos de que tenemos un tipo de reserva y tenemos un número de ícono siempre que no estén vacíos, entonces podemos continuar y ahora podemos configurar el ícono, así que vamos a tomar nuevamente aquí es donde ese ícono y el número de ícono son útiles, sabemos que el número dinámico que creamos en función del tipo de reserva que vamos a duplicar ica esa muestra y le daremos un nombre llamado libro de reserva ico e id de reserva que creará ese icono una vez que lo hagamos podemos trabajar con ese icono vamos a establecer la posición izquierda en función de la reserva que queda entonces un poco más a la derecha 4 píxeles y establezca esa posición superior en función de la misma posición superior que hicimos con la forma nuevamente asignando la macro con eso y ahora vamos a completar esa cadena, por lo que será esa cadena lo que sea que hagamos. creado aquí arriba además, vamos a agregar una coma y vamos a agregar, por supuesto, vamos a necesitar el y aquí y la identificación de la reserva en el libro de hoy, está bien, eso lo agregará allí así que ahora hemos agregado la cadena, la cadena nos ayudará a agrupar , tenemos todos los nombres de formas dentro de esta única cadena separados por una coma, ahora lo que tenemos que hacer es agruparlos, así que vamos a crear una matriz de grupo es una matriz ahora hemos definido esa matriz de grupo hasta aquí como una matriz llamada matriz de grupo como una cadena con los corchetes está bien , así que una vez que tengamos eso, podemos dividirla en función de esa coma, voy a tomar esa cadena , la dividiremos, crearemos una matriz de esos nombres de formas una vez tengo esa matriz, es muy fácil de agrupar, todo lo que debe hacer es configurar la matriz de grupo de rango de formas del calendario configurando un nombre de grupo llamado grupo de reserva y la identificación de reserva, esto va a crear ese nombre único para ese grupo de esas formas que vamos a configure el texto de la reserva para que se vacíe, elimine lo que sea y el flujo de grupo se vacíe a medida que recorremos todas las formas, así que eso es todo, simplemente vamos a recorrer esto y luego, por supuesto, vamos a establecer el número de orden si se ordenó el número es mayor que el de la guardería, recuerde que estamos determinando cuántas reservas diferentes hay en un solo día y estamos comprometiendo este pedido uno más uno más a medida que aumenta, así que una vez que hayamos alcanzado el límite es igual a eso, entonces estamos vamos a establecer el número ordenado en cero, así que básicamente esto está recorriendo todas las reservas en un día determinado una vez que hayamos alcanzado ese máximo si ya estamos si el número de pedido es cuatro y tenemos cuatro libros diferentes en un día determinado, entonces estableceremos ese número de pedido en cero, así que va a restablecer el pedido en el último en el último pedido el último pedido del día o el último debería decir reservar aquí copié esto de otro probablemente ya te hayas dado cuenta y luego vamos a activar la opción de pantalla de aplicación también , está bien, la última macro que tenemos que mostrarte en este ups, probablemente no voy a repasar el mes que hemos repasado antes, solo el último marcador que te mostraré hoy, los otros tres . simplemente vamos al siguiente y este mes no necesitamos ir, aunque eso no es tan importante, pero quiero hacer el calendario de reserva, seleccione esa es la mac o recuerde que esa es la macro que hemos asignado cuando hago clic aquí i quiero ir directamente a la forma quiero asegurarme de que quiero saber la identificación del viaje quiero asegurarme de que esa reserva aquí quiero buscar esa identificación de la reserva y quiero saber de qué proviene el viaje sé la identificación de la reserva ¿cómo puedo saber la identificación de la reserva porque la estamos adjuntando a ese nombre de forma reserva 11 o reserva 12. Esta es la identificación que viene con ella, así que lo primero que quiero hacer es extraer eso en una variable, está bien, entonces la identificación de la reserva será igual al nombre de la forma. se llama la persona que llama a la aplicación y lo que quiero hacer es eliminar los primeros siete caracteres y ahora, si echamos un vistazo dentro de esta forma de icono aquí, vemos que se llama libro ico libro ico bokico hay siete caracteres correctos y luego tenemos la identificación si elimino esos siete caracteres nos dejará con la identificación si echamos un vistazo a esta forma aquí se llama reserva también tenemos siete caracteres si elimino esos siete caracteres, así que no importa si hacen clic en el icono o si hacen clic en la forma que va a dejar déjenos con la misma identificación de reserva exacta y eso es muy importante porque es por eso que ambos tienen siete caracteres en la cadena más la identificación, así que cuando elimino esos primeros siete caracteres nos deja con la identificación de reserva y podemos eliminarlos usando el comando reemplazar Básicamente, tomaré los primeros 11 caracteres y los reemplazaremos con nada. Lo que hará es dejarnos con la identificación. Ahora, lo que quiero hacer es saber qué fila si sé bien, digamos. Sé que extraje eso y tengo el 5 en una variable, sé que está funcionando y si entro en nuestra lista de reservas y estoy buscando la identificación de reserva 5, entonces estoy buscando esto, pero ¿qué? lo que quiero hacer es saber la identificación del viaje, así que lo que debo hacer es determinar en qué fila se encuentra esta identificación de reserva una vez que se encuentra lo que se encuentra en b es nuestra identificación de viaje lo que voy a hacer entonces voy a tomar esa identificación de viaje voy a colocarla directamente dentro de b1 voy a colocar esa identificación de reserva voy a colocarlo directamente dentro de b11 , así que eso es lo que vamos a hacer aquí, vamos a usar el comando de búsqueda y estoy buscando la identificación de la reserva, estoy buscando identificaciones de reservas extranjeras y quiero extraiga esa fila una vez que sepa la fila siempre que no sea 0 usando el comando de búsqueda, entonces puedo tomar esa identificación de viaje y extraerla nuevamente de la columna b en nuestras reservas de la columna b aquí en nuestras reservas de viaje extraer esa identificación de viaje ahora i sé la identificación del viaje ahora sé la identificación de la reserva ahora puedo cargar todo lo que necesito, está bien, ahora lo que vamos a hacer es que estamos listos para activar, así que nos centraremos directamente en la hoja de viaje, ¿verdad? Vamos a actívelo aquí primero, vamos a configurar el viaje correctamente, así que quiero tomar b1 y lo pondré directamente aquí y voy a cargar ese viaje y ejecutar la macro, va a cargar ese viaje, pero quiero hacer una cosa más bien una vez que cargue ese viaje también quiero encontrar en esa fila seleccionada recuerda que va a cargar ese viaje así que toda la información La mación se va a cargar, voy a tener esa identificación de este error, pero una cosa que no se hace es que quiero configurar esa fila de viaje seleccionado, por ejemplo, si selecciono en nosotros grandes viajes, quiero asegurarme de que nosotros grandes viajes es seleccionado correctamente, así que si entro en el calendario de viajes y hago clic en digamos texas, quiero asegurarme de que se seleccionen los grandes viajes, así que quiero asegurarme de que b4 contenga ese 6 que activará ese formato condicional para hacer eso lo que tenemos que hacer es encontrar que i trip id y sé que está ubicado en la columna d recuerda que es la columna d aquí es donde está ubicado bien quiero saber que está ubicado en la fila 6 eso es 2 ese 2 eso y recuerda que está oculto así que esta vez necesitamos usar fórmulas porque esa identificación de viaje está oculta. Quiero obtener esa fila en qué fila se encuentra y siempre que no sea 0 correcto, lo que voy a hacer es colocarlo directamente. dentro de b4 y la fila de viaje será la b4 que activará el formato condicional que estamos d ocurriendo exactamente lo mismo para las reservas en reservas, voy a colocar esa identificación de reserva directamente en b11 aquí mismo una vez que sepa que trippy va a funcionar, puedo ejecutar automáticamente la macro para cargar esa reserva aquí mismo cargar esa reserva y luego lo que quiero hacer es esta vez quiero buscar esa identificación de reserva pero voy a buscarla directamente dentro de esta columna aquí columna f y una vez que se encuentra, voy a tomar cualquier fila que se encuentre y voy a tome esa fila y ejecútela colóquela directamente en este caso, porque el texto se encontró en la fila 16. Voy a tomar esa fila 16, la colocaré directamente en b10, así que haremos exactamente lo mismo que estamos mirando hacia adelante en f10, estamos usando fórmulas porque está oculta, estamos extrayendo esa fila y vamos a tomar esa fila, la pondremos directamente dentro, asumiendo que no es cero, la pondré directamente dentro b10 y esa va a ser la fila de reserva seleccionada, está bien, muy, muy bien, hemos superado la p mes anterior todo lo que estamos haciendo es básicamente cambiar el mes y los años el próximo mes estamos cambiando el mes y posiblemente los años y este mes todo lo que estamos haciendo es determinar el año actual la fecha actual el año actual y estamos poniendo eso en b11 solo asegurándonos de que tenemos eso y luego estamos actualizando estamos cada vez que vamos a actualizar el calendario genial está bien digamos que tenemos algunos más para ir hemos repasado algunos las macros de la aplicación de cosas configuran correctamente el color de la reserva esto es muy a relativamente fácil justo cuando quiero configurar los colores que quiero saber sobre el cambio de selección cuando estoy dentro del administrador y hago un cambio de selección quiero cargar esto realmente genial eh esta pequeña paleta aquí y esa es solo una forma llamada paleta derecha paleta de colores, así que cuando hago una selección, cambio ahora, por supuesto, cuando la selecciono, quiero cambiar ese color a la derecha, así que va a tomar una macro , hay una macro asignada a esto es correcto, así que si miro dentro de cualquier i forma individual vemos que es una macro asignada a la que vamos a asignar macros vemos que se llama establecer colores de reserva así que en eso nos vamos a centrar ahora establecer color de reserva básicamente todo lo que tenemos que hacer es tomar ese activo el color del interior de la celda tomará cualquier forma nombre el color del nombre de la forma así que vamos a tomar el color de esa forma que seleccionamos y vamos a colorear esa celda interior y luego también vamos a ocultar esa paleta de colores esa paleta de colores aparece dentro de la pantalla de administración en el cambio de selección correcto si estamos dentro de la pantalla de administración estamos dentro del cambio de selección en el día escolar cambiar bien eso no parece que sea algo interesante en la selección de di no sé de dónde obtengo estos d10 a d26 si hacemos un cambio de selección y queremos asegurarnos de que c contiene un valor correcto quiero asegurarme de que tenemos algo aquí correcto si lo hago no quiero nada no quiero quiero que pase algo aquí a menos que pongan algo en la columna c, entonces quiero que aparezca la paleta de colores, así que queremos asegurarnos de que c contiene un valor, simplemente vamos a colocar esa paleta de colores directamente en la columna d y en cualquier fila de la fila de abajo a la derecha, así que si pongo aquí, la fila debajo de esa paleta de colores va a aparecer, podemos cambiar ese derecho muy, muy fácilmente, así que vemos cómo mostramos la paleta de colores y ahora sabemos cómo coloreamos realmente las celdas en función de la selección de cualquier forma dentro de esa paleta de colores usando esta macro aquí buscando carpeta de iconos relativamente simple nada interesante buscar carpeta de documentos nada interesante aquí actualización de viaje de tablero ahora esto es genial tenemos algunos realmente geniales así que pongamos nuestra atención en el tablero y luego, lo último que vamos a hacer es centrarnos en este editor de interfaz de usuario realmente genial, está bien, así que lo último es el panel de control, la penúltima cosa, luego el administrador de viajes será el último, está bien, así que w Lo que tenemos aquí es que tengo un tablero realmente genial, ahora es relativamente simple, pero quiero saber cómo creamos este mapa realmente genial, quiero saber el mapa y quiero saber las ciudades asociadas con cada mapa individual. bueno, podemos crear un mapa basado en cualquier dato y vamos a usar algunos datos que se ubicarían dentro de nuestra reserva de viaje, así que básicamente lo que quiero saber es que quiero saber las ciudades dadas para un viaje específico, así que si cambio esto a europa quiero saber en este caso van a ser los estados correctos vamos a francia italia correcto o tal vez vamos a ir a hawaii y quiero que hawaii aparezca aquí así que ¿cómo hacemos eso? solo diciéndonos que tenemos algunos datos posibles con alta confianza, trazamos el tres por ciento de las ubicaciones, pero eso es con alta confianza, solo haciéndonos saber que podemos tener eso, está bien, entonces, ¿cómo sabemos que obtenemos? una de las funciones más nuevas en uno de los Excel más nuevos y podemos hacerlo en función de en algunos datos, así que si entramos en las reservas de viajes y se basará en algunos datos extraídos, queremos saber cuáles son esos datos, así que tenemos algunos estados únicos correctos y voy a poner básicamente algo de información aquí, así que básicamente tengo un filtro avanzado . Quiero saber una identificación de viaje, así que quiero saber todos los estados únicos, todos los estados o provincias únicos para un viaje específico . dentro de nuestra reserva de viaje, vemos ahora que tenemos francia, italia y suiza, si lo cambiamos a hawaii, solo será hawaii, así que básicamente estamos extrayendo los procesos de etapa únicos basados ​​​​en eso y también tengo un pequeño espacio aquí y eso nos ayudará con nuestro ícono, así que todo lo que tenemos que hacer es tomar esto y junto con algunos datos, aunque en realidad no necesitamos tener ningún dato, pero ¿por qué no le da algunos espacios en blanco? use el guión bajo dos veces aquí y vamos a resaltar esto y w lo que vamos a hacer es insertar lo que quiero hacer es insertar un mapa llamado mapa lleno y eso es justo lo que vamos a hacer y aquí lo muestra automáticamente, así que tengo que crear un mapa así, así que ahora basándonos en estos datos, lo hacemos bien, genial, así que ahora vemos el mapa, puedes verlo un poco más grande, ya que vamos a trabajar con él, eso es genial, eso es este lugar, pero ahora tengo un poco más de información. ¿Qué pasa si quiero formatear los datos? Quiero agregar algunas etiquetas de datos aquí. Quiero agregar etiquetas de datos. Entonces, ¿cómo lo hago? realmente no quiero ese guión bajo, quiero formatearlos en algo un poco diferente , entonces, ¿cómo lo hago bien si vamos a formatearlos cuando entremos en el formato, podemos ver que tenemos algunas opciones aquí ? así que entremos en el formato aquí, quiero mostrar este aquí ahora, lo que quiero hacer es dentro de estas etiquetas, quiero llenarlo con algo especial, ¿verdad? voy a llenar con una imagen, quiero mostrar ese ícono, así que aquí vamos a seleccionar una imagen o texto y luego lo que vamos a hacer es insertar y voy a hacer clic en el íconos voy a buscar un ícono específico basado en la ubicación correcta porque eso es lo que quiero hacer ubicación bien, entonces este es el que quiero seleccionar y voy a insertar eso y lo que va a hacer es ir para insertar eso ahora va a ser un poco pequeño, así que si lo aumentas un poco más, lo aumentará y así es como lo obtenemos para que podamos traerlo, así es como obtenemos este tipo de íconos geniales un poco un poco estirado, pero entiendes la idea, así que todo lo que tenía que hacer era mostrarlo ahora, por supuesto, cuando esos datos cambian justo cuando mencionemos, esos datos van a cambiar a un máximo que vamos a repasar cuando esos datos cambien automáticamente vamos a ver dentro de nuestras, por supuesto, nuestras reservas de viaje aquí que notan que cambia automáticamente aquí, así que eso es todo lo que tenía t o hazlo y, por supuesto, simplemente llévalo al panel de control, así que eso es exactamente lo que hice aquí, tenemos un gráfico de datos y esto solo nos deja saber un pequeño mensaje, sería bueno deshacernos de eso , a veces lo veo cuando lo cambiamos. pero básicamente sería bueno que no siempre aparezca solo a veces, así que es automático, así es como obtenemos este efecto genial y, por supuesto, todo lo que hice aquí fue simplemente crear un enlace a b3 en este momento, echemos un vistazo dentro de b3 b3 es simplemente el nombre del viaje, así que como lo seleccioné, quiero saber el número de viaje, vamos a usar el índice correcto, voy a echar un vistazo al índice, la identificación del viaje b1 si echamos un vistazo a esta lista desplegable aquí y luego formateamos el control, vemos que está vinculado a b1 y se basa en nuestros nombres de viaje, así que sabemos que si europa b1 es 1, viaje correcto 1 viaje 2. También quiero saber la identificación de viaje asociada con eso solo para asegurarnos, porque no siempre en la identificación de viaje de línea, simplemente usaremos el índice en función de lo que hay en b1 Bien, vamos a llamar al 1. Así que nos dará nuestra identificación de viaje. Si conozco nuestra identificación de viaje, puedo usar la indexación del nombre del viaje en función de lo que esté en b1 una fila de viaje aquí y eso automáticamente nos alcanzará. estamos indexando el nombre del viaje en función de la fila que está asociada con él y eso, por supuesto, nos dará el nombre de nuestro viaje. Si conozco el nombre de nuestro viaje, puedo crear un cuadro de texto aquí que está vinculado a nuestro nombre de tecnología y eso será así . la forma en que nuestro nombre es dinámico en función de lo que seleccionemos aquí en función de esa muy, muy genial, esa es una técnica realmente genial y ahora , ¿qué tenemos? tenemos gastos aquí, por supuesto, solo estoy usando un filtro avanzado gastos aquí también vamos para crear un filtro avanzado, queremos saber todos los gastos asociados con eso ahora, si echamos un vistazo dentro de las reservas de viaje aquí, quiero tener algunos tipos de reserva únicos aquí y algunos gastos que están tan ubicados en eso, así que vamos echa un vistazo dentro de la macro cómo creamos esto y luego, por supuesto, vamos a entrar un poco en los gráficos, está bien, y esas macros aquí llamadas actualización del viaje del tablero, por lo que es una sola mac o esa macro está vinculada a esto, lo que significa que cada vez que hacemos un cambio en este particular aquí cuadro aquí he asignado la macro es esa macro llamada actualización de viaje, por lo que es esta macro la que se vincula automáticamente a cualquier cambio cuando hacemos ese cambio para mencionar la última fila y la última fila de resultados, vamos a borrar cualquier contenido en función de las reservas, estamos realmente enfocados en las reservas porque de ahí es de donde provendrán todos nuestros datos, así que quiero borrar, asegurarme de borrar cualquier dato, me centraré en br a bs ahora br a bs si miramos aquí abajo, tenemos algunos datos hasta aquí y eso se usará para nuestras fechas únicas y eso será para otro gráfico, pero también quiero borrar eso, así que una vez que lo borre yo quiero determinar la última fila vamos a lo primero que quiero hacer ma Estoy seguro de que tenemos datos para obtener el único para la estadía. Quiero todos los estados, provincias o países únicos dentro de esa identificación de viaje específica, por lo que vamos a usar un filtro avanzado, por supuesto, como lo hacemos siempre. vamos a centrarnos en ese único aquí ahora si echamos un vistazo al interior que quiero saber vamos aquí mismo esta identificación de viaje aquí bien esto vendrá directamente desde el tablero recuerda que dije que necesitaba obtener esa identificación de viaje adentro una celda específica en nuestro tablero y lo hicimos aquí mismo dentro de b2 lo obtuvimos en función de la selección, por lo que sabemos que la identificación del viaje se encuentra en b2 si lo sé, deberíamos, probablemente pueda hacerlo bien, sabe que eso es b2 incluso si no mostramos los encabezados, estaba un poco limitado en el espacio, así que estaba ocultando el encabezado para que sepamos que está en b2, está bien, lo ocultaremos porque creo que se ve mejor sin eso, pero sabemos que es b2, está bien, así que si me vinculo a eso y lo uso como criterio dentro de nuestro filtro avanzado para que sepamos que podemos obtener eso y también quiero asegurarme de que no tenemos espacios en blanco, así que quiero que cualquier estado o provincia no esté en blanco para que el criterio sea de 2 a BF3 y quiero que esos resultados entren aquí estos guiones bajos son simplemente útiles para nuestro gráfico, está bien , eso es todo lo que quiero esos estados únicos, por lo que traerá esos resultados directamente dentro de bh todo lo que va a hacer porque nuestros gráficos ya se crearon, así que eso es todo lo que tenemos que hacer para actualizar nuestro tarjeta esta actualización nuestro cuadro simplemente ponga ahora lo que quiero hacer es tipos de reserva quiero saber los consejos de reserva por qué son importantes los tipos de reserva bien lo sé porque quiero obtener todos los gastos totales en función de quiero saber cuánto en recorridos cuánto en comidas y quiero crear este gráfico de anillos y me basaría en información muy importante, entonces, ¿dónde se basará eso? bueno, eso se basará en algunos datos justo donde estarán esos datos localizado va a ser loc dentro de nuestra reserva de viaje, así que quiero conocer todos los tipos de reserva únicos y quiero obtener un total y quiero que aparezcan aquí, así que esos resultados vendrán directamente de allí, así que también quiero obtener esos libros únicos tipos, por supuesto, los mismos datos originales, los mismos criterios, pero esta vez quiero que los tipos de reserva entren en bj2 correctamente, así que lo que quiero hacer una vez que tenga esos tipos de reserva tengo todos los tipos de reserva únicos para un viaje específico que quiero determine la última fila en función de esta fila en función de la columna bj una vez que sepa la última fila, quiero crear una fórmula que cree todos los totales en función de este tipo y en función de esta identificación de viaje específica, por lo que crearemos un fórmula y ese formulario se llamará sumifs, vamos a los costos de reserva. Quiero saber el costo total de la reserva según un tipo de reserva muy específico en bj3 solo para eso y también quiero saber según el tipo de reserva ID de viaje Disculpe, el tipo de reserva será bj3, así que en el tipo de reserva será dinámico a medida que la fórmula disminuya, estará aquí abajo, sin embargo, la identificación del viaje es muy fija para ser 3. muy fija aquí solo para ese viaje, es por eso que usa absolutamente los signos de dólar mientras que el el tipo de reserva es dinámico en función de la fila en la que estemos bien, lo que significa que, al bajar esta fórmula, puedo borrar todo esto muy fácilmente y todo lo que tengo que hacer es simplemente actualizar ese tablero, notar que los datos se han ido, eso es bien, todo lo que tenemos que hacer es actualizar eso y necesita ver que las fórmulas se volverán a desactivar automáticamente porque esas fórmulas se desactivarán usando la macro, así que volviendo a las reservas de viaje las vemos correctamente una copia de seguridad aquí, esta fórmula se va a copiar, así que vamos a determinar la última fila en función de la columna bj si es menos de 3, vamos a ir a los tipos de nodos, si no es así, los voy a eliminar. fórmulas esa fórmula se encuentra en bk2 voy para tomar esa fórmula y simplemente reducirla por completo y podemos hacerlo con un intercambio de fórmula formulada aquí mismo, de modo que bk3 a bk y la fórmula del último resultado sea igual a bk2 , reduzca esas fórmulas una vez que reduzca esas fórmulas, nuestro carácter existente se actualizará automáticamente los datos de este gráfico se actualizarán automáticamente, así que si vemos y echamos un vistazo dentro de los datos de este gráfico, veremos que es automático, centrémonos en ese que es el que quiero, así que vamos a seleccionarlo y vemos que se basa automáticamente en esa información basada dinámicamente en eso, está bien, muy, muy bueno, así que tenemos que entendemos cómo se actualiza y, por supuesto, solo tenemos una imagen simple aquí, es una especie de transparencia usando un poco de lo mismo aquí bueno, ahora eso cubre eso, pero ¿qué tal si quiero obtener la cantidad de días en una provincia correcta ? mismo cri exacto teria pero esta vez queremos los resultados en bm a b02, así que echemos un vistazo dentro de las reservas aquí y tenemos los resultados provenientes de bm aquí queremos quiero saber todos los estados correcto quiero escribir y quiero saber el desde dentro de dos días, así que quiero crear estos datos correctamente, y quiero saber todos los estados o provincias, todo en cualquier identificación de viaje dada, así que vamos a usar esto aquí nuevamente con los mismos criterios y esta vez quiero sé cuántos días, así que quiero una fórmula. Quiero traer una fórmula aquí. Así que solo estoy poniendo una fórmula aquí . sé útil, está bien, básicamente quiero hacerlo, pero debemos determinar la última fila, poner esa fórmula aquí, ustedes pueden hacer esos días totalmente únicos, oh, recuerdo lo que hice, así que eso nos ayudará a tener días totalmente únicos y luego lo tenemos aquí, así que está bien, así que solo traigo los datos y luego lo que quiero que hacer es quiero obtener el único solo quiero una lista de únicos y quiero poner esos únicos aquí entonces vamos a usar vamos a extraer las fechas aquí está la fórmula aquí eso es suficiente aquí está la fórmula aquí entonces voy a extraer todos los días en base a eso porque ya lo hemos hecho , solo quiero asegurarme de que la fórmula se extienda hacia abajo, entonces lo que quiero hacer es bajar otra fórmula que determinará el total de días que tenemos estamos gastando en un estado dado aquí aquí o territorio correcto, así que eso es todo lo que vamos a hacer aquí dentro, de modo que lo hacemos en una macro para que nuestros resultados lleguen a través de bm2, luego vamos a determinar la última fila de resultados aquí basado en bh correcto, necesito saber la última fila de resultados aquí y luego sabemos que los últimos resultados están aquí, así que lo que quiero hacer es ejecutarlo y colocarlo en capas, así que estamos determinando que ahora lo que quiero hacer es en realidad no necesitamos esto aquí porque ya hemos determinado la última fila de resultados anterior, así que ya hemos g ot los estados únicos, ese que no necesitamos, ya lo hemos determinado aquí , sabemos cuántos derechos únicos ya conozco porque los tengo aquí, sé que todo lo que tengo que hacer es traerlos aquí y entonces todo lo que necesito hacer es simplemente extraer los datos, realmente necesito estos datos, eso es lo que realmente necesito, también todo lo que necesito hacer es traer esto aquí desde br, así que eso es exactamente lo que hicimos aquí, br3 a br en el último fila de resultados, ya hemos determinado que aquí arriba es igual a bh, entonces, ¿qué significa eso? Eso significa simplemente tomar estos estados traerlos aquí desde aquí traerlos porque ya los tenemos, entonces lo que queremos hacer es determinar cuántas formas aquí tenemos una fórmula que va a rastrear cuántos d , así que vamos a sumar todas las fechas en función de un estado dado, así que quiero saber cuántos, así que nos tenemos , puede usar sum si aquí estamos voy a sumar lo que estamos sumando voy a sumar en el rango aquí bm eso es lo que quiero saber y nuestro el criterio es ba, por lo que nuestro criterio va a bajar, entonces lo que vamos a hacer es que nuestro rango de suma simplemente va a ser bp hasta b 19, así que eso lo mantendrá así, así que simplemente va a sumar todos los días entonces todo lo que hice fue crear un dato así que vamos a traer eso así que esto reduce nuestros estados únicos aquí esto reduce nuestra fórmula nuestra última fila no cambiará así que esto reduce nuestra fórmula entonces tenemos todos los días, todo lo que hice fue simplemente crear un gráfico basado en esto muy simple dentro del tablero. Creé este pequeño gráfico de barras aquí y luego solo en función de esos días, así que eso es todo, así que si seleccionamos los datos, vemos que esos datos son basado en estos días aquí, eso es todo, es genial, está bien, por último, tenemos gastos por tipo y luego vamos a acceder a nuestra interfaz de usuario personalizada del administrador de viajes aquí, así que gastos por tipo, quiero saber cuántos gastos por tipo tenemos eso. ya, así que todo lo que hago es usar una herramienta de imagen, ahora tengo la información aquí dentro de nuestro boo reyes, aquí tenemos los gastos aquí, pero lo que quiero hacer es simplemente crear una herramienta de imagen, así que creé esta herramienta de imagen, por supuesto, para hacerlo bien, creé una rama de nombre llamada detalle de costo de viaje si entramos en el nombre de fórmulas gerente y analizamos los detalles del costo del viaje. Vemos algo aquí. Tengo un rango de nombres dinámico basado en estos datos llamados detalles del costo del viaje. A medida que aumenta, aumentará. Entonces, lo que hice fue usar la herramienta de la cámara para hacerlo. tenemos el detalle del costo del viaje aquí voy a copiar eso luego uso la herramienta de la cámara cuál es la herramienta de la cámara es esta herramienta aquí aquí puedes encontrar eso en tu cámara y lo dibujaré en cualquier lugar y eso es no hay enlace para pegar, así que hagámoslo aquí, hagámoslo aquí, herramienta de cámara, está bien, ahí vamos, eso es lo suficientemente bueno, me gusta, aquí está, pero si lo quieres, pero lo queremos dinámico, así que lo que voy a hacer es voy a hacer lo mismo y luego voy a pegar ese enlace aquí ese viaje cómo se llamaba detalle del costo del viaje aquí eso es el que quiero de esa manera, esta imagen va a ser dañina y luego simplemente copie esto y péguelo en nuestro tablero, simplemente péguelo aquí y luego agregué un costo total del viaje aquí y aquí para que el costo total del viaje sea aquí y para basarnos en bl2 ahora echemos un vistazo dentro de bl2 y vemos que aquí solo obtuvimos una fórmula basada en el costo total del viaje, es simplemente la suma de todo esto y está vinculado a eso, así que eso es todo lo que tenemos solo usé un cuadro de texto y lo vinculé a eso, está bien, muy bien, bueno, hemos cubierto mucho ahora, lo último es cómo creamos este aviso realmente genial de que he estado usando las hojas, pero también podemos usar esto pequeño, voy a soltar esto aquí para que podamos verlo aquí y luego podemos mostrar el script, así que, ¿cómo creamos este calendario de administración , otra nueva reserva de viajes y panel de control realmente genial , ¿cómo creamos esta barra de herramientas personalizada? vamos a usar la herramienta llamada unidad de cinta de oficina, esto se llama edición de cinta de oficina o esta es una herramienta realmente genial ahora puedes descargarla gratis a través de Internet o también la incluiré en nuestro patreon pero es una aplicación gratuita que no creé pero me aseguraré de que esté en el recursos para nuestros miembros de patreon y, básicamente, todo lo que tenemos que hacer es simplemente abrir un libro de trabajo en cualquier libro de trabajo y luego podemos asignar algo, así que lo que voy a hacer es abrir el libro de trabajo del administrador de viajes en el que estamos trabajando. encendido y voy a hacer clic allí y, básicamente, una vez dentro de este libro de trabajo, ahora, por supuesto, ya lo agregué, pero le mostraré cómo hacerlo bien para que podamos agregar imágenes, agregué estos pequeños íconos. nos ayudarán , así que si desea agregar más, todo lo que tenemos que hacer es agregar algunos, así que sigamos, abramos este editor aquí, está bien, así que tenemos un código personalizado para que podamos insertar íconos. simplemente busque nuestros íconos, si tenemos algún ícono, podemos buscar íconos asegurándonos de que el png sea transparente, asegurándonos de que el son íconos, así que podemos insertar cualquiera, está bien y lo que va a hacer es ponerlos aquí, luego lo que vamos a hacer es crear un código, ahora podemos crear un código de muestra personalizado, ¿verdad ? si no sabe qué crear, puede comenzar con una muestra, digamos que desea agregar un código de muestra de inserción, también puede hacerlo bien , si desea insertar algunos códigos de muestra, es un poco complicado que puede hacer que puede insertar algunas partes personalizadas de la interfaz de usuario, así que si desea hacer eso, puede hacer clic aquí insertar y luego puede hacer una interfaz de usuario personalizada o un par personalizado o xml de muestra, por lo que es bueno que tenga un código de muestra ahora mismo podemos hacer un espacio exterior personalizado una pestaña personalizada estamos en una pestaña personalizada dirá si desea insertar una pestaña personalizada y actual si desea hacer clic en sí a la derecha y lo que va a hacer es simplemente insertar una pestaña personalizada para que pueda normalmente no tendría ese derecho, por supuesto, pero eso es todo lo que tenemos que hacer, no necesitamos hacer eso bien, digamos que no tenía nada aquí, puede instantáneamente algo personalizado, luego lo que vamos a hacer es personalizarlo y lo vamos a personalizar, lo siento, lo primero que vamos a obtener es automático . disco personalizado 2009 esta interfaz de usuario personalizada entonces lo que queremos hacer es comenzar la cinta desde cero falso eso es automático queremos crear algunas pestañas quiero crear una pestaña nueva y le daré una pestaña única llamada administrador de viaje esto es la identificación, debe ser única para cada pestaña , debe tener una identificación única, entonces desea darle una etiqueta llamada administrador de viajes que es la misma etiqueta que se llama aquí administrador de viajes, así que si tuviera que cambiarla allí en el xml ahora tenga esto en cuenta que no puede guardarlo si su libro de trabajo se guardó correctamente, así que si quiero hacer cambios de estado aquí y quiero guardarlo, me dirá que este proceso no se puede hacer porque esto está abierto, así que queremos asegúrese de que esté cerrado este libro de trabajo esté cerrado mientras guardamos los cambios para usted r xml uso compartido inalámbrico correcto, por lo que le daremos un nombre muy específico, nombre único correcto para que podamos verlo, luego queremos crear un grupo nuevamente, quiero un grupo único, tal vez queremos que se llame grupo personalizado y quiero dar es un grupo llamado administrador de viaje , eso significa que todos sus botones pueden estar dentro de un grupo, observe que todos están agrupados y se llama administrador de viaje, tengo un grupo y se llama administrador de viaje, entonces tengo botones individuales activados un viaje dado, así que echemos un vistazo dentro de esos botones individuales, hemos creado el grupo personalizado nuevamente, necesitamos tener una identificación única para el grupo y tenemos una etiqueta única, lo que quiero hacer es crear botones individuales correctamente y de nuevo, cada botón individual, tenemos cinco de ellos, tienen una identificación diferente única y específica, esta se llama botón de activación del botón del tablero, por lo que no están visibles, estas son solo identificaciones que las separan, estas etiquetas quiero darles una etiqueta muy clara. llamado das hboard viajes nueva reserva calendario administrador así que cada uno tiene una etiqueta y que por supuesto es la misma etiqueta que tenemos aquí tablero viajes nuevo calendario de reserva y administración así que una vez que tenemos eso correcto hemos obtenido nuestros nombres sigo cambiando a este porque sigo pensando, está bien, no se preocupe, así que estamos de vuelta aquí, así que lo que quiero hacer es asegurarme de que sea de tamaño grande, cada uno es de tamaño grande y quiero asignar una macro a cada uno de ellos, una macro única para cada una de ellas esas macros ya están ubicadas ahora podemos ir a vba ya están ubicadas aquí dentro si echamos un vistazo dentro de nuestra aplicación tengo macros individuales para cada una de ellas ubicadas aquí abajo, así que queremos asegurarnos de que tenemos algo llamado ir al tablero, esta es la macro y su control como cinta , está bien, hemos hecho dos diferentes, la cinta probablemente no necesite esta, pero mi cinta tiene una interfaz de usuario de cinta, está bien, eso es importante y luego lo que vamos a ser haciendo es que vamos a configurar la cinta a la cinta asegurándonos de que en la carga de la cinta, va a cargar esa cinta, copie y pegue mi código, no hay problema, entonces lo que queremos hacer es dar una macro única, por ejemplo, ir al tablero, todo lo que vamos a hacer es simplemente activar eso para go to trip, solo vamos a activar eso, así que le hemos dado un nombre de macro único, es este nombre de macro el que también debe asignarse en este xml llamado a la acción, así que básicamente cada uno que estamos haciendo y luego también nosotros quiero asignar una imagen con el derecho y esa imagen tiene el mismo nombre que esta imagen, asegúrese de que tengan el mismo horario, así que tenemos un horario aquí, aunque se llama calendario, asegúrese de que el nombre de la imagen aquí sea el mismo que el los que has subido correctamente si quieres cambiarlo puedes hacer doble clic en eso o puedes oh, esto es realmente genial, puedes ver que me gusta , es una especie de cinta de oficina genial, hay muchas variaciones diferentes, pero realmente me gusta este tiene algunas características geniales en este está bien, así que queremos asegúrese de que los nombres de las imágenes sean muy, muy exactamente iguales a los que ya hemos subido aquí una vez que tengamos que queremos verificar para asegurarnos de que el código sea correcto, haremos clic en validar y diremos que el formato personalizado está bien , ¿ de acuerdo? sabemos que todo está configurado correctamente una vez que hemos configurado todo correctamente hemos asignado nuestras macros y macros únicas le hemos dado botones muy únicos eso es todo lo que tenemos que hacer aquí guardar y cerrar recuerde que no puede guardarlo a menos que el el libro de trabajo está abierto, así que asegúrese de guardar su libro de trabajo en su libro de trabajo y ciérrelo, luego guarde su libro de trabajo aquí para luego guardarlo bien ahora cuando lo abramos automáticamente obtendremos estos y obtendremos estas macros realmente geniales automáticamente aquí así que eso es todo y eso es todo lo que he hecho allí dentro, así que le he dado una marca, la única diferencia está en agregar una nueva reserva, estamos activando el barato y luego estamos ejecutando la reserva nueva para el calendario que decidí ejecutar. la macro para refrescar el calendario cuando ejecutamos el macro así que eso es wow, este es un entrenamiento increíble en este entrenamiento, te mostré cómo usar este recrear este editor de interfaz de usuario realmente genial, si quieres esta aplicación, estará dentro de los recursos junto con los íconos y, por supuesto, hicimos un mucho, tuvimos estos viajes realmente geniales , les mostré cómo crear viajes nuevos junto con múltiples reservas, reservas ilimitadas por viaje y, por supuesto, cómo agregar documentos a esos individuos, ya sean imágenes de Word, PDF o lo que sea, y cómo mostrarlos y espacio . esos y obtener una vista previa junto con la apertura y eliminación de esos documentos individuales que le muestran cómo esto crea este horario realmente genial, por supuesto, con colores dinámicos, iconos dinámicos realmente geniales, un tablero increíble con un mapa dinámico realmente genial para poder mostrar donde sea solo asegúrese de tener su información correcta junto con información de datos realmente interesante que extrajimos a través de filtros avanzados y tenemos eso que muestra todo sobre nuestro tr ip data ha sido una capacitación increíble muchas gracias si te gusta apoyarnos no olvides hacer clic en me gusta suscríbete a nuestro canal haz clic en la campana de notificaciones y por supuesto nos vemos la próxima semana para una nueva capacitación muchas gracias

Noticias relacionadas