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. En base a lo explicado y sin libro de ejemplo podría participar con lo siguiente: Primero, debes crear una lista desplegable en la columna AC. Para hacer esto, selecciona la columna AC, ve a la pestaña de “Datos” en la cinta de opciones de Excel, y selecciona “Validación de datos”. En las opciones, selecciona “Lista” y en “Origen” escribe “interest potential, no interest”. Esto creará una lista desplegable en cada celda de la columna AC con las opciones “interest potential” y “no interest”. Luego, y aquí parece que esta la confusión de la instrucción porque no puedes poner la fórmula en la misma columna donde está la validación, así que podrías usar la fórmula de SI para llenar la columna adyacente AD basándote en los valores de la columna AB. La fórmula sería algo como esto: =SI(AB1="Call", "interest potential", "") Esta fórmula verifica si el valor en la celda AB1 es “Call”. Si es así, entonces coloca “interest potential” en la celda actual. Si no, deja la celda en blanco. Saludines
  2. Si lo he entendido bien, algo como esto debería ser útil Sub AyudaExcel() Dim valorActual As String valorActual = Hoja1.Range("G3").Value If valorActual Like "FS*" Then Dim numero As Integer numero = Right(valorActual, Len(valorActual) - 2) Hoja1.Range("G3").Value = "FS" & numero + 1 Else Hoja1.Range("G3").Value = "FS1" End If End Sub
  3. Lo que busca es un desplazamiento que no está contemplado de manera natural en las opciones de inmovilizar o dividir del menú vista. Sin embargo se pueden hacer algunos "efectos" por llamarle así que simulen lo que pretende hacer. Una opción que podría intentar sería usar el comando cámara el cual se comporta como una imagen y dejarla fija. Otra, puede duplicar la ventana del mismo libro que está trabajando y sobre poner una sobre otra en las coordenadas que necesita y vera la misma hoja con el rango aparentemente fijo de atrás mientras mueve libremente el de enfrente en los mismos datos. Aunque esto no es muy estético son ideas solamente. Una más, es posible que con código VBA se alcance su propósito. Sería abrir un tema parecido ahí, o esperar a que algún maestro avanzado comparta algo que nos enseñe en general por acá. Saludines.
  4. En lo que se parecen o hacen similar Las similitudes entre las macros son: Todas las macros eliminan filas basándose en algún criterio de búsqueda proporcionado por el usuario. Todas las macros utilizan la función InputBox para solicitar al usuario el criterio de búsqueda. Todas las macros utilizan un bucle For para recorrer las filas y la función Delete para eliminar las filas. Todas las macros utilizan la función Find para buscar el criterio de búsqueda en la columna especificada o en la columna A.
  5. Las principales diferencias entre las macros son: Hoja de cálculo: Las macros 1 y 2 operan en hojas de cálculo específicas Hoja2 y ELIMINAR FILA POR TEXTO, respectivamente, mientras que las macros 3 y 4 operan en la hoja de cálculo activa. Criterio de búsqueda: Las macros 1 y 4 permiten especificar tanto la columna como el criterio de búsqueda, mientras que las macros 2 y 3 solo permiten especificar el criterio de búsqueda y buscan en la columna A. Número de filas eliminadas: Las macros 1 y 4 eliminan todas las filas que coinciden con el criterio de búsqueda, mientras que las macros 2 y 3 eliminan un total de 85 filas que comienzan con la fila donde se encuentra el criterio de búsqueda.
  6. Y bueno aunque nadie lo pidió pero por si alguien más lee el tema, un resumen técnico: ¿Qué hacen las macros? Macro 1: ElimarFilaSegunCriterio (Versión 1) Esta macro elimina todas las filas en Hoja2 que coinciden con un criterio de búsqueda especificado por el usuario en la columna A. El número total de filas eliminadas se muestra al final. Macro 2: Eliminar85FilasColumnaA (Versión 1) Esta macro elimina un total de 85 filas en la hoja ELIMINAR FILA POR TEXTO que comienzan con la fila donde se encuentra el texto especificado por el usuario en la columna A. Macro 3: Eliminar85FilasColumnaA (Versión 2) Esta macro elimina un total de 85 filas en la hoja de cálculo activa que comienzan con la fila donde se encuentra el texto especificado por el usuario en la columna A. Macro 4: ElimarFilaSegunCriterio (Versión 2) Esta macro elimina todas las filas en la hoja de cálculo activa que coinciden con un criterio de búsqueda especificado por el usuario en la columna especificada.
  7. Mis mejores deseos para cada uno de los que participan en el foro, consultantes, miembros, maestros, moderadores, administradores... Y a cada quien que pase por aquí. ¡Feliz Año 2024! Saludines
  8. 2a Opción: Para lo que buscas y no mover el formato de toda la tabla, lo puedes quitar de aquí: Aunque tendrías que editar un poco las dependencias que tienes al encabezado. Saludines
  9. 1a Opción: Intenta ordenar lo que tienes aquí:
  10. No me lo tome a mal pero para transmitir una idea en la que le van a ayudar otras personas debe imperar la paciencia y repetir si es necesario, una, dos, tres, las veces que sea necesario. Y sí, creo entender que la parte anterior es la que está costando a usted trabajo que los Maestros la visualicen. Si ha tenido que repetirlo y aún no "le entienden" diferentes personas, le recomiendo intentar otra forma de explicarlo, hacer lo mismo lleva al mismo resultado. Dice estar abierto a las preguntas, entonces trate de verlo así, usted tiene un dato en la fila 1, y elimina 84 filas debajo de éste, la fila 86 pasará hacer la fila 2 ¿Que pasa con los valores intermedios? ¿Esos ya no importan? Al final parece que usted quiere juntar esos datos, ¿no es así? ¿Por qué importa que elimine 84 filas + hacia abajo, si las va a dejar juntas? Al final, después de eliminar no tiene manera de validar que elimino esa filas. ¿En realidad quiere dejar juntos esos datos? ¿Solo importa uno de esos datos o se tienen que organizar para que no se eliminen en caso de estar entre filas? Sobre el comentario anterior, uno es responsable de lo que escribe, no de lo que lee, aunque espero no sea en tono de soberbia porque a pesar de eso le siguen tratando de ayudar con las explicaciones que usted, reconozco intenta exponer. Tome en cuenta, está intercambiando opiniones e ideas con personas, aunque si esto mismo lo expusiera en una IA, CHAT GPT (por ejemplo) con seguridad le pediría ser más claro. En la calidad de la pregunta esta la originalidad de la respuesta. De mi parte me gusta ayudar, pero en este tema tiene a dos grandes Maestros participando así que solo dejaré lo que quería expresarle. Saludos cordiales.
  11. Misma propuesta, solo agrega esa condición en el formato con otro color. En base a lo explicado con eso debería ser suficiente para cumplir con los argumentos de la consulta. Saludines.
  12. Importante, tienes estilos personalizados en la tabla que se anteponen al formato condicional, debes decidir que hacer con ellos para que haya un orden de establecimiento de formatos. Ya solo tendrías que replicar en las hojas siguientes. Prueba - AYUDA EXCEL.xlsx
  13. Como no encontré donde está la definición de los días festivos recomiendo una hoja adicional, en el ejemplo que mostraré agregue una hoja que se llama FESTIVOS pero la puedas editar según el caso. Una vez establecidos bastaría con un formato condicional que busque el valor del día en el rango que se establecen los días festivos. =COINCIDIR(C$3,FESTIVOS!$A$3:$A$15,0)>=1
  14. Pregunta 04: Para validar las fechas de acuerdo a las condiciones que mencionas, puedes agregar las validaciones correspondientes en tu macro. Private Sub CmdREGISTRAR_Click() ' Parte de tu código... Else Dim fechaNacimiento As Date Dim fechaIngreso As Date Dim fechaAccidente As Date fechaNacimiento = CDate(TxtNACIMIENTO.Value) fechaIngreso = CDate(TxtINGRESO.Value) fechaAccidente = CDate(TxtACCIDENTE.Value) If fechaNacimiento > fechaIngreso Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Mayor a la Fecha de Ingreso"), vbExclamation ElseIf fechaNacimiento < fechaIngreso Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Menor a la Fecha de Ingreso"), vbExclamation ElseIf fechaNacimiento = fechaIngreso Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Igual a la Fecha de Ingreso"), vbExclamation ElseIf fechaNacimiento > fechaAccidente Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Mayor a la Fecha del Accidente"), vbExclamation ElseIf fechaNacimiento < fechaAccidente Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Menor a la Fecha del Accidente"), vbExclamation ElseIf fechaNacimiento = fechaAccidente Then MsgBox ("Fecha Errónea: La Fecha de Nacimiento No Puede ser Igual a la Fecha del Accidente"), vbExclamation Else ' Lo que sigue del código... End If End If End Sub CDate convierte las cadenas a fechas para poder compararlas
  15. Pregunta 03: Para validar el formato de las fechas, puedes usar la función IsDate de VBA, que devuelve True si la cadena puede convertirse en una fecha. Private Sub CmdREGISTRAR_Click() If Not IsDate(TxtNACIMIENTO.Value) Or Not IsDate(TxtINGRESO.Value) Or Not IsDate(TxtACCIDENTE.Value) Then MsgBox ("Formato de Fecha No Admitido"), vbExclamation ElseIf TxtNACIMIENTO.Value = "" Or TxtINGRESO.Value = "" Or TxtACCIDENTE.Value = "" Then MsgBox ("Datos Incompletos: Faltan Campos por Llenar"), vbExclamation Else ' Lo que falta del código... End If End Sub IsDate verifica si los valores de los campos son fechas válidas.
  16. Pregunta 02: Para que el cursor se desplace de forma secuencial por los campos TxtNACIMIENTO, TxtINGRESO y TxtACCIDENTE, debes establecer el orden de tabulación de los controles en tu formulario. Esto se hace en el diseñador de formularios, seleccionando cada control y estableciendo su propiedad TabIndex en el orden deseado.
  17. Pregunta 01: Para que el formulario Fmrfechas solo se muestre cuando el usuario y la clave sean correctos, puedes agregar una validación en tu macro. Private Sub CmdACEPTAR_Click() If TxtUSUARIO.Value = "" Or TxtCLAVE.Value = "" Then MsgBox ("Usuario o Clave Vacíos"), vbExclamation ElseIf Not Module1.BotonAceptar(TxtUSUARIO.Value, TxtCLAVE.Value) Then MsgBox ("Usuario o Clave Incorrectos"), vbExclamation Else Fmrfechas.Show End If End Sub Este código, Module1.BotonAceptar debería ser una función que reciba el usuario y la clave, y devuelva True si son correctos y False en caso contrario.
  18. Bueno, sin libro de ejemplo y toda una guía de instrucciones vamos a intentar aportar algo...
  19. Si el código te da problemas intenta lo siguiente: 1. Ubicación del código: El código VBA debe estar en el módulo de la hoja “Almacen_RT” en “Origen1.xlsx”. Para verificar esto, abre el Editor, expande el objeto “ThisWorkbook” en el panel del Explorador de proyectos y haz doble clic en “Almacen_RT” para abrir el módulo de la hoja. 2. Ruta del archivo de destino: Asegúrate de que la ruta del archivo de destino en el código VBA sea correcta. Debe ser la ruta completa del archivo, incluyendo la extensión del archivo (por ejemplo, C:\Users\TuNombre\Documents\Destino2mismaextension.xlsx). 3. Guardar cambios: El código VBA guarda y cierra el libro de destino después de copiar los cambios. Si tienes el libro de destino abierto mientras haces cambios en el libro de origen, es posible que no veas los cambios. Intenta cerrar y volver a abrir el libro de destino para ver si los cambios se han realizado. 4. Intenta alguna de las otras dos opciones.
  20. Opción Power Query: Esta es una herramienta de Excel que te permite importar datos de varias fuentes y transformarlos según tus necesidades. 1. Abre el libro “Destino2mismaextension.xlsx”. 2. Ve a la pestaña “Datos” en la cinta de opciones y selecciona “Obtener datos” > “Desde archivo” > “Desde Workbook”. 3. Navega hasta el libro “Origen1.xlsx” y haz clic en “Importar”. 4. En el cuadro de diálogo del Navegador, selecciona la hoja “Almacen_RT” y haz clic en “Cargar”. Ahora, cualquier cambio que hagas en la hoja “Almacen_RT” del libro “Origen1.xlsx” se reflejará automáticamente en la hoja correspondiente del libro “Destino2mismaextension.xlsx” cuando actualices la consulta en “Destino2mismaextension.xlsx”. Ten en cuenta que este método requiere que actualices la consulta manualmente o establezcas actualizaciones automáticas para ver los cambios en tiempo real. Saludines
  21. Opción con vínculos: 1. Abre ambos libros de Excel, “Origen1.xlsx” y “Destino2mismaextension.xlsx”. 2. En el libro “Destino2mismaextension.xlsx”, selecciona la celda donde quieres que aparezca la información. 3. Escribe = en esa celda. 4. Cambia a la ventana de “Origen1.xlsx” y selecciona la celda que contiene la información que quieres vincular. 5. Presiona Enter. Ahora, cualquier cambio que hagas en la celda del libro “Origen1.xlsx” se reflejará automáticamente en la celda correspondiente del libro “Destino2mismaextension.xlsx”. Ten en cuenta que este método solo funciona si ambos libros están abiertos al mismo tiempo. Si el libro “Origen1.xlsx” está cerrado, Excel no podrá actualizar la información en “Destino2mismaextension.xlsx”.
  22. Opción con VBA Private Sub Worksheet_Change(ByVal Target As Range) Dim Destino As Workbook Dim ws As Worksheet ' Abre el libro de destino Set Destino = Workbooks.Open("ruta completa del archivo\Destino2mismaextension.xlsx") ' Selecciona la hoja de destino Set ws = Destino.Worksheets("Almacen_RT") ' Copia los cambios a la hoja de destino Target.Copy ws.Range(Target.Address) ' Guarda y cierra el libro de destino Destino.Close SaveChanges:=True End Sub Este código debe ser colocado en el módulo de la hoja “Almacen_RT” del libro “Origen1.xlsx”. Reemplaza "ruta completa del archivo\Destino2mismaextension.xlsx" con la ruta completa del archivo de destino. Este código se activará cada vez que hagas un cambio en la hoja “Almacen_RT” del libro “Origen1.xlsx”, y replicará el cambio en la hoja “Almacen_RT” del libro “Destino2mismaextension.xlsx”.
  23. En base a lo explicado sí puedes, aunque es importante que los dos libros de Excel tengan la misma estructura para que los datos se correspondan correctamente.
  24. Tu libro Consulta de Afiliados AFP - PTO ILO.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.