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. Antes que nada espero haber entendido bien la consulta, en caso contrario nada de lo que escriba tendrá razón de ser. Estas diciendo que hay un tipo de formato (en el origen) pero al dar copiar, y copiar en el destino, como ahí es distinto lo pegas en valores para que no te cambie el formato que ya tienes en la fecha y en "ajustar texto", ¿Es correcto? ¿Que al pegar no tome en cuenta el formato con el que viene en el portapapeles?. Si es así, entonces te refieres a tener configurado de manera predeterminada el formato con el que debe pegar los datos cada vez que uses copiar y pegar, en ese caso yo no conozco que algo así se pueda hacer de manera nativa. ¿Se puede forzar? Sí, podrías crear un macro que solo pegue en formato de valores en ese libro y te podrías ahorrar ese paso del pegado especial y pegar directamente sin perder el formato del destino. Sub PegarValores() Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False End Sub La mandas llamar con una combinación de teclas y solo pegara en valores. Es con lo que puedo participar de tu consulta.
  2. Si lo he entendido bien, algo como esto debería servir. Si estoy equivocado ¿podrías llenar un ejemplo del resultado por favor? Si no es mi ayuda, tal vez la de algún maestro del foro. =SI.ERROR(INDICE(Hoja2!$B$2:$B$44,COINCIDIR(B5,Hoja2!$B$2:$B$44,0)),B5)
  3. Creo te estás confundiendo un poco, para que esté activa todo el tiempo la IA te recomendó pegarla como código en la hoja con el evento Private Sub Worksheet_Change(ByVal Target As Range), es decir; la macro hará lo que está programado en cada ocasión que haya un cambio en la hoja. Eso fue cuando diste doble clic sobre la hoja y te apareció la ventana en blanco. Por otro lado: La macro anterior la pusiste al insertar un módulo, entonces de manera regular no se va a ejecutar hasta que haya un evento que se lo indique, como puede ser el dar clic en un botón o en una autoforma que insertes por ejemplo. Para hacer algo simple como lo anterior, inserta una autoforma, la seleccionas y das clic derecho, en la opción asignar macro te abre una ventana y te aparecen las macros que has creado en el libro, entonces deberías ver esa que tienes creada "CortarYEliminarFilas". Se la asignas y entonces cada que des un clic en la autoforma la macro se ejecutará. En resumen, tú decides cómo y en qué momento debe ser ejecutada la macro.
  4. La diferencia es que uno se ejecuta cuando la hoja cambia y la que pegaste en el modulo necesitas indicarle cuándo se va a ejecutar, puede ser una combinación de teclas, crear un botón que la ejecute al dar clic y varias ideas que se te podrían ocurrir.
  5. En ese caso es parece que está intentando cerrar un libro (wb) que ya se ha liberado. Así que lo que podría agregar entonces es verificar el objeto antes de cerrarlo, intenta modificar el código: ' Cerrar el archivo sin guardar cambios If Not wb Is Nothing Then wb.Close SaveChanges:=True Set wb = Nothing End If Algo así verificará si el objeto wb existe (If Not wb Is Nothing) antes de intentar cerrarlo (wb.Close SaveChanges:=True). Si wb no existe, entonces el código para cerrarlo no se ejecutará, tratando de evitar el error
  6. ¿Siendo así por que no buscas en donde está alojado el libro que tienes anclado en la barra de tareas y el acceso directo lo haces a la misma ruta? ¿Estamos hablando de un solo equipo verdad?
  7. Hola, Eso me parece muy bien y entiendo lo que quieres hacer. Se que parezco insistente pero por eso pregunto si alguna de las opciones que te brinde eran útiles o no, porque te mostré varias y de esas a mi gusto el .bat es el más sencillo para mover o copiar archivos entre carpetas, no necesariamente desde una macro de Excel. Y como te recomendé varias opciones pues no sé cuáles has intentado o no, entonces no sé si pensar en otras ideas que escribir o esperar que alguien distinto aporte algo diferente.
  8. Entiendo, pero si hablamos de un acceso directo a un enlace web se hace de la misma manera, se copia el enlace que ves en la barra de navegación y se lo pegas en donde pide la ubicación al crear el acceso directo. Eso debería servir.
  9. No entiendo a que te refieres con el equipo de sobremesa, debe ser algún dispositivo en tu lugar de trabajo. Lo del acceso directo en base a lo que te has explicado debe ser sencillo, si lo quieres por ejemplo en el escritorio del equipo basta con dar clic derecho, insertar acceso directo y donde pide la ubicación pegas el enlace al archivo en DRIVE. Aquí hay una breve descripción de cómo se hace. Para agregar accesos directos al escritorio Ahora hay detalles que cuidar al querer ver un libro en DRIVE si no eres el creador, como permisos por ejemplo. Además que el libro debes darle la opción de estar compartido porque sino aunque el acceso directo te llevará al archivo en la WEB sin esos permisos no podrás trabajar en él.
  10. Parece que este tema se ha resuelto ya en la sección de macros Agrupar datos y valores de una hoja a otra en resumen
  11. Como te dice la IA, la macro se ejecutará cada que cambie algo en la hoja activa, esta parte "luego inserta el siguiente código en la hoja de Excel donde deseas monitorear los cambios:" se hace dando doble clic sobre la hoja donde quieres los cambios, es decir; al dar Alt + F11 del lado izquierdo ves la hojas en forma de lista que conforman el libro, al dar doble clic sobre una de ellas te "abre" ahí mismo del lado derecho una ventana en blanco que es donde debes de pegar el código que te han proporcionado. Una vez pegado el código estará siempre activa y hará lo que quieres cada que cambies algo en esa hoja. Solo guarda los cambios en tu libro naturalmente. En resumen, para que se ejecute un código algo debe de ocurrir en tu libro, hay otras forma de hacerlo pero lo que te recomendaron es útil. Si cambias el nombre del libro donde esta esa macro, la macro se mantiene ahí. Si das un "guardar como" debes asegurarte que sea en un libro habilitado para macros, si copias el libro la macro se replica en la copia. Un escenario donde la macro no se "pegue" en otro libro sería que solo copies la hoja de un libro a otro. Si el proceso del ALT + F11 ya esta (Y YA PEGASTE EL CÓDIGO) para probarla basta con dar F5 o irte a tu hoja y hacer un cambio. Analiza si así es como quieres que se "dispare" tu macro, sino te acomoda puedes hacer que se ejecute por medio de un botón. Eso es sencillo insertando un módulo, pegas ahí la macro y en la hoja insertas un botón que haga referencia a ese módulo. Pero si por la poca experiencia te parece complicado, puedes consultar aquí en el foro como insertar un módulo o replicar esta pregunta en la IA. Saludines.
  12. Hola, no tengo experiencia con ese error así que lo busque en Google y me devolvió esto: El error ‘-2147023170(800706be) generalmente ocurre cuando se intenta acceder a un objeto que ya no está disponible. Entonces no estoy seguro que lo siguiente funcione pero parece que al ser tantos archivos ocupa demasiada memoria en cada iteración del bucle. Si es así lo que podría recomendarte sería establecer los objetos de excel como wb y ws en el NOTHING después de que ya los uso. Algo así: ' Cerrar el archivo sin guardar cambios wb.Close SaveChanges:=True ' Liberar la memoria Set ws = Nothing Set wb = Nothing Además: ' Cerrar la instancia de Excel Application excelApp.Quit Set excelApp = Nothing Como mencionaba no estoy seguro que funcione pero es una idea, es con lo que puedo participar en tu consulta.
  13. Entiendo, por eso te mostraba el tema anterior que también es tuyo y en él te mostré diferentes opciones de hacer lo que mencionas, eso me llevo a preguntar si ninguna de esa opciones era útil.
  14. ¿Qué diferencia hay de este tema a este otro? copiar archivos a otras carpetas Por cierto en ese tema no tuve respuesta sobre si mi aportación fue útil o no
  15. Variables seguramente siempre va a encontrar, lo que no debe perder es la concentración de las recomendaciones que le dan los maestros, tal vez no lo crea pero intentan que usted haga las pruebas, que comparta sus ejercicios con sus alcances y sus errores, no sólo esperar el resultado.
  16. Pues si en B3 tuvieras 0 el resultado sería 0, en realidad no tienes que mover nada a la propuesta del Maestro @Victor7, ahora si aún lo quieres como condición... =SI(B3=0;0;B3*10%*(O(B6=23;B6=25))) Si te refieres a que si está vacía: =SI(B3="";0;B3*10%*(O(B6=23;B6=25)))
  17. Es importante seguir las recomendaciones del maestro, en este caso y agregando el cambio de condiciones que mencionas bastaría con modificar un poco lo que @Victor7 ya ha dejado. Es decir; la propuesta original es de él con un poco de edición. =B3*10%*(O(B6=23;B6=25))
  18. No me lo tomes a mal, pero ¿por qué no resaltas todas esas condiciones desde un inicio? Lo anterior no se parece a esto: En ninguna parte mencionó antes lo que ha mencionado ahora, debes ser lo más detallado posible. Sé que la idea la tienes muy clara porque eres el autor, para los demás no es tan simple. ¿Qué es lo que llevas de intento? ¿Podrías compartir? Así, sobre esos ejemplos tal vez ayudarte. Si no has intentando algo, te recomiendo que combines el SI() con el CONTAR() para empezar. Ya que al tener el día fijo por columna debería ser sencillo identificar que turno es y según el horario las horas a multiplicar.
  19. Bueno en ese caso y aprovechando que no tienes lapso de tiempo, es decir; el trabajador no pone entrada y salida, en su lugar solo estás multiplicando entonces tu misma formula sirve para las nocturnas pero en lugar de multiplicar por 12, lo puedes hacer por 8 Y para las festivas mismo caso, no hay entrada y salida solo depende de tener horario en las celdas con color vertical, así que podrías usar CONTAR()*8 Es lo que podría sugerirte.
  20. Elimine una respuesta anterior donde explicaba que (yo) no tenía la experiencia para hacer eso que pides con fórmula, y ofrecerte una personalizada pero ya tienes una propuesta del Maestro que podrías utilizar. Como ya la tenía terminada la dejo de todos modos pero es con VBA. AYUDA EXCEL.xlsb
  21. Lo lamento, al menos en lo particular no podré ayudarte, la causa por si lo puedes ampliar y alguien más pueda brindarte alguna propuesta: En tu tabla solo vi una columna para registrar las salidas y el stock actual resta sobre el total así que parece ya hace lo que mencionas: Del comentario anterior, no encontré la columna que se llame "salida bodega 1011" las salidas las haces en una sola. Esa parte es un poco más clara pero con el diseño así como está necesitas hacer algunos cambios para manejar stok por bodega y no todo junto como tienes ahora. Si es la idea en realidad te sugiero entonces que muestres tú idea del diseño y llenas el ejemplo manualmente. Así que no puedo no aportar nada más.
×
×
  • 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.