Saltar al contenido

Actualizar año calendario (marcar festivos)


Benito Bartolomé

Recommended Posts

Buenos días a todos;
- Ayer muy amablemente Frank me ha resuelto una duda que he planteado con respecto a un calendario anual con los doce meses en la misma hoja.
La duda que expuse era lograr que al cambiar el año en una lista de validación afectase a todos los meses de la hoja.
Pues bien resuelto este punto quería continuar planteado ahora el tema de marcar festivos, vacaciones , etc ... en el calendario.
En el original que descargue de Internet funciona pero creo que al introducir fórmulas en las celdas no va porque seguramente habrá que modificar o añadir algo a esa función.
La pestaña donde están los días que quiero marcar es "Diario "

Video:

 


Adjunto dos archivos para mejor comprensión y son:
1._"calendario-2022-excel-lunes-a-domingo" original
2.-"Calendario V3" modificado


Enlace video:

Saludos  y muchas gracias por su atención. 

Calendario V3.xlsx calendario-2022-excel-lunes-a-domingo.xlsx

Enlace a comentario
Compartir con otras webs

Hace 14 minutos , Janlui dijo:

- Las fechas de cualquier año ponlas en la zona verde de la hoja completo

- Revisa el formato condicional, solo puse el 1=Festivo

- Agrega el resto de dias y sus colores.

 

calendario - condicional.xlsx 58.51 kB · 0 descargas

Hola Juanli, muchas gracias por su aporte.

Lo he visto desde el móvil y veo que los festivos si aparecen inclusive el 2025.

Hasta mañana no puedo revisar el formato condicional,  intuyo que el 1 corresponde a festivo y partiendo de esa premisa lo igual se pueden crear nuevas marcas como vacaciones por poner un ejemplo. 

Bueno Juanli mañana lo reviso y te cuento. 

Un saludo y muchísimas gracias por su tiempo. 

Enlace a comentario
Compartir con otras webs

Hace 12 horas, Janlui dijo:

- Las fechas de cualquier año ponlas en la zona verde de la hoja completo

- Revisa el formato condicional, solo puse el 1=Festivo

- Agrega el resto de dias y sus colores.

 

calendario - condicional.xlsx 58.51 kB · 2 descargas

Buenos días Juanli;

Ya he probado el nuevo calendario que me pasas.

Está estupendo.

He hecho unos pequeños ajustes, el primero es añadir una segunda opción al formato condicional y este es el resultado:

image.thumb.png.13d19cddf0f0de226b2a01fd12bcf2b2.png

Si te fijas, en función del número que ponga lo pinta de uno u otro color.

En cuanto a ese formato condicional es un poco tedioso tener que ir haciéndolo uno a uno, en fin toca teclear.

He hecho lo mismo a la pestaña "Mini" y el formato está bien como ves abajo

image.thumb.png.86fddeb2fc49be1f1bf9a990bf7de10c.png

pero me da error en las formulas de los días, no se como solucionarlo.

Frank me paso esas formulas para el calendario "Completo" y ahí están bien en cambio esas mismas las he adaptado y cambia bien los día pero me aparece ese error.

Si tú o bien Frank sois tan amables de echarme una manito os lo agradecería.

Un saludo y buen día.

image.png

Enlace a comentario
Compartir con otras webs

Hace 13 horas, Janlui dijo:

- Las fechas de cualquier año ponlas en la zona verde de la hoja completo

- Revisa el formato condicional, solo puse el 1=Festivo

- Agrega el resto de dias y sus colores.

 

calendario - condicional.xlsx 58.51 kB · 2 descargas

Adjunto el archivo que me olvidaba.

calendario - condicional.xlsx

Enlace a comentario
Compartir con otras webs

Hace 41 minutos , Janlui dijo:

Intente hacerlo con formato condicional y es cierto, muy tedioso.

Hice una macro... checalo.

 

calendario - condicional.xlsm 67.95 kB · 1 descarga

Hola Juanli, ya lo he visto y está muy bien.

En este caso no me sirve porque lo quiero usar para compartir por el móvil y las apps de momento que yo sepa no ejecutan macros.

Te lo agradezco igualmente.

Si que aún no se el error que comentaba en el anterior post:

image.png

