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. Macro que automáticamente rellene celdas de 2 en 2 cuando se escriba algún texto y macro para que cuando se borre el contenido de celdas automáticamente se borre un rango determinado Gracias

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.2k visitas
  2. Buenos dias Llevo toda la mañana buscando por el foro a ver si hay algo parecido a lo que busco, ero no encuentro nada. A ver si alguien puede ayudarme. Lo que busco, es una macro que al darle, me deje elegir un pdf de mi pc y me lo ajunte como icono en una celda en esa misma fila... con la posibilidad de modificar esa misma macro para varias filas mas. Vamos que pueda tener varios pdf´s colocados igual, cada uno en su fila. Gracias de antemano Saludos

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.9k visitas
  3. Started by 96andres96,

    Buenas. Tengo en un excel una hoja estilo menú en la que quiero colocar una lista que me lleve a diferentes hojas. El problema es que hay hojas que aún no están creadas y no sé cómo hacerlo. Me explico: En dicho excel se introducen gastos de empresas y beneficios de diferentes ventas. Pues bien, yo tengo dos hojas fijas: Empresa1 y Empresa2 y dos ventas fijas Venta1 y Venta2, y en el menú tengo un macro que me genera o bien una nueva empresa que se sitúa en medio de las fijas, o bien una nueva venta que se sitúa en medio de las fijas. De forma visual, las hojas de mi excel quedan así:Menú principal, Empresas, NuevaEmpresa, Empresa1, [Aquí se generan nuevas empresas],…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 2k visitas
    • 2 seguidores
  4. Started by Ferjam,

    Buenos días, por necesidades quiero automatizar un proceso de alta en una aplicacion en java, los datos me los dan en EXCEL, y desearia que con una macro este realize el porceso de alta en la otra aplicación, pero mi primer STOP ha sido el activar la otro ventana (donde se encuentra la aplicacion de destino), he porbado con sendkey .. alt+tab (Application.SendKeys ("%{tab}") y no funciona, he leido cosas sobre APIs y shell pero no me aclaro, o comandos como HWND, FindWindow( ), GetDC( ) pero no encuentro ejemplos.... gracias de antemano

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 681 visitas
  5. Buenas noches a todos. Otra vez en busca de ayuda acudo a este gran foro. Bueno, no consigo colorear de forma alternada rangos de celdas. Es decir que las celdas que tengan el mismo valor se rellenen con un color y cuando el valor de la celda cambie que se rellene con otro color y así de forma alternada con 2 colores tal como está en el archivo de muestra adjunto. Desde ya agradezco cualquier solución u orientación que me pudiesen proporcionar. Saludos desde Bolivia. Colorear condicionado.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
    • 1 seguidor
  6. Hola, He encontrado una macro que hace parpadear la celda "C3". Lo que no logro de hacer es: En cuanto la celda "C3" es negativa el color de la fuente se ponga en blanco o negro. En el documento hay una explicacion detallada de lo que quiero. Se que tengo que poner algo asi: .Font.Color = vbWhite, lo he puesto en varois sitios y me da error. Adjunto el documento. Muchas gracias. Saludos, PARPADEO CELDA - color TEXTO.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.5k visitas
    • 1 seguidor
  7. Buenas tardes, me gustaría que pudierais ayudarme, con una macro, me explico: Tengo muy poca experiencia con las macros e hice una que todos los días me crea una hoja nueva y le pone la fecha actual, pero mi problema empieza cuando intento pegar en la celda M14 de el día de hoy la celda M14 del día anterior. Lo que hice es lo siguiente: Sub copiardatos() ' ' dim fechaactual as date Dim fechaanterior As Date fechaactual = "dd-mm-yy" fechaanterior = Format(Date - 1, "dd-mmm-yy") fechaactual = Worksheet fechaanterior = Worksheet activeworksheet = ("fecha anterior") Range("M14").Select Selection.Copy …

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 3.5k visitas
  8. Started by joselica,

    Hola, Estoy intentando de adaptar una macro que tengo de otro proyecto y me da error "run-time 424 se requiere un objeto". He buscado información sobre el error en causa pero no me aclaro. Lo que pretendo, en la hoja "LISTADO" atraves de un TEXTBOX en cuanto voy escribiendo un nombre completo o parte de un nombre se me muestra solo la/las fila/s que se aproximan o contienen el nombre completo de la lista de base de datos que tengo en los rangos "B7:H10000". Tal como lo tengo ahora escribo en la celda "C4" el nombre completo y me marca en amarillo la parte de la fila que contiene dicho nombre. Si la lista es demasiado larga costara mucho en localizar la…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.8k visitas
    • 1 seguidor
  9. Buen día expertos, por favor tengo dos libros una de ella llamado KOREA y la otra BASE, dentro del libro korea tengo dos hojas una de ella llamado data y otra también korea, lo que necesito hacer es desde el libro korea y la hoja korea al pulsar el botón actualizar me actualice a la hoja data del mismo libro y también a la hoja2 de libro base. Dentro del libro korea la hoja data esta oculto la cual me sirve para mostrar los datos a la hoja korea a través de una validación de datos, muchas gracias por sus aportes a cada una de ustedes. Archivos.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 895 visitas
  10. Started by joselica,

    Hola, He buscado soluciones y he seguido las recomendaciones del post abajo indicado para evitar que la macro se vuelva lenta y no logre nada Se trata de la hoja "LISTADO" que me tiene que devolver el listado del día cuya fecha lo pongo en la celda "K7". Pues tarda mas de lo esperado. Adjunto el documento. Gracias, Saludos. CONTROL DESAYUNOS - macro lenta.xlsm

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.8k visitas
    • 1 seguidor
  11. Started by CarlosKurt,

    Hola a tod@s. Hay la posibilidad de ocultar la sección de Macros Personal, es decir que muestre todas menos la del Personal. Saludos.

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 5.3k visitas
  12. Started by Dani2020,

    Tengo este archivo con un calentaría el cual uso para control de trimestre cuando pongo en la celda G2 Trimestre i aparece solo los meses Ene, Feb, Mar; Trimestre II aparece solo Abril, May, Jun; Trimestre III aparece solo Jul, Agos, Set; Trimestre IV aparece solo Oct, Nov, Dic, lo que ocupo no me aparezcan en trimestre si no solo un mes ejemplo, se pongo el la celda G2 enero aparezca todo enero adjunto archivo ROL DE TRABAJO DEL PERSONAL POR JORNADA.xlsm

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 2.2k visitas
  13. Hola de nuevo a todos. En esta ocasión os solicito ayuda con este tema relacionado con identificar el color de una celda con base a su formato condicional. He estado leyendo en este foro y en muchos otros, pero no he dado con el "tic" de la cuestión. Por lo visto, el formato condicional no aplica el color a las celdas de forma normal. Por lo que la propiedad color en sus distintas variedades no se puede usar para este fin. En el archivo adjunto hay un pequeño ejemplo que identifica las celdas según su color y extrae su contenido de forma segmentada. He probado con distintos códigos que he encontrado en la red, pero ninguno me ha servido para …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 5.4k visitas
  14. Started by erestom,

    Buenas noches, quisiera que me puedan ayudar tengo que hacer un excel en donde una celda tenga múltiples opciones seleccionables y que al elegirlas se muestren concatenadas en la misma celda, aca dejo un ejemplo Multiseleccion EXPEDIENTES.xls Desde ya les agradezco

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 958 visitas
  15. 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
  16. Buenas tardes, No sé si me podríais ayudar con este tema. Necesito que según contenido en una hoja Excel de la celda H2 y M2 cambie el contenido por el numero que corresponda siguiendo la tabla que se encuentra en la hoja2 llamada Origen. He logrado algo pero no lo que necesito. Mando ejemplo en Excel intentando Explicaros mejor. Es un excel montado para el ejemplo ya que el excel original es corporativo y no lo puedo subir. Un saludo. Ejemplo.xlsx

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 843 visitas
  17. Hola a todos, Por favor si alguien me puede ayudar con lo siguiente: Tengo una macro la cual me pasaron pero al parecer está desactualizada, dicha macro debería consultar masivamente datos de la siguiente pagina - https://www2.sbs.gob.pe/afiliados/paginas/consulta.aspx para ello solo se debe de ingresar el DNI de las persona a consultar a partir de la celda A2 y automáticamente debe traer los datos de las personas consultadas. Muchas gracias Consulta 2.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.4k visitas
  18. Buenas tardes. He logrado adaptar un filtro horizontal de columnas a mis necesidades a traves de una tabla dinamica. Con los campos texto no hay problema. El problema viene cuando lo que queremos filtrar son fechas. Por lo que veo .PivotItems adopta la fecha en formato ingles. en las columnas ha filtrar lo he solucionado conviertiendolas a texto: dim str as string:str = c.value: set pi= Set pi = .PivotItems(str) el problema es con el origen de la tabladinamica donde para que funcione tengo que añadir un ' a cada fecha y de esta manera convertirlas en texto He probado de todo.............incluso cambiar la tabla dias a un formato de fechas no …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 909 visitas
  19. Started by Moratti,

    Buenos días, imaginemos formulario con 10 textbox, decirle que los valide todos para que no estén vacíos, y que envíe un mensaje, se hacerlo. Pero quiero que los valide todos, menos 1 que se llama txtapellido. Ese puede estar vacío. Ya se que podía poner de uno en uno todos los restantes, pero sería algo para decirle.. Si alguno de estos textbox, está vacío, con excepción de txtapellido, lanza el mensaje. Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 663 visitas
  20. Started by MauriciodeAbreu,

    Buenos dias amigos. Recurro a ustedes con el siguiente problema. Tengo este buscador, el cual funciona perfectamente. Pero, cuando intento buscar en la primera columna de la tabla me da error. Alguien por favor me podria indicar que estoy haciendo mal. Agradecido de antemano por vuestra ayuda. Ejemplo busqueda.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 791 visitas
    • 1 seguidor
  21. Started by Leonardo Briceño,

    Hola buenos días amigos de AE. Una consulta. tengo una macro que sirve para buscar hojas en un archivo. El código permite poner parte del nombre de la hoja y hace la búsqueda, pero me gustaría que NO respetara mayúscula o minúsculas. Por ejemplo en el archivo hay una ROJO, si coloco el nombre tal cual la encuentra pero si coloco rojo o Rojo no la encuentra. Se podrá lograr lo planteado? Gracias!!! BUSCAR NOMBRE DE HOJA.xlsm

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 6.9k visitas
  22. Hola Amigos de AE como están. Tengo un inconveniente con una macro. La función de la macro es borrar las celdas que solo contienen datos manteniendo la formulas intactas, solicitando a través de un msgbox escoger el nombre de la columna A que desea borrar. La hoja está protegida (CLAVE ES: 123). El inconveniente se presenta que al llamar la macro con el botón, y suponiendo que la celda activa está en una columna gris de formula, se desprotege la hoja permitiendo ver las formulas. Claro, luego se selecciona la celda de la columna A -aunque también se ejecuta en cualquier columna de la fila que deseo borrar- y sigue el curso de la macro que es borrar la informació…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  23. Started by GabrielRaigosa,

    Hola, De que forma puedo eliminar las filas de las celdas que tienen un texto? Me explico, estoy usando este codigo SuB test() [H:H].Selection.SpecialCells(xlCellTypeConstants, xlTextValues).Select Selection.EntireRow.Delete End Sub Y me da error, he buscado y me parece que no se puede usar así, creo entender que no se pueden combinar estas dos cosas (xlCellTypeConstants, xlTextValues) La pregunta es. Como puedo seleccionar/eliminar las filas que tienen constantes texto. Gabriel.

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.9k visitas
    • 1 seguidor
  24. Started by jeaa,

    El siguiente código que los estoy presentando funciona bien perfecto en Excel suma y saca el total y todo eso, pero esa misma cantidad lo sumo en la calculadora o manualmente me sale otra cantidad, por ejemplo cuando en la hoja rubrica pulso el botón generar me genera dos rubricas por que solo tengo dos alumnos registrado, bueno la rubrica3 la cantidad de sumatoria en el hoja esta bien pero cuando lo sumo en la calculadora sale otra cantidad y así comparo con las demás hojas , espero que me han entendido, de antemano muchas gracias expertos, adjunto el archivo. Sub correspondencia() Dim NumCriterios As Variant Dim nCantDatos As Double Dim nDatos As …

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 1.8k visitas
  25. Started by javierfincias,

    Tengo la siguiente macro, y cuando quiero copiar los datos, no sé las filas que habrá.. he estimado 55 filas, pero si son menos, me inserta datos vacíos.. he incluido que me diga el número de filas, para conocer el número exacto. Como puedo poner el rango sin conocer la última fila, y que inserte las filas que tengan datos. Sub BorrarDatos() 'primero borro los datos de la hoja Sheets("macro").Range("A2:B55").ClearContents Sheets("macro").Range("D4:F55").ClearContents Sheets("macro").Range("I4:L55").ClearContents 'copio datos de la hoja datos, es la hoja que he tenido que sale del programa milena, tengo que copiar Sheets("datos").Range("A2:B55"…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.1k visitas
    • 2 seguidores

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.