Saltar al contenido

Ver disponibilidad filtrando por campos


victorjavega

Recommended Posts

Hola,

tengo un calendario con un scroll por meses, La idea es que haya un calendario por cada aula, me explico con un ejemplo; imaginemos que en el "aula 1" el jueves 8-10 hay una clase de "MI" de 10-14 (marcada en naranja) y como estoy en el aula 1 al darle a "FILTRAR" debería aparecerme, pero en el momento que yo cambie en el selector de aulas a "aula2" debería desaparecer la clase de "MI" del día 8-10 y aparecer "Master uñas" de 9-14 y así con cualquier fecha de la barra de desplazamiento y con cada aula.

Esta explicado también en el documento.

he intentado varias cosas pero no hay manera, socorro!!!

Gracias de antemano

Calendario_aulas.xlsm

Enlace a comentario
Compartir con otras webs

  • victorjavega changed the title to Ver disponibilidad filtrando por campos

Hola @Luis Caballero la cosa es que no tengo mucha idea, lo que quería es que al poner aula 3 por ejemplo salieran los cursos que se dan en ese aula durante todo el mes y si cambias a aula 4 y vuelves a filtrar, que cambie la ocupación a la pertinente, lo primero que habría que hacer es rellenar todas las ocupaciones, pero no puedo porque se superponen los cursos porque no cambia el calendario por cada aula que seleccionas.

 

Si vas a octubre te sale "MI" el jueves 8.10 en todas las aulas, por ejemplo eso debería salir solo en aula 3 y así con todo.

 

muchas gracias por el tiempo.

Enlace a comentario
Compartir con otras webs

Hola @victorjavega! (y Luis!)

Te hago una consulta: si vos escribís manualmente "MI" en las celdas R16 a R19 (que serían el 07/01/2020 de 10 a 13 Hs inclusive), ¿cómo podés saber a que aula corresponden? ¿cómo identificar si corresponden al aula 1 o a cualquier otra aula? Si no hay forma de saberlo, entonces es imposible que ningún filtro te pueda llegar a mostrar esa información.

Adjunto un ejemplo de cómo yo lo haría, cargando los datos en la hoja "Cursos".

Saludos!

PD: tu scroll se me rompió en mi copia del archivo y no funciona correctamente :P

Calendario_aulas.xlsm

Enlace a comentario
Compartir con otras webs

Ya casi lo tengo, solo que no logro conseguir que funcione esta parte de mi macro :V

...Cells(celda.Row, 10).Value <> Range("G4").Value then
...celda.EntireRow.Hidden = True

O sea, no logro ocultar las filas que correspondan a aulas diferentes que la que se indica en la celda G4.

Ojalá fuera mejor con esto de las macros :P

Calendario_aulas2.xlsm

Enlace a comentario
Compartir con otras webs

Hola @Cristian 1985 y @Luis Caballero!!

Esta genial, se me pasó, no había entendido en un principio, lo único que faltaría es poder indicárselo de manera masiva, es decir, en la hoja "Cursos", le indicas "curso", "aula", "fecha" y "horario" en vez de indicar una a una las horas que están ocupadas el aula, indicar la hora, inicio - fin (ejemplo: 9:00 - 14:00) y el inicio de curso y el fin de curso para que rellene automáticamente todo el calendario.

Los campos de la hoja cursos serían:

CURSO - AULA - FECHA INICIO - FECHA FIN - HORARIOA ENTRADA - HORARIO SALIDA

 

Muchisimas gracias por el tiempo,

Saludos!!!

Enlace a comentario
Compartir con otras webs

He encontrado un pequeño error en el de formulación, parece que cuando rellenas varias campos con el mismo aula, auto rellena todos los días a las 9:00.

Adjunto documento, esta en el mes de marzo y hay una sesión de 9:00 a 12:00 de "TM", si intentas meter esa sesión al día siguiente en la hora "cursos", rellena automáticamente con "TM" todas las 9:00 de todo el mes, no logro encontrar el fallo.