¿Sabes porque se produce?

 

Enlace a comentario
Compartir con otras webs

Hace 9 horas, Benito Bartolomé dijo:

Buenos días Juanli;

Ya he probado el nuevo calendario que me pasas.

Está estupendo.

He hecho unos pequeños ajustes, el primero es añadir una segunda opción al formato condicional y este es el resultado:

image.thumb.png.13d19cddf0f0de226b2a01fd12bcf2b2.png

Si te fijas, en función del número que ponga lo pinta de uno u otro color.

En cuanto a ese formato condicional es un poco tedioso tener que ir haciéndolo uno a uno, en fin toca teclear.

He hecho lo mismo a la pestaña "Mini" y el formato está bien como ves abajo

image.thumb.png.86fddeb2fc49be1f1bf9a990bf7de10c.png

pero me da error en las formulas de los días, no se como solucionarlo.

Frank me paso esas formulas para el calendario "Completo" y ahí están bien en cambio esas mismas las he adaptado y cambia bien los día pero me aparece ese error.

Si tú o bien Frank sois tan amables de echarme una manito os lo agradecería.

Un saludo y buen día.

image.png

Hola, he estado viendo el post y me doy cuenta que al o mejor no sabéis cual es el error.

Si os fijáis en el día 28 y 29 de febrero al igual que los meses de 30 días marca como una pestañita verde. La fórmula creo qué está bien es más un tema visual que no se sí se puede evitar.

Quería aclarar un poco más. 

Enlace a comentario
Compartir con otras webs

Me meto por en medio.

El hilo es muy largo y no me lo he leído todo; solo aporto una idea para los festivos que me parece bastante fácil (es como yo lo hago en los míos).

Los festivos de TODOS los años no los puedes tener, porque cada año "cambian" y los hay por comunidades, paises... por eso precisamente Excel no tiene una BBDD de festivos.

Yo lo que hago es en una hoja a parte una TB

image.png.5984b5a3ae334423e2244bf30cdf23a4.png

En la tabla relleno los datos de día y mes (el año  cambiante está en B2). Cada año cambio esos días (los que son diferentes, claro). El rango  Festivos año (una fecha) esta guardado como un nombre

Ya solo tengo que crear un formato condicional 

Cita

=COINCIDIR(D5;N_Festivos;0)

y aplicarlo a TODA el área que contenga fechas en cada hoja

(D5 es un ejemplo de la celda donde empieza mi zona de días y N_Festivos es el rango nombrado)

No he descubierto la pólvora, pero me parece bastante sencillo de hacer

Enlace a comentario
Compartir con otras webs

Hace 46 minutos , njnsp dijo:

Me meto por en medio.

El hilo es muy largo y no me lo he leído todo; solo aporto una idea para los festivos que me parece bastante fácil (es como yo lo hago en los míos).

Los festivos de TODOS los años no los puedes tener, porque cada año "cambian" y los hay por comunidades, paises... por eso precisamente Excel no tiene una BBDD de festivos.

Yo lo que hago es en una hoja a parte una TB

image.png.5984b5a3ae334423e2244bf30cdf23a4.png

En la tabla relleno los datos de día y mes (el año  cambiante está en B2). Cada año cambio esos días (los que son diferentes, claro). El rango  Festivos año (una fecha) esta guardado como un nombre

Ya solo tengo que crear un formato condicional 

y aplicarlo a TODA el área que contenga fechas en cada hoja

(D5 es un ejemplo de la celda donde empieza mi zona de días y N_Festivos es el rango nombrado)

No he descubierto la pólvora, pero me parece bastante sencillo de hacer

Hola Njnsp, muchas gracias por su aporte. 

Intentaré mañana echarle un vistazo  y te cuento. 

Saludos ? 

Enlace a comentario
Compartir con otras webs

Hace 57 minutos , Janlui dijo:

Hola Juanli:

La cosa da trabajo pero va bien.

Ya he visto que has avanzado en el condicional de la pestaña "Mini".

Te adjunto  archivo como lo tengo ahora mismo.

A ver que te parece.

Hay un comentario en la pestaña "Completo" donde explico un poco 

calendario - condicional.xlsx

Enlace a comentario
Compartir con otras webs

Hace 12 horas, njnsp dijo:

Me meto por en medio.

El hilo es muy largo y no me lo he leído todo; solo aporto una idea para los festivos que me parece bastante fácil (es como yo lo hago en los míos).

Los festivos de TODOS los años no los puedes tener, porque cada año "cambian" y los hay por comunidades, paises... por eso precisamente Excel no tiene una BBDD de festivos.

Yo lo que hago es en una hoja a parte una TB

image.png.5984b5a3ae334423e2244bf30cdf23a4.png

En la tabla relleno los datos de día y mes (el año  cambiante está en B2). Cada año cambio esos días (los que son diferentes, claro). El rango  Festivos año (una fecha) esta guardado como un nombre

Ya solo tengo que crear un formato condicional 

y aplicarlo a TODA el área que contenga fechas en cada hoja

(D5 es un ejemplo de la celda donde empieza mi zona de días y N_Festivos es el rango nombrado)

No he descubierto la pólvora, pero me parece bastante sencillo de hacer

Hola de nuevo njnsp, he intentado implementar pero no lo logro.

Me podrías facilitar un ejemplo sencillo y así ver donde me equivoco. 

Muchas gracias también a ti

Saludos ? 

Enlace a comentario
Compartir con otras webs

Hola,

Ya se por que NO te funciona el formato condicional.

image.thumb.png.e4d92f724595fb3ba3ad22d95ca01557.png

Tus fechas del calendario NO son reales, y no encuentra nunca el día buscado

image.png.312a93ffa0334e469b7be7a10ad1dfd2.png

Eso es debido al sistema que has usado para generar el calendario. Una forma de soluciónalo es poner en la tabla que te propuse que el año es 1900 que no es elegante pero funciona.

image.png.51b43c2b83254e40a64c1e3d17671dc8.pngimage.png.6a4ddbc3a3e90173ef5f21220ea5b47a.png

La forma correcta es que las fechas del calendario fuesen reales. Para eso también tengo solución, pero ahora no puedo desarrollarla. En cuanto tenga un hueco te lo muestro.

Saludos.

Enlace a comentario
Compartir con otras webs

Hola njnsp, te voy a subir de nuevo el archivo para que veas como lo tengo, he añadido alguna cosa que te muestro en el archivo, te lo digo por si puede o no afectar al formato condicional.

Lo que hago es que una vez que cambie el año en la celda B2 se actualicen los años en el listado de festivos así los que son siempre fijos no tengo que estar a cambiarlos.

No sé si te gustó la idea.

Un saludo.

 

 

calendario - condicional.xlsx

Enlace a comentario
Compartir con otras webs

En 25/12/2021 at 21:48 , njnsp dijo:

Hola Benito,

Como el otro hilo esta "cerrado" te dejo aquí algunas mejoras a lo que llevas hasta ahora (a lo que llevabas hasta el momento en el otro hilo).

Es prácticamente lo mismo que tienes para mas simplificado (en mi modestia opinión).

Saludos.

calendario - Benito.xlsx 53.43 kB · 4 descargas

Hola njnsp;

He visto la mejora que ha hecho y me gusta mucho, lo implementaré al libro.

Si necesito más ayuda te comento. 

Mil gracias 

Enlace a comentario
Compartir con otras webs

En 23/12/2021 at 11:16 , Frank2021 dijo:

Hola,

el nombre TblMarcadores debe ser declarado en el Ámbito de Libro.

Si no lo consigues, por favor, sube el fichero

Saludos

 

En 23/12/2021 at 12:08 , Frank2021 dijo:

Hola,

Te lo envío. Mezclas conceptos entre Tablas y Rangos.

image.thumb.png.f01988640193f78a1d32c237c1d07a4e.png

 

Saludos

Libro1 v2.xlsx 20.53 kB · 1 descarga

 

En 27/12/2021 at 14:19 , njnsp dijo:

?

Hola de nuevo njnsp de nuevo.

He implementado cosas como muy bien me has indicado.

El motivo de este nuevo mensaje trata de lo siguiente:

En la validación de datos que me has  puesto (dicho sea de paso la he movido un poco) al elegir un valor me muestra solo los que correspondan a ese valor.

