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. Buenos días, actualmente estoy trabajando con un archivo para crear una solución para la gestión de recibos impagados. Tengo todo listo (algo básico, debido a mi nivel) pero me encuentro con el siguiente problema: Al intentar ordenar el listado original mediante las distintas opciones de Excel solamente consigo ordenar mediante la Fecha de Vencimiento o mediante el Nombre. Si intento ordenar primero por uno y luego por otro, prevalece mas uno siempre. Lo que yo necesitaría es que los recibos con la fecha de vencimiento mas antigua se situasen al inicio de la tabla para ser gestionados primero, pero si un cliente tiene mas de un recibo, este estuviera en la fila …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.2k visitas
    • 1 seguidor
  2. Hola que tal, tengo un proyecto en el cual necesito de vuestra ayuda. tengo un formulario con un listbox, campos de texto y botones para agregar registros, eliminar y editar. preciso de vuestra ayuda porque no consigo pegar los datos de un nuevo registro a la hoja de presupuesto, si lo hace en la tabla donde estan todos los registros grabados. me explico a continuacion: en el listbox llamado "Lista" al cargar el formulario se carga todos los registros que se encuentran en la tabla Viajes de la hoja "Dia" si quiero registrar una nueva fila o registro pincho en el boton Registrar del formulario , relleno las cajas de texto y al pinchar el boton "Agre…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 669 visitas
    • 2 seguidores
  3. Started by soda1206,

    Hola y buenas tardes estimados foreros, esta vez tengo otra consulta, cómo puedo pintar en rojo como muestra la imagen, cuando se cumpla que valor de columna E sea mayor o igual a valor de columna F, sabiendo que el símbolo "<" significa que ese valor es menor al límite de detección indicado, que para la col E el mínimo es "<0.003" y para la Col F el mínimo es "<0.005". Con una macro que me puedan ayudar debería quedar como muestra la imagen. Les agradezco infinita y nuevamente su apoyo por favor estimados foreros. nota: el rango de datos se inicia en E8:E32 y F8:F32

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 454 visitas
    • 1 seguidor
  4. Buenos días foro. Por mas que busco no encuentro la forma de que al activar una casilla de verificación en celda (casilla15) desmarcar otras dos (casilla16 y casilla17) y viceversa, al desmarcar al 15, marcar la 16 y 17. Por valores en celda no tengo problema, es marcar el objeto en si y no se si tendrá algo que ver que están en la misma celda. Gracias.

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 569 visitas
    • 1 seguidor
  5. Estimados buenas tardes, Estoy con un combobox cargando datos de tabla de access. Si agrego Fields(0) , Fields(1), como esta pensado en el algoritmo que copio a continuación , los carga en filas diferentes de esta manera 3 Dato1 4 Dado 2 2 Cuando 3 es el Id de Dato 1 y 4 es el Id de Dato2 La idea es que al seleccionar el nombre se obtenga el valor del Id correspondiente en una variable Esto es a efectos de obtener el id para agregar datos en otra tabla Aguardo su ayuda Muchas gracias Private Sub CargoComboAccess() Dim cn As Object Dim datos As Object Dim consulta…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 638 visitas
    • 1 seguidor
  6. Hola a todos, Estoy intentado ejecutar una consulta Sql en un formulario y se ejecuta bien, pero quería ir un paso mas y establecer unas validaciones las cuales se me están atragantando. Hasta ahora mismo solo lo consigo con la fecha y me falta conseguirlo con dos criterios mas que son "Cuenta" y "Concepto" En la validación se debe tener en cuenta que siempre debe haber uno excepto con las fechas que se debe incluir fecha inicio y fin. Saludos Adjunto macro. MiSQL.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 443 visitas
  7. Started by Miguel A. Tamaniz H.,

    buen Dia masters Tengo el siguiente código con el cual pretendo enviar por correo dos hojas ("Parts Service", "Fault ") de este mismo libro, pero antes de enviar esas hojas quiero que me las guarde en una ruta , la cual ya solucione, ya que genere una lista de los archivos adjuntos que se enviaran, pero me sigue saliendo el error 440 "Se produjo el siguiente error: No se pueden agregar los datos adjuntos. Falta el origen de los datos", pero lo chistoso es que se enviar el correo con los archivos adjuntos Requiero de su apoyo en dos cosas, optimizar el codigo si se puede, si no pues solo la solucion del error De antemano agradezco su apoyo con mi codigo.....…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 915 visitas
  8. Started by Keifryfdz,

    Necesito ejecutar un macro X numero de veces y que se agregue en una tabla los datos dentro del macro pero no encuentro forma de hacer que funcione Aqui una foto de lo que deseo agregar donde esta X que sea un numero cualquiera deseado Sub Macro1() ' ' Macro1 Macro ' ' Range("H3:K3").Select Selection.Copy Range("A50000").Select Selection.End(xlUp).Select ActiveCell.Offset(1, 0).Select ActiveSheet.Paste Application.CutCopyMode = False Range("J3").Select End Sub Ese es el codigo de la macro. Produccion.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.7k visitas
    • 2 seguidores
  9. Hola muy buenos días, por favor me podrían apoyar de como CARGAR un listado a un COMBOBOX, la condicional es la siguiente: Si la columna B tiene X dato, que se cargue lo que tengo en la columna A, Gracias de antemano por tu apoyo!

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 748 visitas
  10. Started by terremoto96,

    Buenas tardes a todos. A través de la fórmula "Imagen" he conseguido insertar logos partiendo de un enlace de la imagen. Sin embargo, me gustaría concatenar los mencionados logos estando fijos en la celda, es decir, sin que pueda manipularlos como cuando inserto una imagen normal. Lo he intentado con la función "Concatenar" e "Y" pero no consigo dar con ello puesto que creo que no es posible. Por ello creo que solo a través de una macro podría llegar a hacerlo. ¿Podrían ayudarme? Muchas gracias de antemano PD: adjunto un archivo para que se entienda Concatenar logos.xlsx

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.4k visitas
    • 1 seguidor
  11. Started by Fernando.O,

    Hola a todos: Después de intentar e intentar, no consigo hacer Filtrar con las condiciones que necesito. Resulta que en una variable de tipo string, almaceno los valores para que se filtren. Cuando inserto los valores de forma manual, lo hace correctamente. Pero cuando le paso los valores que tengo en la variable, no consigo que funcione el filtro. Aparece como si no filtrase nada. No se que es lo que estoy haciendo mal. ¿Me podéis ayudar? ejemplo.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 604 visitas
    • 1 seguidor
  12. Buenas días a todos, Les copio parte de un algoritmo en donde copio y pego unas tablas en otro libro. Copia y pega todas las tablas correctamente, ahora si les aplico un filtro y copio solo las filas visibles aplicando SpecialCells(xlCellTypeVisible).Copy ,, no copia la tabla con su nombre de rango, solo copia los valores. Aparentemente cuando copias y pegas una tabla filtrada en Excel, es posible que el nombre de rango no se copie automáticamente junto con los datos. Esto puede ser que se deba a que el nombre de rango está asociado directamente con la tabla y no con las celdas individuales. Hay alguna manera de hacer esto en esta instancia al hac…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 728 visitas
    • 1 seguidor
  13. Buenas tardes , Estoy obteniendo datos sin duplicados de una columna de tabla para después filtrar otra tabla En Function ObtenerDatosTabla Se utiliza un objeto Scripting.Dictionary para almacenar los valores únicos. Antes de agregar un valor al diccionario, se verifica si ya existe en él, evitando así duplicados. Al final de la función, se devuelve un Variant con los valores únicos almacenados en el diccionario utilizando la propiedad .keys del diccionario. Los datos obtenidos los paso como argumento a Sub FiltrarDatosTabla, pero es ahí donde no me funciona, solamente me filtra por el ultimo valor Aguardo sus comentarios Muchas graci…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 657 visitas
    • 1 seguidor
  14. Buenas tardes, estoy trabajando sobre un archivo en el que quiero modificar los botones que tengo ahora mismo por objetos y que éstos imiten la función de los botones. Tengo un problema con la función deshabilitar botones pero aplicada a objetos, ¿existe? ¿puedo a través de VBA decir a un objeto que habilite o deshabilite su enlace con una macro como hago a través de los botones habilitando o deshabilitando su funcionamiento? He visto una solución que lo que hace es invisibilizar el objeto... pero no me acaba de convencer. Por ejemplo, en los botones tengo: Hoja09.cmdActualizarResumen_Anual.Enabled = True Hoja09.cmdActualizar…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 678 visitas
    • 1 seguidor
  15. Hola a todos de Maurizio Mi problema es este: Con la hoja de Excel de Microsoft Office 2019 Estoy tratando de crear un calendario bastante simple. ¡Siempre que haya utilizado su formato condicional, etc.! Pero como nunca estoy satisfecho cuando se trata de explotar la programación en su conjunto, he llegado a un punto en que mi calendario funciona bien; Con el único defecto que consiste en el hecho: Tener que ocultar los números que no pertenecen al mes seleccionado. De hecho, actualmente, si lo dejo en el mes actual, mi calendario funciona de maravilla. Pero si intento mover el número del mes posicionado en la celda (D1) mi Calendario me posiciona los valor…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 467 visitas
    • 1 seguidor
  16. Started by manel pubill,

    da error de archivo no encontrado; que debo hacer para que se ejecute : WDir1 = "\\DESKTOP-13453GE\C:\Users\ipm20\Desktop\WProces\" WDir2= "F09-CompVda-PC2-20230701.xlsm" Run = "'" & WDir1 & WDir2 & "'!ProcCompVda" Application.Run WRun muchas gracias

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 553 visitas
    • 2 seguidores
  17. Started by Ruben_sk8,

    Estimados buenas tardes. Agradecería su colaboración con el siguiente caso Tengo una ListBox en la hoja "Distribución" ( se activa con clic en la celda K:2) que trae la información de la hoja "Transformación" celdas "L5:S102" estas celdas contiene formulas. Al momento de activar el ListBox, selecionar y dar doble clic para que la información baje al excel no envia la información de la linea selecionada. Realice una prueba eliminando las formulas de la hoja "Transformación" celdas "L5:S102" ahí me funciona la ListBox. En resume el inconveniente de selección se da al momento de colocar formulas en la hoja "Transformación" celdas "L5:S102" …

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 567 visitas
    • 1 seguidor
  18. Buenas, Estoy copiando tablas a otro libro y no logro copiar los encabezados, si copia correctamente el mismo nombre que también me interesa Uso un buscador para que puedan elegir la ubicación del nuevo libro que se crea, el nombre del nuevo libro es "Salvo" y lo pueden cambiar por código Aguardo ayuda Saludos Adjunto CopioTablas.xlsb

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 755 visitas
    • 1 seguidor
  19. Saludos, Tengo formulas en varias celdas que se alimentan de una Tabla llamada TablaSubAlim la cual reside en el mismo Workbook.. Sin embargo ahora he tenido la necesidad que esta tabla se alimente desde una Tabla que está en Access. Con este código logré hacer esa conexion de manera automática. 'Private Sub Worksheet_Activate() 'Application.ScreenUpdating = False 'Dim l As ListObject 'Dim q As QueryTable 'Dim s As String ' ' ''CONEXION A LA BASE DE DATOS 'Cells.Delete 's = "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Jet OLEDB:Database Password="" ;Data Source=" 's = s & "\\DATABASE_TABLASUBALIM\DatabaseTablaSubAlim.accdb" …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 359 visitas
    • 1 seguidor
  20. Started by sdelpin,

    hola he creado un formulario para añadir registros, modificar, eliminar, buscar etc. el problema lo tengo en el boton busqueda que el dato que necesito que busque es la fecha y sale un mensaje 380. podeis por favor ayudarme en donde tengo que modificar y que poner? adjunto fichero. gracias. Partes de Trabajo.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 579 visitas
    • 1 seguidor
  21. Hola a todos; Una duda que no soy capaz de resolver. Tengo dos textbox en un formulario y en el evento beforeUpdate una validación simple. También estoy usando en el evento KeyDown la tecla "F12" que una vez pulsada me retrocede y borra lo que tenía en el anterior textbox Si la validación no se cumple en el textbox2 me arroja un error porque no puede salirse del cancel=true y llevar el foco al textbox1. ¿Es posible salirse de ese cancel=true pulsando la tecla F12, o como podría depurar ese error?. Saludos a todos. MCancel.xlsm

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 1.3k visitas
    • 3 seguidores
  22. Buenos días, ¿Me podríais decir cómo se puede extraer a una celda el contenido que se selecciona en un combobox personalizado, que está colocado en la cinta de opciones? He encontrado mucha información cuando el combo está en una hoja, pero en la cinta de opciones, no. Muchas gracias

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 1.6k visitas
    • 2 seguidores
  23. Started by xandro,

    Buenas tardes, Necesitamos un archivo excel que nos permita automatizar los horarios de trabajo con las siguientes premisas: - 7 trabajadores que tienen - 2 días libres a la semana - Turnos de Mañana, Tarde, Noche y Partido. Muchas gracias de antemano!!

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 783 visitas
    • 2 seguidores
  24. Started by Scraf,

    Hola, Soy MUY principiante y necesito a ver si me podéis ayudar un poco... He creado una pestaña nueva en la ribbon con xml y he añadido un botón que necesito que imprima directamente en pdf una hoja del libro de Excel y que la guarde en la misma ubicación donde está el archivo xlsm. He estado mirando un poco porai pero no he sabido crear el código VBA para hacerlo... Imagino que es muy básico, pero no lo se hacer... ¿Algún alma caritativa me podría ayudar? Muchas gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 806 visitas
    • 1 seguidor
  25. Hola, me gustaría saber como es el comando de VBA para seleccionar todas las celdas de una hoja que contengan una palabra concreta. Lo necesito con VBA para luego enlazarlo con otra cosa. Sé hacerlo con la funcionalidad de Buscar; Buscar todas. Gracias.

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 713 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 sergio@ayudaexcel.com

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