Calendario_aulas (5).xlsm

Enlace a comentario
Compartir con otras webs

De nada Victor, con respecto al error te pido disculpas pero aún no pude solucionarlo. El problema es que cuando la función INDICE obtiene el valor 0 para el campo "Núm_fila" arroja un resultado y según entiendo no debería hacerlo.

=INDICE(Tabla1[Curso];0)

Peor aún el resultado varía si lo introduzco en distintas celdas (ver el adjunto las celdas pintadas en rojo) (creo que en el mismo orden de los datos ingresados en la hoja "cursos").

Por lo pronto, creo que esta fórmula debería evitar el problema

=SI(SUMAPRODUCTO((Tabla1[Aula]=$G$4)*(Tabla1[Fecha]=L$14)*(Tabla1[Horario Entrada]<=$K15)*(Tabla1[Horario Salida]>=$K15)*Tabla1[Id])=0;"";INDICE(Tabla1[Curso];SUMAPRODUCTO((Tabla1[Aula]=$G$4)*(Tabla1[Fecha]=L$14)*(Tabla1[Horario Entrada]<=$K15)*(Tabla1[Horario Salida]>=$K15)*Tabla1[Id])))

O sea, verifico primero si el valor de la función SUMAPRODUCTO da 0 (es el dato que se usa como el campo "Núm_fila" de la función INDICE) y en dicho caso dejo la celda en blanco. La verdad es que esto no es ni elegante ni eficiente ?.

Espero alguien pueda ayudarme con esto, tal vez @John Jairo V? ??????

 

 

Calendario_aulas (5).xlsm

Enlace a comentario
Compartir con otras webs

Retomo tu consulta anterior:

¿hay alguna posibilidad de que en el selector de aulas se pueda introducir "Todas" o habría que generar un calendario a parte para esto? 

En la versión con macros sí es posible (es el archivo que ya había subido) ya que cada aula tiene sus respectivas celdas, pero me temo que con formulación no se va a poder; imaginate que tenés cargados 2 cursos en el mismo día y horario, ¿cómo debería mostrarse si se superponen?

Enlace a comentario
Compartir con otras webs

Si, lo pensé después que con formulación se superpondrían, igualmente me sirve con macros, MUCHAS GRACIAS POR TU AYUDA.

Si finalmente @Jhon Jairopuede echar un cable con el tema de la función INDICE que obtiene el valor 0 para el campo "Núm_fila" que comentaste antes quedaría de 10.

 

????? @Cristian 1985 genio!!!

 

Saludos amigo!!

Enlace a comentario
Compartir con otras webs

¡Hola a todos!

@Cristian 1985:  Debes tener en cuenta que en la función INDICE, el argumento 0 hace que la función devuelva TODOS los valores de la columna a analizar (puedes probar con una función en modo edición, y presionar F9 para que lo constates).

@victorjavega:  Cristian si escribió bien mi nombre (eso hizo que me fijara en el tema).  Tu llamaste a un "tocayo"... ?

Para la propuesta, no necesitas ningún tipo de macros.  Simplemente un control de formulario (control número), vinculado con la celda donde está el mes.

Mejoré la fórmula que tenías en la selección del mes, además de la fórmula original, donde combino INDICE - COINCIDIR - INDICE.  Revisa el adjunto.  ¡Bendiciones!

Calendario_aulas.xlsx

Enlace a comentario
Compartir con otras webs

¡Hola!!!! vaya mencione al "tocayo"..., no ví la "V" @John Jairo V ??

ESPECTACULAR!!! me encantó el selector "PROFESOR" me será muy útil.

Lo único que faltaría, la guinda en el pastel ? sería añadir en los dos selectores, un campo más, me explico, como esta en el adjunto de @Cristian 1985,  para el selector "AULA" el campo TODAS para que muestre todas las aulas y lo mismo en el caso de el selector "PROFESORES" el campo "SIN PROFESOR" para que sea capaz de mostrar las aulas también sin profesor.