Lo que me gustaría conseguir es que al abrir el libro me muestre todos los días con su color correspondiente salvo cuando haga uso del filtro que sí en ese caso sólo me gustaría que mostrase los que yo le diga.

¿Sería posible?

No se si me he explicado bien, adjunto el archivo para mayor comprensión.

Buen día.

Calendario Benito(2).xlsx

Enlace a comentario
Compartir con otras webs

Hola Benito. 

Antes de nada, como consejo, te animo a que no personalices tus consultas, mas que nada porque te cierras la puerta a que otros foreros puedan responderte (incluso mejor) que al que le lanzas la pregunta. Todos estamos aquí para ayudar, pero a muchos nos da "reparo" meternos por "en medio" de la una consulta directa dirigida a alguien en concreto. Cuando tengas una duda, lanzalá "al aire" y seguro que hay mucha gente encantada de ayudar; luego ya, sí puedes agradecer a quien te conteste.

Y yendo al tema, se me da muy mal responder directamente a las consultas, así que te propongo lo que yo haría (seguro que hay muchas maneras mas y mejores de hacerlo).

Lo primero no pondría dos casillas de verificación. Ahora tienes la X3 y la Z2 y encima un formato Condicional (FC) es para "no hacer nada" que es el estado natural de Excel. 

Ibas bien encaminado, solo te falta un detalle para que te funcione bien. Como tienes muchos FC y no quiero entretenerme, te pongo el ejemplo de lo que tienes que añadir a la formula, BASADO en el archivo que te subí anteriormente.

image.thumb.png.02ed8544d72a985ea04161da952eac33.png

Tienes que hacer un FC para cada Marcador (vacaciones, festivo, etc) y aprovecha el marcador "Ninguno" para "no hacer nada". Cuando Excel recorra todos los FC y vea que el valor de Z2 no se corresponde a ninguno de los marcadores no pondrá ningún formato ?

image.thumb.png.9be34a2cbad53986b2308c4c59f96bb1.png

image.thumb.png.893c781567008261638bfe706dc52d8d.png

 

 

 

Enlace a comentario
Compartir con otras webs

Hace 1 hora, njnsp dijo:

Hola Benito. 

Antes de nada, como consejo, te animo a que no personalices tus consultas, mas que nada porque te cierras la puerta a que otros foreros puedan responderte (incluso mejor) que al que le lanzas la pregunta. Todos estamos aquí para ayudar, pero a muchos nos da "reparo" meternos por "en medio" de la una consulta directa dirigida a alguien en concreto. Cuando tengas una duda, lanzalá "al aire" y seguro que hay mucha gente encantada de ayudar; luego ya, sí puedes agradecer a quien te conteste.

Y yendo al tema, se me da muy mal responder directamente a las consultas, así que te propongo lo que yo haría (seguro que hay muchas maneras mas y mejores de hacerlo).

Lo primero no pondría dos casillas de verificación. Ahora tienes la X3 y la Z2 y encima un formato Condicional (FC) es para "no hacer nada" que es el estado natural de Excel. 

Ibas bien encaminado, solo te falta un detalle para que te funcione bien. Como tienes muchos FC y no quiero entretenerme, te pongo el ejemplo de lo que tienes que añadir a la formula, BASADO en el archivo que te subí anteriormente.

image.thumb.png.02ed8544d72a985ea04161da952eac33.png

Tienes que hacer un FC para cada Marcador (vacaciones, festivo, etc) y aprovecha el marcador "Ninguno" para "no hacer nada". Cuando Excel recorra todos los FC y vea que el valor de Z2 no se corresponde a ninguno de los marcadores no pondrá ningún formato ?

image.thumb.png.9be34a2cbad53986b2308c4c59f96bb1.png

image.thumb.png.893c781567008261638bfe706dc52d8d.png

 

 

 

Hola njnsp, primero decir que he recibido el guante y tomo nota.

Lo estaba haciendo así porque al estar empezado por ti ya tienes un tiempo adelantado.

En cuanto a las dos casillas de verificación las he puesto para tratar de reproducir un poco el resultado,  ya sabía que la mejor opción es la que propones.

Lo que no lograba era la fórmula. 

He visto que me la has adelantado,  mañana haré las pruebas. 

Con vba me es más  fácil o es que estoy un poco más acostumbrado pero con las funciones me lío un poco.

