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 Felix de Jesus,

    Hola buenas tardes a todos, espero puedan ayudarme, tal vez sea algo muy sencillo, pero llevo ya varios días atascado con esto... Tengo varios archivos(25) con datos de ventas de distintas sucursales, con ayuda de power query y una macro he logrado reducir todos los datos en una estructura que espero convertir en mi base de datos, para lograr esto, me falta rellenar los espacios en blanco de la fecha y el numero de tienda. Esto, sin macro lo hago marcando con ceros el final de los valores en las columnas de fecha(que es muy facil ya que es la misma para todos) y numero de tienda, regresando al inicio, poniendo la celda activa en el valor a rellenar luego shift+tecla …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.8k visitas
  2. Started by Ppep,

    Hola, Quisiera saber de una macro para ocultar columnas vacías, de una tabla cuando aplico un filtro (o varios), y me quite también las que están ocultas que tienen datos pero no salen en el filtro. Un saludo. rMezclaCompletamacro25.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 616 visitas
    • 1 seguidor
  3. Started by Aretradeser,

    Cada vez que ingreso un registro, a través de un formulario, tengo que cerrar y volver a abrir el formulario para poder introducir otro registro; y, así sucesivamente. Si lo intento registrar a continuación uno de otro, me sale una pantalla que dice: "Valor de propiedad no válido" Podría tener algo que ver que los ComboBox del formulario, los tengo con la propiedad MatchEntry en 1-fmMatchEntryComplete, para obligar al usuario a que elija uno de los datos de la lista que se despliega del ComboBox e impedir que pueda escribir cualquier cosa. Esta la parte del código que utilizo para registrar los datos del UserForm: PrivateSubcmdRegistra_Click() DimSalirAsBoolean,Esta…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 905 visitas
  4. Buscar entre las columnas "B" hasta la columna "H" la fecha mas reciente de modificacion de cada fila y poner la fecha mas reciente en la columna "I" con campo FUM.... ESTO POR CADA FILA y que en automatico cada que pego todas las filas con las fechas ...se peguen en la columna "I"... las mas recientes.... no se si sea con una formula solemente o como... por favor ayuda. LES DEJO EL ARCHIVO DONDE ESPECIFIQUE OJALA PUEDAN AYUDARME

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 827 visitas
  5. Started by GuillermoConde,

    Buenas noches, necesito que por favor me colaboren en indicarme paso a paso, ya que no soy muy experto en la materia, pero necesito con urgencia elaborar un formulario para hacer una caracterización de un población. Hasta el momento he elaborado las preguntas, necesito que lo que valla incluyendo, en la hoja de INICIO, automáticamente me recopile la información en la hoja DATOS, en orden efectivamente. Los datos de UBICACIÓN, VIVIENDA Y HOGAR, son los mismos para toda la familia, osea que esos datos se repiten en las filas y columnas A2 hasta R2, A3 hasta R3, A4 hasta R4, dependiendo los miembros de la familia. También me den ideas de presentación de formulario, pero por …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 826 visitas
  6. Started by meduvilla,

    estimados se podra realizar la Division de un valor que tenga un Textbox3 por el valor que indique el Combobox1? con resultado en 4Combobox desde ya agradecido atte Milton fecha de pago.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.1k visitas
  7. Started by JMark,

    Buenas tardes/noches estimados especialistas, Estaba tratando de adecuar la macro a mi necesidad sin embargo me tope con algunos problemas que me gustaría me puedan ayudar a resolver, son 02 observaciones: 1. la macro no envía los archivos adjuntos pese a tener la ruta, la necesito porque envía diferentes reportes personalizados por usuario. 2. se creó la macro filtro_avanzado para agregar fechas al correo pero no funciona. Muchas gracias por su tiempo y quedo atento a su respuesta en caso no haber sido claro por favor me comentan. Saludos, Mandar mail con adjunto.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1k visitas
  8. Hola amigos estoy trabajando en una macro que me ayude a simplificar mi proceso en el trabajo aun soy nuevo en excel y acudo a su apoyo: trabajo con el mismo reporte solo que los datos cambian lo bajo del sistema al inicio de turno y al final, donde me piden * Saber que codigos ya no se encuentran en el primer reporte de acuerdo a su cantidad, porque el mismo codigo se puede repetir pero con otra cantidad * Saber la cantidad de los codigos que ya no estan en el primer reporte y colocarlo hoja "Reporte", Desde ya le agradezco por su ayuda y pertencer a esta comunidad Saludos de Lima-Peru Reportes.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 794 visitas
    • 1 seguidor
  9. Started by Pirtrafilla,

    Hola a todos. De nuevo por aquí pidiendo ayuda. Nos han cambiado las licencias de Office a Office 365. He revisado las macros y las que me fallan tienen que ver con las que envío correos automatizados. He podido arreglar todas, cambiando el código porque de Office 2013 a Office 365 cambia el código, se usa el objeto CDO.Message. Pero se me resiste esta macro, que envía un correo e incluye como parte del cuerpo del correo un rango de celdas donde hay un gráfico. Os pego el código para ver si me podéis ayudar. Después de la instrucción "ActiveWorkbook.EnvelopeVisible = True" el programa ya no ejecuta nada más. He probado con F8 paso a paso y ahí se detiene. Necesi…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.2k visitas
    • 1 seguidor
  10. Started by wiloto,

    Estimados, Antes que todo, agradecer el tiempo por leer este post. Lo que quiero para muchos es básico, pero para mi no Lo que intento hacer es como se muestra en el archivo, pero en vez de utilizar el ingreso de nombre a través de Valización de Datos, me gustaría poder asociarlo a un botón, que creo es el que puse ahí. Si no me di a entender bien, con el ejemplo sabrán que necesito. Saludos y gracias nuevamente por su tiempo, disposición y paciencia. Nombres.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  11. Started by gou,

    Tengo dos columnas en una misma hoja de excel y necesito crear una macro que me automatice la creación de hipervínculos. En la columna A tengo filas con la palabra comprar y en la columna B filas con los destinos de las páginas web donde quiero que se me dirija al hacer click en la palabra comprar. Añado también, por si fuese de ayuda que el formato final del archivo es csv, para después importarlo como administrador de una página web. Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 823 visitas
  12. Buenos días, He estado buscando una macro para obtener cuanto ocupa una carpeta y sus subcarpetas y lo más cercano que encuentro son macros para listar nombres y atributos de carpetas y ficheros, he intentado adaptar pero no lo consigo. Si alguien pudiera darme alguna indicación se lo agradecería enormemente. La información que quiero recopilar es la siguiente: Poder dejar en una hoja Excel el nombre de una lista de carpetas que las escribo yo y la macro quisiera que me rellenase la celda al lado de cada carpeta con la ocupación real que tiene en disco incluyendo por supuesto todas las subcarpetas que tiene por debajo. Para explicarme un poco mejor, pretendo control…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.6k visitas
  13. Started by bigboss,

    Buenas a todos Aunque parezca cargante, daros de nuevo la enhorabuena por el portal creado y las gracias por hacerme participe de el, para utilizarlo en mi dia a dia Mi cuestio es la siguiente De la siguiente tabla, me gustaria que, o bien por proximidad de vencimiento del performance bond o del advance bond, se me avisara dentro de la base de datos cual es el momento de caducidad de los performance bond o advance bond payment No se si seria posible hacerlo de tal manera en que se tuviera como un cajon con contratos, y cuando se acercara la fecha de vencimiento de alguno de los dos anteriores( menos de 2 meses vista) pudiera aparecer una v…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  14. Hola a Tod@s, Espero me puedan ayudar,... al intentar insertar una imagen a un formulario en tiempo de creación por medio de VBA, me dice que el objeto no esta disponible. Sub CreaForm() Dim MiNewForm As Object Set MiNewForm = Application.VBE.ActiveVBProject.VBComponents.Add(3) With MiNewForm .Properties("Height") = 300 .Properties("Width") = 300 .Name = "Prueba" .Properties("Caption") = "Prueba_LBV" .Properties("BackColor") = RGB(0, 255, 0) .Properties("Picture") = ActiveWorkbook.Path & "\Imagen1.jpg" ' .... AQUI ME SALTA EL ERROR? .Properties("PictureSizeMode") = 1 End With End Sub …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 814 visitas
    • 1 seguidor
  15. Hola comparto con ustedes una archivo de excel con una hoja, que tiene botones flotantes. Al iniciar la hoja los botones se pondran de color rojo (significa que no han sido usados) una vez se de click sobre uno, en la secuencia el siguiente se pondra en color amarillo (significa que es el que sigue de usarse), el anterior se pondra de color verde (significa que se ha utilizado ya y si se da click en el mostrara un mensaje diciendo que no es posible repetir la accion de este boton, ya que ha sido utilizado), despues de usar el boton amarillo, este se pondra de color verde y el que sigue cambiara a amarillo y asi sucesivamente. Donde de un click con el raton los botones le …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  16. Hola, Hace unos días me ayudasteis a resolver una macro que buscaba en un listado la fecha coincidente o de no coincidir ninguna, te daba la más cercana comparando con otro listado. Funciona genial, pero me han surgido dos problemas al adaptarlo. 1) Si el listado donde busca (hoja FECHAS del ejemplo) es más corto que la hoja donde hay que pegar el resultado (hoja RELLENAR en el ejemplo), solo te añade el mismo número de registros que en la hoja donde busca. No sé si esto es algo que yo estoy haciendo mal al adaptarlo. 2) No he conseguido adaptarlo para que lo haga por cada cambio de código en hoja RELLENAR (columna a). Es decir, si es el código es "a" …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 400 visitas
    • 1 seguidor
  17. Hola buen día...tengo esta macro que envía los datos como lo quiero, incrementando la columna "T" para tomar como referencia de la última fila con datos...como puedo evitar eso, es decir que no me registre nada en la columna "T", y además me sale un mensaje de error al proteger la hoja..es una tabla dinámica donde se debe arrojar los datos...y finalmente que me ordene por fecha que se encuentran en la columna "A" Private Sub CommandButton3_Click() Dim MES As String ' BOTÓN REGISTRAR Dim UltFila As Long 'MANDAR LOS DATOS EN SUS MESES RESPECTIVO MES = ComboBox4.Value If MES <> "" Then Sheets(MES).Activate UltFila = Sheets(MES)…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  18. Saludos: Tengo una tabla ya definida con un rango de B9:I250. No importa si usas las primeras 10 o las utilizas todas siempre es el mismo rango. Yo tengo un macro VBA donde primero sorteo en una columna en particular y en orden ascendente con el propósito de colocar todas la información en orden y evitar que hayan espacios en la tabla. Luego de sortear, identifico la ultima celda escrita y borro cierta información que pueda haber en otras columnas. Por ejemplo siempre termino sorteando la columna B, si en la celda X de la columna B no hay nada escrito entonces puedo borrar la información que haya en las columnas C,D, H. Sim embargo esto lo logro utilizando la función…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 858 visitas
  19. Started by Leonardo Briceño,

    Buenos días amigos de Ayuda Excel, La siguiente macro me da el error 91 en tiempo de ejecución, Variable de objeto o bloque With no establecido. Me resalta en amarillo la fila que está aquí en negrita y letra grande Sub EnviarDatosCostosProductosNacionalesAPreciosProductosYServiciosA() Application.ScreenUpdating = False Dim ult, ult1 As Long Dim rng As Range ult2 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & Rows.Count).End(xlUp).Row ult3 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("B" & Rows.Count).End(xlUp).Row ult = Sheets("PRECIOS PRODUCTOS Y SERVICIOS").Range("A" & Rows.Count).End(xlUp).Row + 1 ult1 = Sheets("…

    • 1

      Reacciones de usuarios

    • 2 respuestas
    • 648 visitas
    • 1 seguidor
  20. Started by IsabelA,

    Hola buenas tardes, mi nombre es Isabel. Mi Problema es el siguiente: necesito realizar una consulta SQL a una tabla dbf desde una macro en excel, y poner los resultados en una hoja de excel, mi problema es con una consulta que sobrepasa los 255 caracteres ya que ese es el límite de los String, lo intente con variables Variant pero a la hora de pasar los parametros para hacer la consulta en la tabla me lo corta a 255 cáracteres y por consecuencia me marca error de ODBC, para las consultas menores a 255 no tengo ningun problema, abajo agrego el código que uso: En esta macro tomo la primera parte del select que es lo que varia en mis consultas Dim columna As String …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3.2k visitas
  21. Started by tobi69,

    he conseguido , que se pongan la fecha y la hora automatica , ahora quiero que se active la columna D y al introducir un dato se active la columna A , asi sucesivamente. Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then Range("B" & Target.Row) = Date Range("C" & Target.Row) = Format(Now, "hh:mm") ActiveSheet.Range("D").Select f Not Application.Intersect(Target, Range("D:D")) Is Nothing Then ActiveSheet.Range("A").Select End If End Sub lo rojo esta mal . EJEMPLO TABLA.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 851 visitas
  22. buenas noches gustantes del vba tengo una duda espero me puedan ayudar o guiar, tengo un formulario que abre la ventana de explorador para poder poner una imagen, mi pregunta es como se podria hacer para que jale el codigo de un escaner?¿se necesitan controladores como tal? ¿como podria ser?, en el formulario al darle click en el cuadro de imagen abre la ventana de explorador para poder poner una imagen, quiero que en vez de eso me pida el controlador o escaner o camara que esté conectado a la maquina en ese momento. ilustrenme porfavor Baseconimagenes - copia.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 850 visitas
  23. Started by Roberto_32,

    saludos, tengo un problema tengo una macro hecha para que me abra un archivo desde mi escritorio y me ejecute una serie de cosas ( la ordena, saca un rango y la pega en otro libro). lo que necesito es que si le doy a ejecutar a esa macro de nuevo , y me pregunta si deseo abrir el archivo de nuevo, la respuesta sea NO y ademas me corra lo que seguia en la macro tenia pensado utilizar un IF de modo que si el archivo no esta abierto , lo abra y ejecute el resto, en caso contrario ELSE que solo ejecute el resto de la macros agradezco cualquier ayuda

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3k visitas
  24. Hola de nuevo a todos. Sigo construyendo mis simulaciones genéticas. Quiero generar la forma en que se observa un carácter en un individuo a partir de la información que este contiene (disculpa @Antoni pero me resulta complicado ser conciso con este tema). Adjunto un archivo con un ejemplo de lo que quiero conseguir. https://1drv.ms/u/s!ArSI6ZjR1bGVlYRKJdj0eGq5jDa87Q Partimos de: Unos caracteres ya definidos (hoja naranja “Color_y_tamaño_flor_CL”). La definición de caracteres condiciona como se expresa el carácter y el código tendrá que buscar en la hoja de caracteres los diferentes parámetros de expresión. Esta definición implica: …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 718 visitas
  25. Started by Ferjam,

    Buenas, es una cosa fácil pero se me esta resistiendo, con Application.hWnd saco la de la ventana activa, el excel, y con FindWindow("notepad", vbNullString), la de notepad, pero cuando intento otras que tengo activas como por ejemplo el word no me da nada... alguien me puede indicar como indicar en el findwindow / ex el titulo de la ventana, gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.1k 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.