CON ESO TENDRÍA EL EXCEL DE 10!

muchas gracias a los dos @John Jairo V @Cristian 1985 sois unos cracks. ??

 

 

Captura.PNG

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

    • 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.
    • Buenas tardes! Tengo el siguiente código: Private Sub btnCargaBancos_Click() Dim TasaCompra, TasaVenta As Double Dim InvBanesco, InvVzla, MontoBanesco, MontoVzla As Double Dim TasaDiaBan, TasaDiaVzla, TasaActual As Double 'Inversion = Val(txtInversion.Text) InvBanesco = Val(CDbl(txtInverBanesco.Text)) InvVzla = Val(CDbl(txtInverVzla.Text)) TasaCompra = Val(CDbl(txtTasaCompra.Text)) TasaVenta = Val(CDbl(txtTasaVenta.Text)) 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 MontoBanesco = FormatNumber(MontoBanesco, 2, True, vbFalse) MontoVzla = FormatNumber(MontoVzla, 2, True, vbFalse) TasaActual = FormatNumber(TasaActual, 5, True, False) txtBcoBanesco.Value = MontoBanesco txtBcoVenezuela.Value = MontoVzla txtTasaDiaria.Value = TasaActual End Sub   Como se puede apreciar InvBanesco ,  InvVzla , TasaCompra y TasaVenta, son valores que introduce el usuario a través de los respectivos cuadros de texto. Tengo los siguientes problemas: a. Las fórmulas no se ejecutan correctamente (pareciese que no reconociese los números entrados vía cuadros de texto). b. Al darle valor cero (0) a cualquiera de los valores de InvBanesco o  InvVzla, me genera un error en TasaDiaBan o TasaDiaVzla (según sea el caso), aunque, como se puede apreciar, debería generar un valor cero (0). Como dije en mi presentación estoy empezando en esto de la codificación...y quiero aprender de Uds! Agradezco su ayuda! Nota: lamentablemente el fichero es mas grande de lo permitido y no pude anexarlo.  
    • Hola buenas tardes. En una hoja plantilla donde realizo diferentes consultas de datos. tengo ya establecido dos formulas diferentes con función SI y buscar. estos buscan diferentes rangos de datos y recibendiferentes resultados. Cada formula varia según una palabra o numero  ejemplo si pongo Xl pone la formula 1 y si pongo cualquier numero entre 1 y 3 pone la segunda formula. Lo que necesito hacer es que si en una celda de la columna B3 pongo XL debería de considerar la formula 1 y si pusiera el numero 1 me pondría la segunda formula, dentro de la misma formula. Ya agregue la función SI($C3="Xl",Formula1.. Pero no me funciona, espero me puedan ayudar.   Muchas gracias Mariano   Formula doble si en celda existe.xlsx
    • Sub control2558() Application.ScreenUpdating = False Dim I As Integer I = 4 While Sheets("FT-ADF-2558").Cells(I, 102) <> "" Sheets("FT-ADF-2558").Cells(6, 82) = Sheets("FT-ADF-2558").Cells(I, 102) Dim NombreArchivo, RutaArchivo As String NombreArchivo = "Hoja Control " & Sheets("FT-ADF-2558").Cells(I, 102) RutaArchivo = ActiveWorkbook.Path & "\" & NombreArchivo & ".xlsm" Dim NuevoLibro As Workbook Set NuevoLibro = Workbooks.Add Sheets("FT-ADF-2558").Copy Before:=NuevoLibro.Sheets(1) NuevoLibro.SaveAs Filename:=RutaArchivo NuevoLibro.Close I = I + 1 Wend MsgBox ("Proceso generado con éxito") Application.ScreenUpdating = True End Sub  
    • Ese error es porque no existe la hoja 10 con ese nombre, entonces cámbialo por FT-ADF-2558
  • 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.