Gracias por todo.

Mañana te cuento como me ha ido.

Enlace a comentario
Compartir con otras webs

En 27/12/2021 at 14:19 , njnsp dijo:

?

 

Hace 16 horas, njnsp dijo:

Hola Benito. 

Antes de nada, como consejo, te animo a que no personalices tus consultas, mas que nada porque te cierras la puerta a que otros foreros puedan responderte (incluso mejor) que al que le lanzas la pregunta. Todos estamos aquí para ayudar, pero a muchos nos da "reparo" meternos por "en medio" de la una consulta directa dirigida a alguien en concreto. Cuando tengas una duda, lanzalá "al aire" y seguro que hay mucha gente encantada de ayudar; luego ya, sí puedes agradecer a quien te conteste.

Y yendo al tema, se me da muy mal responder directamente a las consultas, así que te propongo lo que yo haría (seguro que hay muchas maneras mas y mejores de hacerlo).

Lo primero no pondría dos casillas de verificación. Ahora tienes la X3 y la Z2 y encima un formato Condicional (FC) es para "no hacer nada" que es el estado natural de Excel. 

Ibas bien encaminado, solo te falta un detalle para que te funcione bien. Como tienes muchos FC y no quiero entretenerme, te pongo el ejemplo de lo que tienes que añadir a la formula, BASADO en el archivo que te subí anteriormente.

image.thumb.png.02ed8544d72a985ea04161da952eac33.png

Tienes que hacer un FC para cada Marcador (vacaciones, festivo, etc) y aprovecha el marcador "Ninguno" para "no hacer nada". Cuando Excel recorra todos los FC y vea que el valor de Z2 no se corresponde a ninguno de los marcadores no pondrá ningún formato ?

image.thumb.png.9be34a2cbad53986b2308c4c59f96bb1.png

image.thumb.png.893c781567008261638bfe706dc52d8d.png

 

 

 

Hola njnsp;

He aplicado los cambios tal y como comentas y ahora mucho mejor.

He tenido que corregir un pelín la formula:

=SI($U$2="Festivo";INDICE(N_Marcador;COINCIDIR(B7;N_Fecha;0))=$U$2)

Como ves $U$2 lo igualo con el contenido de la casilla de verificación.

image.thumb.png.475d544c1586e07df154f7ed65423c97.png

 

Adjunto archivo.

Gracias por todo y feliz año .

También felicitar el año a los miembros de este maravilloso foro.

 

 

calendario - Benito.xlsx

Enlace a comentario
Compartir con otras webs

Hola Benito.

NNNNOOOO!! (es broma). Ese cambio que has hecho es error de novato (no digo que lo seas). Te explico.

En las hojas de excel, el fin principal es que todo sea lo mas "automático" posible, y que si en algún momento tengo que hacer un cambio, solo lo tenga que hacer en una sola celda. Por eso en las formulas nunca debe ir algo del tipo... si A2="pepito"... Imagina que trabajas para alguien y formulas así, y cuando le presentas tu proyecto, el "cliente" (jefe, amigo, conocido) te dice "pero es que yo no quiero que sea "pepito" (en tu caso Vacaciones) quiero que ponga "Libranza"), entonces te tocaría cambiar TODAS las formulas.

Para evitar eso, se hace una hoja que yo suelo llamar Parámetros, donde parametrizo todo los posibles valores cambiantes (o no). En tu caso es tu hoja Lista, donde has ido parametrizando tus opciones.  Has hecho una Tabla con las Categorías (Festivo, festivolocal, etc) Pues a esas celdas tienes que referir tus formulas, de forma que si en algún momento quieres cambiar Vacaciones por Libranza, lo cambias en la celda "=Lista!F2" y todo seguiría funcionando a las 1000 maravillas.

En tu caso te tocaría cambiar TODOS los FC, me explico?

De hecho en el ejemplo yo te puse SI $U$2=$AE$6... para que lo entendieras, cuando en realidad deberías haber puesto SI $U$2=N_Vacaciones siendo N_Vacaciones un nombre referido a "=Lista!F2"  o si no quieres ser tan purista,  SI $U$2=Lista!F2, de forma, que si tuvieras/quisieras que cambiar todos los nombres de las categorías, lo harias un su "lista de parametros" y no tendrías problemas con ninguna formula.

