Saltar al contenido

Macros y programación VBA

Temas sobre la automatización de Excel utilizando macros y VBA. Errores de VBA. ¿No consigues que tus macros hagan lo que necesitas?

  1. Started by Teo1099,

    Hola buen día a todos los excelianos ? Quisiera pedir de su valioso apoyo para lo siguiente: Tengo una hoja de excel que contiene un cierto número de comlumnas, por lo general entre 20 y 30 y un número de filas que van deacuerdo a la cantidad de personas que estan o pueden estar en esa hoja. Lo que siempre requiero son 4 columnas, que es el Número del empleado, Nombre, centro de costo (Cecos), horas Extras, Descanso trabajado y Descanso ganado y por lo tanto hay veces que esa hoja de exel puede en ocaciones contener menos o mas columnas, sin embargo simpre requiero de las columnas que antes menciono junto con la información que contiene cada fila o celda, no se …

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 1.6k visitas
    • 1 seguidor
  2. Started by MVelazquez,

    Saludos! He leído de consultas similares, pero en este caso las columnas a seleccionar tienen intervalos de cada 3 columnas (Seleccionar columna 1, 4, 7, 10... etc) en hojas de hasta 500 columnas con información. Posterior pegar estas columnas en otra hoja quedando contiguas. ¿Tendría que seleccionar cada nombre de columna? Range ("A:A", "D:D", "G:G"... Etc ). Adjunto archivo ejemplo. Mil gracias. Elasticidad de Precios Feb 2021.xlsx

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.3k visitas
  3. Started by MMGR,

    Quiero crear una macro que entregue el consultor que debe ejecutar el proyecto tomando en cuenta la carga de trabajo y los conocimientos de cada consultor. Estoy adjuntando un excel para que se entienda mejor: - En la pestaña "Proyectos" se puede ver los proyectos en los que está trabajando o debe trabajar cada consultor. - En la pestaña "Consultores" se puede ver a qué hora se va a desocupar cada consultor (la información la jala de la pestaña "Proyectos") y el nivel de cada consultor (sirve para limitar el tipo de proyectos en los que puede participar). - Por último en la pestaña "Determinar consultor" uno debe seleccionar los trabajos del nuevo proyecto y en base a…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 458 visitas
  4. Hola que tal? Os cuento, Tengo una duda haber si me podeis echar un cable, en el formulario que os envio, tengo 2 columnas, una con clientes y otra con artículos. (Hoja 1) Al activar la macro se cargará un formulario donde se podrá añadir un nuevo Cliente (Se añadirá un artículo en la columna A autonumerico) y 2 combobox donde se podrán cargar los datos de las 2 columnas. Ahora aquí viene la cuestión, mi idea es copiar en la hoja 2 los clientes en función del valor de la combobox 1 Dejo ejemplos en la hoja 2 del archivo. Al pulsar "guardarcliente" se añadirá el nombre seleccionado en la combobox 2 en la misma fila de la combobox 1 La hoja 3 por si alguien lo mira h…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 655 visitas
  5. Buenas Tengo una excel a la que le inserto datos a través de un formulario, y los datos pueden modificarse a través de otro formulario. El problema es que uno de los campos es un listBox multiselección que al insertarlos datos los coloca en una celda separados por ",". Pero al recuperar los datos no consigo que el listbox queden esos datos seleccionados al cargarse. ¿Podeis ayudarme? Sub modificardat() On Error GoTo ErrorHandler 'recuperamos el indice de control de la solicitud indice = SelecionarDatoForm.ListBox1.Value Unload SelecionarDatoForm 'borramos los datos de la hoja 3 Worksheets("Hoja2").Range("A1:P" & Ult).Delete …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.8k visitas
  6. Started by marcolios,

    Tengo un archivo que me genera distintos graficos en una misma hoja con los datos de otra hoja, el problema es que me presenta los datos de dos columna, como fija la B y la segunda columna es variable, pero necesito que me presente los datos de dos columna variables, ejemplo: Primer boton para el grafico seleccione los datos de la columna B y C, Segundo boton para el grafico seleccione los datos de las columna D y E, Tercera boton para el grafico seleccione los datos de la columna F y G, y asi sucecivamente. Al generar me deja la columna B como fija y no es lo que necesito, por otra parte, que pasaria si inserto una o dos columnas entre los datos, se dañaria la macro? In…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.4k visitas
  7. Started by Santiago Di Landro,

    Buenos días a todos. No tengo experiencia usando macros pero me doy cuenta que son fundamentales cuándo trabajamos por ejemplo con grandes datos. Tengo una planilla como la del ejemplo adjunto donde para distintas fechas se analizan distintas características de cada pescado (chico), por ejemplo estadio de desarrollo. Mi objetivo es poder generar una nueva tabla como muestro en el ejemplo que me permita en definitiva gráficar en el tiempo para cada chip (pescado) los cambios en una característica, en este caso estadio. Agradezco mucho toda la ayuda que puedan darme. BAE Lote 1 Ejemplo.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 667 visitas
  8. Started by alesilva,

    Hola a todos, Solicito a quienes me puedan ayudar con este tema, realizar lo siguiente: Necesito mostrar y separar por fecha datos de clientes, o mas bien, al colocar una fecha determinada, que me busque en la base de datos (hoja Datos) y me los separe según cliente, como lo muestro en la hoja "compromisos por fecha" NOTA: La hoja "Compromisos por fecha" es como una referencia a lo que busco, si hay otra forma de realizarlo me los envían. El tema lo había propuesto para realizarlo con funciones excel pero creo que con una macro puede funcionar mejor. Le agradezco desde ya la ayuda y el tiempo que invierten en esto. Saludos desde Santiago, Chi…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.3k visitas
    • 1 seguidor
  9. Started by Sago,

    Espero me puedan ayudar por favor, en una macro que rellena campos de una pagina de Internet, estoy usando este código, pero no me funciona, ya intente de varias maneras y aun no puedo. objIE.document.getElementById("reason").Value = "REDS" <select name="reason" class="__web-inspector-hide-shortcut__"> <option value="" selected=""></option> <option value="BENEFIT">Benefit Payments</option> <option value="CLIENT">Client Contribution</option> <option value="DIVIDEND">Dividends</option> <option value="DVDREINV">Dividend Rei…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 619 visitas
  10. Estoy empezando a grabar macros con la grabadora y la vedad que no tengo ni idea de visual basic. Lo que quiero es leleccionar un clasificacion que esta desordenada, que empieza en E8 (donde esta el titulo y es fija) y debe de seleccionar hasta la ultima celda de la columna O (esta varia) y luego la ordena segun criterios. Os pongo la esta macro y lo que pasa es si añado una fila mas no la selecciona. Muchas gracias a todos por vuestra informacion y la ayuda que ofreceis. Sub Ordenar() ' ' Ordenar Macro ' ' Range("E8").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select ActiveWorkbook.Workshee…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.2k visitas
  11. Buenas Noches Soy nuevo en esto de las macros y quisiera solicitar su apoyo con el archivo que adjunto en donde de la hoja llamada Siniestros requiero seleccionar el monto de siniestro mayor de la columna "Monto Siniestro M.N. "pero en esta búsqueda del monto mayor no debo tomar las claves de riesgo 105,106,107,113 y 114 que aparecen en la columna de "Riesgo" y al final debo en una celda colocar la siguiente leyenda "aumentar costo en el riesgo ____________" ahi debo colocar el nombre de la seccion que aparece en la columna de Seccion de acuerdo al riesgo que resulte con el mayor monto, todo esto sera posible hacerlo por que e investigado pero no he logrado que haga…

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 868 visitas
    • 2 seguidores
  12. Started by erpunta,

    Buenas tardes Me gustaría saber como indicar mediante el uso de "userform" cual es la fila en concreto en la que deseo introducir un dato Adjunto ejemplo. Es decir donde dice (userform) dia: se refiere a la fila. y donde pone horas: se refiere a la hora de inicio y hora final donde debe introducir en mi caso el valor "x" en cada celda indicada. Gracias Libro1.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 596 visitas
  13. Started by GabrielRaigosa,

    Hola, Para seleccionar la hoja de un libro (libro activo) usando VBA uso la siguiente instrucción Workbook("Cierres").Sheets("IngresoProductos").Select 'Seleccionar Libro/hoja La hoja tiene un nombre interno "Hoja_IngresoProductos" El nombre de la etiqueta es "IngresoProductos" La pregunta es ¿Como se puede hacer para que la selección de la hoja se haga con el nombre interno? Algunas veces cambiamos el nombre de la pestaña y hay que revisar el codigo para las correcciones, es menos probale cambiar el nombre interno, y hacer la seleccion usando el nombre interno evitaria tener que revisar el codigo cuando se cambie el nombr…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3k visitas
    • 1 seguidor
  14. Hola Tengo una macro que selecciona unas ciertas hojas de todo el libro y me las convierte en un pdf, siempre hasta ahora han sido las mismas. Mi intención es que una de las hojas de la selección sea variable, es decir, que en función del dato (dígase año) ubicado en una celda de la hoja de referencia (Hoja Portada Celda C1), seleccione la hoja de ese año, es decir, que si en C1 dice 2018, la hoja a seleccionar e incorporar en el pdf sea la 2018 y si dice 2017 incorpore la 2017 y etc.. Esta es un trozo de la rutina que tengo y el problema lo tengo en cómo le dijo que me seleccione e incorpore la hoja con el mismo valor de la hoja Portada Celda C1 (zona en negrit…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.4k visitas
  15. Buenos días: Trabajo con dos libros uno Caja Jesús 2016 y otro Cuentas por cobrar, bueno en mi libro caja en la hoja BOLETOS en la celda F1 ingreso el nombre de una de las hojas de mi otro libro Cuentas por cobrar, para este ejemplo solo puse algunas hojas, pero la verdad tengo como 200 hojas que las utilizo. Mi consulta es de como ir a la hoja del libro Cuentas por cobrar según el valor de la celda F1 de mi libro Caja Jesús 2016. Muchas gracias por su atención, saludos cordiales Jesús Caja Jesus 2016.xlsx Cuentas por cobrar.xlsx

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 6.1k visitas
  16. Buen día. Estoy trabajando en un archivo Excel, en donde tengo un registro con ciertas celdas bloqueadas agrupadas y otras no. Me resulto el código de agrupar y desagrupar cuando mi hoja esta bloqueada lo cual es: With Worksheets("Hoja1") .EnableOutlining = True .Protect Password:="contraseña", _ Contents:=True, UserInterfaceOnly:=True End With[/CODE] Ahora quiero bloquear 2 hojas más (Hoja1,Hoja2,Hoja3) de mi libro Excel con el mismo formato mostrado en el código. A la espera de vuestro gran apoyo.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 574 visitas
  17. Started by LUISETE,

    Hola de nuevo a todos los miembros del foro, en días pasados subí un archivo excel para resolver un problema relacionado con la gestión de imágenes en un pequeño programa de inventario. Macro Antonio solucionó mi problema asignando a cada imagen un nombre que consistía en la unión de la palabra "FOTO" con el número de la fila de la celda activa. El caso es que tengo que cambiar el nombre estas fotos, porque al cambiar el orden de las filas y eliminar una de ellas, no se borra la imagen de esa fila, sino la imagen de la fila de procedencia. Quiero entonces crear una macro que pase por cada una de las celdas con foto de mi inventario (todas en la columna seleccione la fo…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 7.1k visitas
  18. Started by elunico22,

    Buenas estimados: Esta vez vengo para que me ayuden con algo que no encontre información. resulta que tengo un formulario con un combobox que carga los años, desde el 2013 hasta 2020, lo que quiero es que al momento que el formulario cargue, automaticamente se seleccione el año en curso. en este caso seria 2013. Esto seria para no estar seleccionando a cada momento 2013. Espero haberme explicado bien. Les agradezco. Saludos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.3k visitas
  19. Hola a todos, Me gustaria hacer una macro VBA que se pueda realizar o aplicar cuando seleccionamos una celda y que esta consista en que se marquen o seleccionen las columnas desde la primera hasta la columna en la cual se encuentra la celda seleccionada. [/img] http://es.tinypic.com/view.php?pic=mikjdk&s=8 http://es.tinypic.com/view.php?pic=2qjgbcz&s=8 http://es.tinypic.com/view.php?pic=2qjgbcz&s=8 Columns(valor) dentro de Range genera un valor 1 aunque valor tenga el valor de la columna de la celda activa. No se porque. Alguien puede ayudarme con este problema. Muchas gracias!!

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  20. cordial saludo solicito su colaboración con lo siguiente tengo una lista de usuarios y un listado de registros que debo asignar a los usuarios. mi necesidad es: que yo escoja la cantidad de usuarios y la macro distribuya los registros que hay en los usuarios seleccionados. ejemplo: escojo 3 usuarios de los 5 que hay en lista. la macro debe distribuir los 100 registros en los usuarios seleccionados. Agradezco su colaboración con esta macro y mil gracias

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 796 visitas
  21. Estimados. Ha sido muy fructifero haber encontrado este foro, por lo que vuelvo a las consultas. Resulta que estoy programando una macro que consiste hacer un filtro de una cantidad grande de datos, seleccionar solo algunos, copiar y pegarlos en otra hoja. Ahora bien, he logrado el codigo para filtrar un arreglo de datos a partir de una tabla que tiene los nombres o id a buscar: nf = numerofilas 'obtener arreglo de nombres de cellid CELLID_Array = Range("C2:C" & (nf - 1)) 'selecciona planilla de CNA Windows("Libro_Muchosdatos.xlsx").Activate 'selecciona de CNA los cellid a modificar de planilla CNA ActiveSheet.ListObjects(…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.6k visitas
  22. Started by pneox,

    Tengo un libro excel (archivo destino) con una vinculación a otro libro. El archivo origen se actualiza cada 3 días y cambia de nombre, si bien se guarda en la misma carpeta que la versión anterior. Me gustaría poner un botón en el libro de destino, para que me salga la ventana de cambio de origen, y que yo sea yo el que pueda seleccionar el archivo que quiero. Es decir, sería como ir a "datos/editar vínculos/cambiar origen", y que se quede abierto el seleccionador de archivos de windows (si puede ser, en la ruta que siempre tengo los archivos actualizados). Gracias.

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 4.3k visitas
  23. Started by Ana torres,

    Buenas tardes, quisiera hacer una macro que con un checkbox seleccione varias imagenes y esta me las pegue en otra hoja de excel en un lugar determinado, mi duda es que como ese paso esos datos seleccionados del checkbox a la otra hoja de excel

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1k visitas
  24. Started by Mauricio Poveda,

    Hola a todos: Quiero dar las gracias a este foro porque pude resolver muchas de mis dudas con respecto a macros. Mi duda es la siguiente y no la he encontrado o no la he entendido de forma correcta: Tengo una macro "sonar" que me reproduce un sonido cuando una celda "C5" tiene la palabra "Error", y funciona correctamente con el siguiente codigo. "Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) With Target If Range("C5") = "Error" Then sonar End With End Sub" Pero necesito hacerlo no solo en la celda "C5" sino en un rango de celdas por ejemplo de "C5:H5". Gracias por la ayuda

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 631 visitas
  25. Started by akukso,

    Muy buenos dias estoy intentanto realizar un excel que me permita copiar aquel rango de celdas seleccionado con el mouse. No establecidas previamente como ej: A1:K5, Sino seleccionar el rango que yo deseo. En el archivo adjunto quiero marcar con el mouse las alertas verdes y luego con la macro copiarlas y enviarlas por correo. Alertas de Servicio2013.rar

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 873 visitas

Información básica de protección de datos

  • Responsable: Sergio Andrés Celemín
  • Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.
  • Legitimación: Consentimiento del interesado.
  • Destinatarios : Hetzner Online GmbH.
  • Duración: Mientras se conserve este post o hilo en la comunidad, o decidas eliminar el comentario.
  • Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del email [email protected]

Información adicional: Encontrarás más información en la política de privacidad.