Saltar al contenido

Israel Cassales

Miembro
  • Contador de contenido

    1366
  • Unido

  • Última visita

  • Días con premio

    70
  • País

    México

Todo se publica por Israel Cassales

  1. Esta consulta no es muy clara para el lector, el libro en sí ayuda a entender un poco cómo es que llegas a los resultados aunque aún así, la idea que te puedo aportar se basa en la deducción, ya que por ejemplo no encontré cómo determinas cuáles son las horas festivas. Es decir, en el rango no encontré algo que señales ese tipo de horas. Así consideraré que son las vacías *12 Puedo asumir que al ser 31 columnas, cada una es un día del mes y que los meses inferiores simplemente no se llenan completos. También que en tu fórmula estás contando el tipo de horario y lo multiplicas por las horas que le corresponden sin tomar en cuenta algún lapso, es decir; con que el trabajador tenga marcado un horario tu fórmula lo multiplica por 12 (o 6.5 si son V) y da por válido que ese día cumplió con las horas totales. Entonces bajo esa idea puedes usar tu misma fórmula pero recortando los criterios y creyendo que las nocturnas son las de 18 y 19. Toma en cuenta que solo estoy suponiendo los resultados al compartirte esta idea. Lamento no aportar nada más.
  2. Me da gusto que lo hayas concluido, aunque en realidad lo tenías casi todo terminado. Concluyo mi participación en la consulta.
  3. Para crear un vínculo en la celda de la Hoja16 que apunte a la hoja "clon", podrías utilizar el método Hyperlinks.Add Sub Guardar() 'AYUDA EXCEL... (tu código) ... ' Si se encuentra la celda If Not rangoTabla Is Nothing Then ' Crear un hiperenlace en la celda encontrada que apunte a la hoja clon Hoja16.Hyperlinks.Add Anchor:=rangoTabla, Address:="", SubAddress:="'" & serie & "'!A1", TextToDisplay:=serie End If 'AYUDA EXCEL... (tu código) ... End Sub Ese código, Anchor:=rangoTabla especifica la celda donde se creará el hiperenlace. Address:="" lo dejas vacío porque el vínculo es a una ubicación dentro del mismo libro de trabajo. SubAddress:="'" & serie & "'!A1" especifica la hoja y la celda a la que apunta el hiperenlace. TextToDisplay:=serie es el texto que se mostrará en el hiperenlace. Si he entendido bien tu consulta sería lo único con lo que creo podría participar. Espero que te ayude, sino regresa a dejar comentarios, es muy posible que algún Maestro aporte algo adicional.
  4. Tiene razón el Maestro @torquemada queda a la suposición el ofrecerte propuestas y si no hay ejemplos claros se complica un poco más. Aunque se puede aportar algo a tu idea. Donde va el empleado necesitas poner una lista de validación, puede ser de selección múltiple o usar un BUSCARV() si tienes el número de empleado. Asigna horarios a cada empleado en una hoja diferente, esto te permitirá usar las condiciones para lo que buscas hacer, además que el empleado no podrá escribir en los días que no le corresponden. Para los colores dependientes de esos horarios usa el formato condicional. Busca en las diferentes opciones de fórmulas de FECHA y HORA, además te podría recomendar usarlo en la WEB para consolidar los registros y no tengas que unirlos después en un libro adicional. Son varios pasos los que tienes que dar. Saludines
  5. Esa coma al final del número ¿ya venía ahí o la escribiste por error? Si copiaste y pegaste es posible que esa coma sea la culpable.
  6. No hay una razón en sí, porque lo hace por... En mi caso, de la misma forma que el Maestro @John Jairo V el tema me queda ambiguo, no deja claro si es un solo resultado en F1 (P. ej.) de la suma de las columnas C:C y E:E o el resultado en F1 es la suma de C1+E1 y así hacía abajo, de ser así brindaría una opción incluso más simple. Los valores en C ya existen y son fijos, los únicos dinámicos son los de E Diferente a la propuesta del Maestro @Héctor Miguel por citarlo Similar al resultado del Maestro @Antoni @jlr2.0 tienes que ser claro y seguir las recomendaciones de los maestros. Saludos cordiales a todos
  7. Me da gusto que te haya servido la idea, concluyo mi participación en la consulta.
  8. En base a lo explicado algo como esto debería ser útil. =SI(IZQUIERDA(G12,3)="285", 4, 2) Recuerda cambiar verificar si usas coma, o punto y coma como separador de argumentos.
  9. Es diferente la forma en la que cada quien en los ejemplos anteriores hemos segmentado los datos de tu ejemplo, deje el libro considerando sería más claro el por qué y la diferencia del origen. Siendo este el caso, no podría aportar algo distinto. Saludos
  10. Me da gusto que te haya servido la propuesta, entonces concluyo mi participación en la consulta.
  11. Siempre es importante tratar de poner un libro de ejemplo desde el principio, no digo que intencionalmente se omitan cosas pero con el libro de ejemplo se analizan todos los cálculos y escenarios. Como te mencione, no es lo mismo lo que muestras en la imagen inicial comparado con la forma en la que estás organizando los datos dentro del libro. Te dejo el libro para que veas más claro a lo que me refiero; me parece que con eso debería cumplir el origen de la consulta. Concluyo mi participación, esperando te sea útil. test.xlsx
  12. Bueno, sí ese es el caso y estorba la "D" sola, entonces solo habría que decirle a la fórmula que no la tome en cuenta: =CONTAR.SI.CONJUNTO(I3:Y3,"D*",I3:Y3,"<>D") Por lo demás la idea debería poder servir igual, y podrías evitarte los SI() masivos. fatiga para pregunta.xlsm
  13. Lo que estás experimentando podría deberse a la forma en que insertas las nuevas filas. Cuando usas el método Insert, desplazas las celdas existentes hacia abajo y puede que no copie los bordes de las celdas desplazadas. Podrías necesitar agregar un código adicional para aplicar los bordes después de insertar una nueva fila. Así que con lo que podría participar en tu consulta sería con este ejemplo: With Sheets("MATRIZ").Rows(3).Borders(xlEdgeBottom) .LineStyle = xlContinuous .ColorIndex = 0 .TintAndShade = 0 .Weight = xlThin End With
  14. Salvo lo que opine algún Maestro o miembro avanzado del foro, de mi parte no conozco alguna manera de hacer lo que necesitas sin macros. Lo más cercano es la función CELDA() pero ésta como tal no devuelve el nombre del usuario de Windows. Una posible alternativa que se me ocurre sería crear una tabla dinámica con los datos que quieres imprimir y usar el campo de usuario como un filtro de informe. Así, cada persona que abra el archivo podrá seleccionar su nombre de usuario en el filtro y ver solo sus datos. Ya después al imprimir la tabla dinámica, el nombre de usuario aparecerá en la parte superior del informe. Lamento no poder aportar nada más a este tema.
  15. Me da gusto que te haya servido, concluyo mi participación en el tema.
  16. Hola, Es posible que la siguiente información te ayude. Crear una hoja de etiquetas Combinar correspondencia con una hoja de cálculo de Excel
  17. Lamento no aportar algo específico a lo que comentas pero te puedo compartir un problema que tuve y fue redireccionar las teclas de una portátil, no por algo similar a lo tuyo, pero quien quita y te podría servir. Se le llama remapear. En aquella ocasión buscando cómo hacerlo me encontré que Microsoft tiene algo que se llama Power Toys y sirve para eso. Adicionalmente para responderte hallé este enlace en la web con instrucciones: Cómo remapear las teclas y cambiar los atajos de teclado en Windows 11 Tal vez no ayude en lo que necesitas pero es una idea. De momento esperar si algún Maestro o miembro con mayor experiencia pueda compartir algo más.
  18. Me gustaría ayudarte pero la imagen en sí no garantiza que no haya más elementos que no vemos dentro de la columna que tienes como fecha, porque de manera natural esas opciones adicionales no aparecen a menos que tengas dentro de ese rango algún filtro activo que no vemos aquí, alguna fórmula o texto que no correspondan y alguna que otra variable que afecte la segmentación. En resumen parece que tienes algo ahí. Lamento no ser de mejor ayuda, si pudieras ampliar los detalles, o un libro con el ejemplo sería esplendido. Tal vez alguien aparte pueda agregar ayuda adicional o brinde propuestas más específicas, en mi caso así no podré.
  19. En realidad sería sencillo el tema si lo ves desde otra perspectiva. Se entiende que son etiquetas, bajo ese concepto el texto debería adaptarse al tamaño de la etiqueta, no al revés. Si cambias el tamaño de etiqueta en cada ocasión, sucede justo lo que mencionas con el tamaño de la hoja. Lo que te puedo recomendar: Determina el tamaño de las etiquetas, con esto no necesitas macros porque la hoja siempre respetará el formato de impresión. Usa etiquetas de Word con correspondencia a Excel para los datos, eso garantiza el tamaño. Si aun requieres una macro, saber que es posible de hacer pero tienes que compartir límites en el diseño para que éstos sean programados. Tienes celdas combinadas, en retrospectiva ¿por qué no las usas en lugar de insertar filas?
  20. En base a lo explicado, me parece que CONTAR.SI.CONJUNTO() debe cumplir con lo que se necesita.
  21. Bueno, hay diferentes formas de contribuir, hacerlo por ti o darte ideas. Esto puede ser tan sencillo o complicado dependiendo de tu experiencia en el uso de Excel, mencionas que tu conocimiento es casi nulo, y digo casi, porque te das una idea de qué es una función lógica al usar el SI() Así que te propongo algo, al tener los datos DT y DET que te sirven para discriminar cuando aparecer en la lista de la hoja siguiente sí o no, usa CONTAR.SI() con el comodín D* eso te devolverá el total de conceptos que empiecen con D, ya que dices que no importa, cualquiera de esos dos los vas a tomar en cuenta. =CONTAR.SI(K3:AA3,"D*") Entonces ya podrás usar ese resultado si es mayor que 0, para poder usarlo como un indicador y devolver en la hoja Textra. Para eso unifica el valor que debe crear y luego encontrar para que te aparezca. Podrías usar CONTAR() y luego el BUSCARV() Y bueno al no estar todos, en algunos te devolverá #N/A así que para evitarlo, adiciona en tus fórmulas el SI. ERROR() Recuerda, esto es sólo una idea que puedes mejorar en base a tus pruebas, inténtalo y comparte aquí tus resultados. Es con lo que podría ayudarte en tu consulta. fatiga para pregunta.xlsm
  22. Ando con mi 2013, aunque en base a lo explicado esto debería servir Consecutivo a la derecha.xlsx
  23. Bueno, a falta de libro o algún código de ejemplo con lo único que podre participar en esta consulta será suponiendo un código. Entonces, un código que haga lo que mencionas con los cambios que solicitas deberías ser algo como esto: Sub ExportarDatosATxt() ' Ayuda Excel: Definir el rango de celdas que deseas exportar Dim rango As Range Set rango = ThisWorkbook.Sheets("NombreDeTuHoja").Range("A1:B10") ' Ayuda Excel: Modifica esto según tus necesidades ' Ayuda Excel: Definir el nombre del archivo de texto Dim nombreArchivo As String nombreArchivo = "C:\ruta\archivo.txt" ' Ayuda Excel: Modifica esto según tus necesidades ' Ayuda Excel: Crear un objeto FileSystemObject Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") ' Ayuda Excel: Crear un objeto TextStream Dim archivo As Object Set archivo = fso.CreateTextFile(nombreArchivo, True) ' Ayuda Excel: Recorrer cada celda en el rango y escribir en el archivo de texto Dim celda As Range For Each celda In rango archivo.WriteLine celda.Value Next celda ' Ayuda Excel: Colocar el cursor al final del archivo archivo.WriteBlankLines 1 ' Ayuda Excel: Cerrar el archivo de texto archivo.Close ' Ayuda Excel: Limpiar los objetos Set archivo = Nothing Set fso = Nothing End Sub Recuerda reemplazar el "NombreDeTuHoja" y "C:\ruta\archivo.txt" con el nombre de tu hoja y la ruta de tu archivo. Un código como ese crea un nuevo archivo de texto y escribe los valores de las celdas en el archivo. Después de escribir todos los datos, moverá el cursor a la línea siguiente. Toma en cuenta que esto sobrescribirá el archivo de texto si ya existe y si deseas agregar los datos al final del archivo en lugar de sobrescribirlo, puedes cambiar fso.CreateTextFile(nombreArchivo, True) a fso.OpenTextFile(nombreArchivo, 8, True)
  24. Me da gusto que te haya servido, concluyo mi participación en la consulta. ¡Saludos desde México!
  25. Entiendo, Es con lo que podría ayudarte. Control de Gastos 20240115.xlsx
×
×
  • 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.