Espero haberme explicado.

Feliz Año.

Enlace a comentario
Compartir con otras webs

Hace 17 horas, njnsp dijo:

Hola Benito.

NNNNOOOO!! (es broma). Ese cambio que has hecho es error de novato (no digo que lo seas). Te explico.

En las hojas de excel, el fin principal es que todo sea lo mas "automático" posible, y que si en algún momento tengo que hacer un cambio, solo lo tenga que hacer en una sola celda. Por eso en las formulas nunca debe ir algo del tipo... si A2="pepito"... Imagina que trabajas para alguien y formulas así, y cuando le presentas tu proyecto, el "cliente" (jefe, amigo, conocido) te dice "pero es que yo no quiero que sea "pepito" (en tu caso Vacaciones) quiero que ponga "Libranza"), entonces te tocaría cambiar TODAS las formulas.

Para evitar eso, se hace una hoja que yo suelo llamar Parámetros, donde parametrizo todo los posibles valores cambiantes (o no). En tu caso es tu hoja Lista, donde has ido parametrizando tus opciones.  Has hecho una Tabla con las Categorías (Festivo, festivolocal, etc) Pues a esas celdas tienes que referir tus formulas, de forma que si en algún momento quieres cambiar Vacaciones por Libranza, lo cambias en la celda "=Lista!F2" y todo seguiría funcionando a las 1000 maravillas.

En tu caso te tocaría cambiar TODOS los FC, me explico?

De hecho en el ejemplo yo te puse SI $U$2=$AE$6... para que lo entendieras, cuando en realidad deberías haber puesto SI $U$2=N_Vacaciones siendo N_Vacaciones un nombre referido a "=Lista!F2"  o si no quieres ser tan purista,  SI $U$2=Lista!F2, de forma, que si tuvieras/quisieras que cambiar todos los nombres de las categorías, lo harias un su "lista de parametros" y no tendrías problemas con ninguna formula.

Espero haberme explicado.

Feliz Año.

Hola y gracias por la aclaración  njnsp.

Ahora lo he comprendido bien y tomo nota de tú consejo.

