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 Quisiera pedir de su apoyo para lo siguiente, he hecho el siguiente archivo a través de varias consultas y poco a poco lo he ido creando y pues ya casi lo tengo listo, pero, por más que intento solucionar lo siguiente no mas no me da. 1.-Al Abrir Excel aparece un formulario y ese tiene la finalidad de decirme el nombre de la persona, así como los días que faltan para la fecha de su vencimiento de contrato, sin embargo, por alguna razón que no logro entender, me toma todos y lo que necesito es de que si es el mes de Octubre me digan cuales vencen solamente en ese mes, cuando llegue Noviembre, me diga cuales son nada más los de noviem…

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 3k visitas
    • 1 seguidor
  2. Started by CarlosKurt,

    Hola a tod@s. El siguiente código me permite trabajar con Excel 2007 y Access 2007 extrayendo información mediante una consulta SQL. Sub ImportarDesdeAccess() Dim conexion As Object Dim consulta As String Dim cadenaConexion As String Dim cadenaConexionSHM As String Dim contador As Integer Set conexion = CreateObject("ADODB.connection") Sheets.Add.Name = "MULTIEM" Range("A1").Select 'Set cnna = CurrentProject.Connection cadenaConexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\Srvmultiem\mgalpon\BODEGA-DSK\A2020\INGRESOS2020.mdb" consulta = "SELECT a.FOLIO, a.[ESTADO DATOS],e.[CODIGO REL], MAX(b.ITEM) AS [NRO DE ITEM], SUM(b.CANTIDAD) AS C…

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 4.2k visitas
  3. Saludos amigos, necesito ayuda para sumar rangos variables en la celda superior de esa rango, de modo que sume hasta la última celda vacía. Les agradezco mucho la ayuda. Esto me gustaría hacerlo en VBA, como un código que me permita invocar esa fórmula como una función que pueda usar cada vez que la necesito. Mil gracias.

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.7k visitas
    • 1 seguidor
  4. Hola grupo Quiero felicitar a todos son de gran ayuda. Tengo un archivo con macros y varias hojas de cálculo. Necesito que cuando abro la hoja 1 ejecute el macro 1 y cuando abro la hoja 2 ejecute el macro 2. Esto es posible? Saludos

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.2k visitas
  5. Buenas noches, Adjunto mi archivo a fin de encontrar una solucion. Cada check ejecuta un userform en la cual con los botones podemos cambiar de color de verde a rojo en el ejemplo solo estoy considerando 5 check. LO que busco es insertar un solo userform para todas las check y que estas se ejecute de manera individual para no seguir insertando tantas userform como numeros pudan haber. Agradezco su ayuda Esperando una respuesta. Saludos...... Un solo userform para todos.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 547 visitas
  6. Buenas tardes todos los miembros de éste fantástico foro. Estoy intentando hacer una macro pero me surge una duda, os agradecería mucho vuestra ayuda. La duda es; Tras hacer un filtro en dos columnas ¿cómo puedo copiar el rango de celdas que queda visible (con el encabezado) y pegarlo en otra hoja? Adjunto archivo, la idea sería copiar el rango ya filtrado de la "Hoja 1" a la "Hoja 2". Muchas gracias por vuestra valiosa ayuda. Un saludo Copiar celdas visibles.xlsm

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 13.2k visitas
    • 1 seguidor
  7. Started by comprodeco,

    Buenas tardes, intento realizar una busqueda inteligente de unos datos en un formulario, el rellenado inicial de la lista la hace correctamente y al pinchar sobre cualquier nombre, rellena los campos asignados. El problema viene despues de filtrar, al pinchar sobre el nombre buscado, falla. ¿podrian ayudarme? gracias formulario empleados (v1).xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.1k visitas
    • 1 seguidor
  8. Hola gente, tengo una consulta sobre un libro que estoy creando. Tengo un indice con todas las hojas del libro, y lo que busco es que al presionar el link con el nombre de la hoja solo muestre la hoja de destino por unos segundos. También podría ser la posibilidad de poner un botón en cada hoja para que vuelva al menú principal y este se ejecute automáticamente cada "x" segundos. En el archivo que adjunto puse el indice en cada hoja, pero ahora el indice que necesito es mucho mas grande y no entra para poner en cada hoja, y que se vea completo en un monitor de 28", por eso quiero poner el indice en una sola pagina, y luego de accionar algún botón regrese a es…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 863 visitas
    • 1 seguidor
  9. 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
    • 999 visitas
  10. Started by Regrasa,

    Estimados adjunto un archivo el cual tiene un listbox y un textbox de busqueda donde localizo el numero de un equipo pero quisiera para no ponerle otro textbox que solo me cargue en el listbox las ordenes de trabajos que se encuentran con la palabra abierto cualquier ayuda que me puedan ofrecerme les estare agradecido. Para cargar el listbox presionar el boton 1 que aparece en la hoja 1 Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.9k visitas
    • 1 seguidor
  11. Hola a todos Tengo tres libros protegidos y cifrados. Los tres libros tienen la misma contraseña. Mi pregunta se refiere, a que cuando se carga el imputbox de petición de contraseña al abrir el primer libro, sería posible, copiar esa contraseña introducida de alguna menera haciendo que se abra el segundo libro y se pegue en el imputbox correspondiente, haciendo lo mismo con el tercer libro. He mirado y en vba no queda constancia de ese imputbox de apertura que usa el excel 365 al proteger con contraseña y cifrar el fichero. Un saludo y muchas gracias

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1k visitas
  12. Started by sdelpin,

    buenas noches, soy sonia y tengo una gran duda necesito vuestra ayuda. estoy haciendo una calculadora de primas, y he hecho una macro para que vacie las celdas y a su vez devuelva el valor 0 a las celdas borradas. hasta ahi bien, pero cuando pongo un nº en dos celdas determinadas (C20 y C21) la formula que esta en la celda N4 no calcula, para que haga el calculo tengo que poner yo misma en las celdas C20 y/o C21 un 0. no se si me he explicado bien..... adjunto fichero. Gracias! calcu_precartera.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
    • 1 seguidor
  13. Buenas amigos, les traigo otra duda que me está volviendo loco para ver si alguien me puede ayudar. Estoy intentando copiar todas las hojas de un libro a otro libro que ya tengo con varias formulas. Estoy utilizando este código Sub Macro5() ThisWorkbook.Sheets.Copy Before:=Workbooks(“Listado_de_Fondos”).Sheets(1) End Sub pero no consigo que me copie las hojas, me tira un error. El tema es que las hojas que necesito copiar, cada día cambian de nombre y de numero, y necesito seleccionar todas para poder copiarlas de golpe al libro existente y no encuentro la forma de hacerlo. Si selecciono este código: Sub Macro5() ThisWorkbook.Sheets.Cop…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  14. Started by jhon fredy,

    hola expertos mi idea es , si existe algun codigo que elimine los numeros primos en un rango en mi caso "a1:sx42" les agradezco mucho

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.8k visitas
  15. Started by elkely,

    Buenas!! Muchas gracias por la ayuda que siempre daís. Adjunto archivo para explicar mi busqueda de una solucion. Mediante un userform introduzco y borro nombres a dos tablas. Después las fechas la introduzco manualmante. Cuando introduzco el nombre, todo va bien. Ya que lo introduce en la tabla y por un código puesto en la hoja me lo ordena automáticamente. De esta forma me sale ordenado en el userform. El problema es cuando elimino el nombre, me elimina solo el nombre y me lo ordena de nuevo automaticamente, que está bien. Pero, me deja al final de la columna las fechas y por ende cuando introduzco un nuevo nombre le asigna esa fecha. Lo que deseo co…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
    • 1 seguidor
  16. Started by ARIELOK,

    GRUPO AYUDA EXCEL DIOS LOS BENDIGA Y TENGAN USTEDES UN EXCENTE DIA TENGO EL SIGUIENTE CODIGO Y EN RANGO DONDE DESEO COPIAR ES HASTA LA COLUMNA N =CopyToRange:=Range("A5:J2000") CAMBIO EL RANGO A "A5:N2000" Y ME SALE ERROR QUE NO ME PERMITE EJECUTAR LA MACRO SI ALGUIEN PODRIA AYUDAR A MEJORAR EL CODIGO O TALVEZ ESTOY OMITIENDO ALGO DE ANTE MANO GRACIAS Sub CONSULTA_DOC() ' ' CONSULTA_DOC Macro ' ' Acceso directo: Ctrl+Mayús+F ' Sheets("DIARIO").Range("A5:N10000").AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Range("Z5:AA6"), CopyToRange:=Range("A5:J2000"), _ Unique:=False Range("A6").Selec…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 662 visitas
  17. Buenas tardes amigos, espero que estén todos bien Después de revisar el foro a fondo no encontré nada parecido a ver si me pueden ayudar con esta problematica que tengo. Tengo un listado de fondos y quiero mediante una macro crear una hoja por cada fondo distinto que tenga en el listado. He visto propuestas por internet como esta: [CODIGO]Sub CreateSheets() Dim rng As Range Dim cell As Range On Error GoTo Errorhandling Set rng = Application.InputBox(Prompt:="Select cell range:", _ Title:="Create sheets", _ Default:=Selection.Address, Type:=8) For Each cell In rng If cell <> "" Then …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.8k visitas
  18. Started by petercien1,

    Hola a todos Espero estén todos bien, junto a sus seres amados Les escribo solicitando vuestra ayuda, adjunto un libro con una pagina en internet, desde donde necesito extraer información. La pagina es la siguiente: Busqueda Desde ahí necesito sacar la información como se menciona en el adjunto, hay ocasiones en que devuelve mas de un resultado al generar la búsqueda. El dato a buscar es el nombre, en columna a. Un abrazo fraterno a la distancia Pedro Prueba datos.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 888 visitas
  19. Buenas por favor necesito de su ayuda. Tengo una hoaj en la cual estan mis datos, quiero crear con macros nuevas hojas que contengan las quince primeras filas en una hoja nueva, y las siguientes quince en otra hoja, y asi sucesivamente hasta terminar con el listado, aun asi la ultima hoja creada no tenga los las quince filas. Se podria hacer tambien para una cantidad variable de filas es decir 20 o 30 Gracias por su apoyo Medicos.xlsm

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 861 visitas
  20. Buen día amigos, Estoy intentando insertar un N° determinado de filas según las cantidades del ítem.Ejemplo.xlsx Es como pasar de una tabla dinámica a la base original. Lo importante es que tiene que haber 1 ítem por cada fila. Por ejemplo, en la fila 4, tengo 5 unidades del producto que se menciona y lo que yo debo hacer, es desglosar esas 5 unidades para que queden 5 filas con 1 unidad de ese ítem. En el archivo se puede apreciar el desglose que necesito. Favor de su ayuda. Saludos

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.3k visitas
    • 1 seguidor
  21. Started by alvaroballes,

    Muy buenas a todos y gracias de antemano por su tiempo. Tengo un cometido semanal que, creo, que me ocupa más tiempo del que debería pero no sé cómo automatizarlo. Tengo una serie de filas cuya primera celda puede estar coloreada o no. Aquellas que estén coloreadas tengo que arrastrar toda la fila 7 veces cambiando, únicamente, la fecha de la columna D al día siguiente al establecido (si pone 01/01/20 tendría que poner 02/01/2020, 03/01/2020 y así siete veces. Para ello me gustaría crear un botón que contenga una macro que lo haga de forma automática SÓLO para aquellas que estén en color naranja. Reitero mi agradecimiento y adjunto un fichero de ejempl…

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 2.7k visitas
  22. Hola, Tabla con dos columnas, en la columna A está el valor que deseo buscar y que coge de un formulario Para la búsqueda del valor utilizo Vlookup, pero necesito decirle que cuando encuentre ese valor, seleccione la fila y la borre. Eso es lo que me falla Gracias

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.2k visitas
  23. Started by hectorcc_18,

    Hola!! Desarrollé un libro de excel con algunas formulas de uso común para mi y lo grabe en mi computadora como "COMPLEMENTO DE EXCEL" dejé que excel lo colocara en la carpeta por default que utiliza. Para trabajar ocupo el equipo de mi oficina, un equipo de escritorio en casa y una laptop, los tres con Excel 2016 MSO. Actualmente estoy desarrollando una solución utilizando VBA y dentro del código hago referencia a un par de formulas de las que contiene mi complemento utilizando la función Application.Run llamando al archivo mediante la ruta completa hasta la carpeta donde Excel guardó el complemento, en la computadora. El archivo de trabajo que estoy des…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 3.8k visitas
  24. Que tal buenas tardes a todos!!! Para consultar y pedir apoyo si alguien me puede ayudar en este documento tengo una macro que se ejecuta con convinacion de teclas Ctrl+T dicha macro quiero eliminar la después de un cierto tiempo para que ya no se pueda ejecutar espero alguien me pueda ayudar y darme una propuesta Existencias_productos.xls.xlsm

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.6k visitas
    • 1 seguidor
  25. Hola a todos y gracias por vuestra ayuda de antemano. Me he encontrado con un problema que no sé muy bien como resolver, espero que alguien me pueda hechar una mano, porque ya le he dado mil vueltas y estoy atascado, la verdad. Gracias. Sub buscar() 'Caso 1, compara fila por fila en el rango C1:C100 'Si en una fila encuentra el valor 1 y además el CheckBox1 está marcado escribe ok en F1 'Pero esta condición solo se ejecuta si el CheckBox1 está activado 'Si quiero recorrer todo el rango y escribir ok en cada acierto: 'Worksheets("Hoja1").Range("f" & i).Value = "ok" Dim i As Integer For i = 1 To 100 If Worksheets("Hoja1").Range("c…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.9k 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.