Para finalizar desearte un feliz año nuevo y hasta la próxima. 

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 96 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      177
    • Comentarios
      90
    • Revisiones
      27

  • Crear macros Excel

  • Mensajes

    • Hola buenas, Os presento mis dudas. Tengo un libro  (llamémosle LibroDestino) con dos módulos, uno de definición de variables "ModDef" y otro de inicializacion de esas mismas variables "ModCfg". Necesito que al copiarme una hoja de otro libro(llamémosle LibroOrigen), mediante un procedimiento, sobrescribir el modulo de inicialización de variables del LibroDestino con el  contenido del módulo que hay en el LibroOrigen. Destacar que los dos módulos de cada libro tienen el mismo nombre "ModCfg". Y tienen una única variable llamada "Mensaje". En el LibroDestino tiene el valor "Hola" y en el LibroOrigen el valor "Adiós" Este procedimiento lo realiza perfectamente,  es decir se sobrescribe, pero si en el mismo procedimiento quiero utilizar el nuevo valor de esa variable, me conserva el valor de la variable anterior. Para hacer las comprobaciones he ejecutado un MsgBox al empezar y al acabar el procedimiento, pero en los dos casos me devuelve el valor original del LibroDestino el valor "Hola", cuando mi idea es que al sobrescribir el modulo con el nuevo valor de la variable, el último MsgBox me devuelva el valor "Adios". Mi objetivo es poder tener la inicialización de esas variables en un libro que no sea el de trabajo (LibroDestino), ya que según la hoja que importe puedo requerir que las variables tengan un valor u otro. ¿Por que no me coge en el procedimiento el nuevo valor de la variable? ¿Cómo podría conseguirlo? He tenido que activar en VBA  la referencia Microsoft visual basic for applications extensibility 5.3 desde  Herramientas -> Referencias. Creo que es la única manera de poder trabajar con los módulos desde VBA, aunque si se pudiera de otra manera creo que sería mas óptimo. Mil gracias de antemano, un saludo!         Libro1_Prueba.xlsm Libro2_Prueba.xlsm
    • Agradecido Antoni! Tus sugerencias me ayudaron mucho! Como pudiese hacerte llegar el archivo?
    • Prueba este código. Sin el archivo no te puedo ajustar más. Private Sub btnCargaBancos_Click() 'El tipo de dato debe especificase para cada variable Dim TasaCompra As Double, TasaVenta As Double, InvBanesco As Double, InvVzla As Double Dim MontoBanesco As Double, MontoVzla As Double, TasaDiaBan As Double, TasaDiaVzla As Double Dim TasaActual As Double 'Hay que comprobar que los textbox tienen contenido numérico 'Los datos numéricos solo pueden contener números y el separador decimal, cualquier otro caracter dará error al convertir If Not IsNumeric(txtInverBanesco) Or _ Not IsNumeric(txtInverVzla) Or _ Not IsNumeric(txtTasaCompra) Or _ Not IsNumeric(txtTasaVenta) Then MsgBox "Los datos deben ser numéricos", vbCritical Exit Sub End If InvBanesco = CDbl(txtInverBanesco) InvVzla = CDbl(txtInverVzla) TasaCompra = CDbl(txtTasaCompra) TasaVenta = CDbl(txtTasaVenta) 'Los datos de los divisores no pueden ser 0 (Indeterminación matemática) If TasaCompra = 0 Or _ InvBanesco = 0 Or _ InvVzla = 0 Then MsgBox "Los datos no admiten valor cero", vbCritical Exit Sub End If MontoBanesco = (InvBanesco / TasaCompra) * (1 - 0.18 / 100) * (TasaVenta * (1 - 0.18 / 100)) MontoVzla = (InvVzla / TasaCompra) * (1 - 0.18 / 100) * (TasaVenta * (1 - 0.18 / 100)) TasaDiaBan = (MontoBanesco / InvBanesco) * (1 - 0.055) TasaDiaVzla = (MontoVzla / InvVzla) * (1 - 0.055) If TasaDiaBan < TasaDiaVzla Then TasaActual = TasaDiaBan Else TasaActual = TasaDiaVzla End If 'En VBA, los datos numéricos no admiten ser formateados, formatear directamente en las celdas, 'MontoBanesco = FormatNumber(MontoBanesco, 2, True, vbFalse) 'MontoVzla = FormatNumber(MontoVzla, 2, True, vbFalse) 'TasaActual = FormatNumber(TasaActual, 5, True, False) txtBcoBanesco = MontoBanesco txtBcoVenezuela = MontoVzla txtTasaDiaria = TasaActual End Sub  
    • Hola a ambos, @MarianoCruz, si con la respuesta de @Israel Cassales ya tienes resuelto el problema, perfecto. Punto final y a otra cosa. Pero piensa que tu archivo lleva vínculos externos, así que se hace difícil (prácticamente imposible) comprobar si las propuestas dadas ofrecen el resultado esperado. A tal efecto, te sugiero que vuelvas a subir otro archivo, esta vez insertando nuevas hojas que contengan los datos existentes en esos archivos externos.  Tal vez así se vea claro qué es lo que buscas conseguir, y se puedan hacer pruebas que verifiquen la bondad de el/los resultado/s. Tampoco iría mal que insertaras a mano qué resultado debe aparecer en la celda C3 en cada uno de los 3 casos: cuando se inserte 'XI', 'XL' o unos u otros números en los lugares apropiados. Así iremos totalmente sobre seguro acerca del método a emplear. Saludos,
    • Hi Trate de ver que hacían las fórmulas en cuestión pero a su libro le falta o le faltan hojas, por lo que solo podría participar con un par de ideas en general. Lo que entiendo es que según el valor de B3 en C3 debe poner una fórmula u otra, así que es posible que si combina DIRECCION() con INDIRECTO() pueda intercambiar de una fórmula a otra. =SI(B3="Xl",INDIRECTO(DIRECCION(3,5)),SI(O(B3=1,B3=2,B3=3),INDIRECTO(DIRECCION(4,5)),"")) Otra forma sería poner nombre a esas fórmulas en el cuadro de nombres para que las pueda mandar llamar a una o a la otra según el resultado de B3. Por favor tome en cuenta, es solo una idea.
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.