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. Estimados Amigos: Una vez mas quisiera molestarlos con el siguiente caso: necesito obtener registros de varias tablas de Access e insertarlas en determinadas celdas de excel a paratir de un solo dato del registro, en el archivo adjunto tengo un ejemplo que si funciona, pero me parece muy improvisado, o como decimos en mi país "chapuceado" ya que lo que estoy haciendo es llamar varias macros por medio de un boton, lo que quisiera saber es si es posible abrir una sola vez la base de datos y luego recorrer e importar los datos de las diferentes tablas y luego cerrarla, para no hacer lo que yo tengo. ¿Es eso posible? Saludos cargar formulario.rar cargar formulario.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3.3k visitas
  2. Estimados amigos: En esta oportunidad, quisiera su ayuda en lo siguiente: Tengo un cuadro que llenar, pero necesito que al posicionarme en una celda me aparezca una tabla con un listado y con opción para buscar para seleccionar el código que le pertenece y se pegue en la celda que eliga. Y tbn que me ayuden con otra formula para concatenar de manera automatica no quiero que aparezca ese contenido de formula concatenar sino que solo al dar click se concatena solo en la columna de determinada celda que tenga información. Les adjunto mi archivo y imagen para que lo puedan entender mejor. Mil gracias!!!

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 641 visitas
  3. Started by GSLR1,

    Hola a todos, gracias de antemano. Adjunto archivo donde explico en lo que deseo me ayuden. En la hoja inicial tengo una tabla con encabezados y cantidades. Lo que deseo es que en las celdas donde haya cantidades, estas sean sustituidas por el encabezado. Y por último, en la hoja "Resultado esperado", está la tabla a como deseo obtenerla. Las celdas vacías sean eliminadas y ocupadas por la siguiente celda con dato a la derecha, o lo que es lo mismo, correr las celdas con datos hacia la izquierda, sustituyendo las celdas vacías. Gracias de nuevo por su acostumbrada ayuda agrupar celdas con datos.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 818 visitas
  4. Started by benbafel,

    Buenos días a todos, esperando que estén todos bien, quería solicitar su ayuda. Necesito crear una macro que reciba varios archivos .txt e ingrese el nombre del archivo en una celda(columna A) y el contenido del. Txt(columna B). He buscado solución a este tipo de problemas usando macros, pero no logro encontrarla, por lo que vengo a buscar consejo. Dejo adjuntos ejemplos de archivo .txt y como se vería el archivo Excel que deseo generar. De antemano Muchísimas gracias Excel Ayuda Ejemplo.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.3k visitas
  5. En un botón que acabo de crear, inserto un hipervínculo a una página que está dentro de un web que pide ID y Password para entrar. Previamente me "logeo" en la web con mi ID y Password, Cuando ya estoy logged in, pincho en el hipervínculo de excel pero no me lleva a la página del hipervínculo, sino a la inicial para pedirme las credenciales. En cambio si en esa página ya logeado, copio la URL del hipervínculo si que me funcional. Debe ser queal accionar el hipervínculo excel lo hace de forma que no se sabe que ya estoy logeado en otra pestaña de Chrome. ¿Alguna idea? Como la web destino es muy grande, con muchas páginas, tengo que hacer una hoja de …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 896 visitas
    • 1 seguidor
  6. Estimados, Junto con saludar, quisiera pedirles ayuda con la siguiente macro. Resulta que tengo un formulario en el cual no quiero que se guarde si las celdas D11 y D13 no se han ingresado datos, pero dada esta macro necesito algo que a la vez me permita guardarlo si el formulario esta completamente en blanco. Esta macro me funciona bien al permitir que el archivo se guarde si ambas celdas no tienen datos, pero a la vez me genera problemas para guardar el formulario si este esta en blanco. Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If Sheets("Formulario").Range("D11") = "" Or Sheets("Formulario").Range("D12") = "" Or Sheets("For…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 667 visitas
  7. Started by joseph19799,

    Hola amigos, Espero alguien pueda tener una solución a mi problema, a lo mejor suene un poco repetitivo que otras consultas planteadas aquí, sin embargo ya he buscado en diferentes lados y no encuentro solución a mi problema, incluso yo supongo que debe de ser algo muy simple pero no logro encontrar la solución. El problema es el siguiente, tengo una macro para enviar un correo a mis clientes adjuntando su factura y archivo XML, sin embargo deseo firmar el correo con una imagen el cuerpo del mismo, el método de envío a través de webmail y no por Outlook como en varios temas se ha dado solución, la cuestión es que en el cuerpo de mi correo aparece un pequeño cuadrito gri…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.9k visitas
  8. Tengo un proyecto el cual consta de varios formularios, en cada formulario se repite el mismo procedimiento, como puedo hacer para no estar repitiendo las instrucciones del procedimiento y tenerlo en un solo procedimiento que sirva para todos los formulario. Por ejemplo tengo un textbox el cual valido solo para numeros, el mismo se repite en otros formularios Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 779 visitas
  9. Started by [email protected],

    Hola a todos, primer día aquí en este foro, espero podáis ayudarme con un asunto que me lleva de cabeza. He preparado un excel para registrar vacaciones etc. El funcionamiento es el siguiente: A) el empleado tiene un número de días máximo por semana para coger, si sobrepasa el % la siguientes celdas aparecerán coloreadas en naranja b) la macro que he estado haciendo identifica estos subrangos (semanas) y aplica el criterio anterior, y colorea celdas. El problema está en los meses con menos de 31 días, como es Junio. El rango que colorea la macro se desplaza una columna a la izq. Mi intención es por ejemplo, en el caso de Junio, que la macro ident…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 973 visitas
  10. Hola buenas tardes: Por favor me pueden ayudar con una macro con la que pueda ocultar filas dentro de un rango (filas 8 al 20), pero sin ocultar las filas que tenga seleccionadas en es momento. Ya que hay filas que si necesito mostrar aunque estas no sean consecutivas. Muchas gracias Saludos Ocultar celdas menos las seleccionadas.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 628 visitas
    • 1 seguidor
  11. Started by Andrea50,

    Que tal, quiero poner folio que no permita poner el duplicado, al poner en texto nombre de folio que diga existente o no existe y sepa agregara en la base de datos del excel, quiero hacerlo desde TxtFolio.txt del VBA, no logro hacerlo... estado tratando como hacerlo.. pero normalmente se lo agregarlo hay duplicado de folio.. gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  12. buena tarde solicito su ayuda con lo siguiente. Tengo una BD en access con cierta cantidad de registros que cada día aumenta. tengo una columna de la tabla que se llama CAUSAL, la cual tiene items diferentes. Necesito contar esos items y mostrarlos en un label de un formulario de excel. el formulario de excel tiene un combobox que me muestra una lista de causales entonces debo contar el causal que seleccione del combobox y que sea igual al de la bd y que muestre la cantidad en el label. ejemplo de items columna causal: Retiro, fallecimiento, falta de dinero. espero haber sido claro y de antemano mil gracias por su ayuda

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.5k visitas
  13. Buenas, A ver si podeis ayudarme o guiarme un poco ya que soy bastante novata en este tema y me está costando bastante, sería de agradecer... Me baso en el ejemplo adjunto, tengo 3 pestañas (Usuario1,Usuario2,Usuario3). Cada pestaña es de un usuario que tiene actividades propias y otras con dependencias (las que aparecen como a Sí en la columna dependencia) con otros usuarios (columna Destinatario donde aparece el usuario del que depende). Mi intención es que haya un botón en cada pestaña que cuando le des a actualizar en una pestaña, por ejemplo, Usuario 1 le da a actualizar, a este le aparezcan todas sus actividades y todas aquellas que otros usuarios l…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 800 visitas
    • 1 seguidor
  14. Estimados, necesito una Macro que me ayude a copiar información de todas las hojas de un libro a una única hoja "resumen", el problema es que los títulos no están en la primera fila y encima del título tengo un dato que me interesa...En el ejemplo que adjunto... yo quiero copiar el rango a5:gX... siendo "x" el número de filas que tengan datos hacia abajo. (Las 4 primeras filas no me interesan)Les agradezco infinitamente una solución...soy muy nueva en esto de las macros!! ejemplo.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 637 visitas
  15. Started by marcxs,

    Hola amigos, ayuda con este código If Application.WorksheetFunction.Match(Cells(3, 2), Worksheets("Datos").Range("B:B"), 0) Then Sheets("Hoja3").Cells("B1").Copy Range("I:I").PasteSpecial xlPasteAll End If :smug: :smug::topsy_turvy:

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 823 visitas
  16. Saludos, deseo poder ingresar la fecha y hora de sistema en la celda activa con el formato especial mm/dd/aaaa hh:mm Ejemplo: Al correr la macro se ingresa el dato 01/23/2015 10:16 que corresponderia al 23 de Enero de 2015 siendo las 10:16 A.M . Sub fechahora() ActiveCell.Value = Now End Sub Como hacer la adecuación? fecha_hora.zip

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  17. Buen día, Espero y me puedan apoyar con un archivo que estoy creando. Lo que hice primero fue hacer una base de datos en access solo con los campos de "Numero" y "Estatus". En el archivo de excel hice un formulario con un tetxbox, un label y los commandbutton de aceptar y cancelar. Lo que quiero es que al escribir en el textbox un numero y al darle aceptar, ubique el numero en la tabla de access y devuelva en el label el dato que viene en "Estatus" Espero haberme dado a entender, disculpen que no haya subido algún código. Espero y me puedan apoyar, de antemano muchísimas gracias, saludos... estatus.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 707 visitas
  18. Started by gux70,

    Hola a todos. Hace unos días en los que una hoja con Macrors que tengo empezaban a fallarme los botones con los que se incian ciertas macros. Al mirar veo que todo el código que estába dentro de la hoja ha desaparecido y por eso no lanzaba los formularios al hacer click en los botones. lo curioso es que mirándolo bien, "no sé ni quien o qué ni como" lo que ha pasado es que esa hoja ha camabiado de nombre y la hoja original (Hoja1) aparece con el mismo formato que Thisworkbook y es una hoja que no puedo ni modificar ni nada (no existe pero tiene las macros). La nueva hoja es igual que la original pero sin macros. Me estoy volviendo loco, lo mismo es un…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 680 visitas
  19. Started by cecirt84,

    Hola! Primero que nada, quiero comentarles que no tengo mucha experiencia en macros, pero he estado leyendo y buscando mucho para resolver este pequeño dilema y no encuentro como adecuar los ejemplos a mi archivo. Básicamente, tengo dos archivos, uno de base de datos y otro de ordenes de compra, tengo un userform en el archivo de ordenes de compra, donde quiero que al poner un nombre de orden de compra, lo busque en la base de datos, y solo me salga un msgbox que diga si existe o no existe. Encontré un código buscando por internet, pero se me cicla y siempre me dice que no se encuentra la orden de compra, aunque si exista. Ojalá me puedan ayudar, porque estoy un poco …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.3k visitas
  20. Started by albersil,

    Buenas, me estoy devanando los sesos para conseguir lo que quiero hacer, pero mis entendederas no dan para tanto, así es que solicito humíldemente vuestra ayuda. La cuestión es que quiero quitar las flechas de los enlaces directos de windows, pero no tengo acceso al regedit, así es que la única solución que se me antoja es hacerlo desde VBA con EXCEL, ya que un fichero EXCEL con VBA que tengo con otro código sí ha conseguido modificar el registro, pero en otra rama. Bueno al grano, se que las flechas se eleminan cambiando la entrada IsShortcut por xsShortcut , en las ramas HKEY_CLASSES_ROOT\lnkfile y HKEY_CLASSES_ROOT\piffile, pero no se hacerlo con VBA. Mediante un fich…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  21. Started by maylex,

    Hola Amigos, tengo el siguiente archivo con macros las cuales principalmente con ocular y mostrar filas de acuerdo a la evaluación, lamentablemente en el archivo que adjunto tuve que borrar el contenido ya que es confidencial, pero lo importante es el código y requiero de su valiosa sabiduría para saber: Si este archivo lo leerá correctamente Excel 2003-2007-2010-2013 ?? este archivo lo hice en Excel 2010, pero tengo que enviarlo a mucho usuarios los cuales tienen distintas versiones, y es muy importante que lo puedan ver bien o sino todo el trabajo realizado no va a servir de nada. agradecería mucho su ayuda en esto es simplemente tener la certeza de que el código lo …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 957 visitas
  22. Started by Escoltin,

    Hola aTod@s, estoy haciendo una tabla de Excel en la que introduciendo los horarios de entrada y salida me calcule cuantas horas he trabajado cada día, si he acumulado minutos extra, etc. Y posteriormente me va generando la nómina de ese mes, como las circunstancias del trabajo son peculiares ( tengo una jornada de trabajo de 7’15 horas diarias pero el horario puede ser un poco más extenso y la diferencia entre las 7’15 y lo realmente trabajado se acumula como minutos, además entre turno y turno debe de haber 12horas de diferencia entre la salida de uno y la entrada del otro aunque a partir de las 10 horas te pueden poner trabajo, pero esos minutos desde que entras antes …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.5k visitas
  23. Started by dogwall,

    Buenos días, Tengo una duda sobre el funcionamiento de una futura aplicación. Actualmente en uno de los departamentos vienen utilizando, para guardar el mismo tipo de datos, varios ficheros excel. Un fichero para cada zona o destino. Esos ficheros están conectado a uno "global" y mediante una macro genero una hoja con todos los datos de TODOS los ficheros, para luego hacer una dinámica, un par de gráficos, etc. Mi idea es migrar todo eso a un fichero access y utilizar excel con formularios para manejar esos datos y extraerlos cuando sea necesario. Pero no tengo claro cómo hacerlo. Supongo que deberé crear un excel para cada uno de los usuarios ¿verdad?, por aquello …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.2k visitas
  24. Llevo algún tiempo probando este tema pero no lo consigo, agradezco cualquier ayuda u orientación, gracias Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
    • 1 seguidor
  25. Hola! Soy nueva en este foro, así que espero estar haciendo esto bien...Me surge una duda al programar una lista para elegir varios valores. Tengo la lista, la elección de valores y todo parece ok, pero me surge el problema al querer mover el rango a uno en concreto y no dejarlo en la primera columna... Quisiera que mi rango estuviera definido por ejemplo entre D7:D20 y si puedo hacerlo en otra pestaña, mejor, alguien me puede ayudar? He puesto esto: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column <> 3 Or Target.Row = 2 Then Exit Sub Else Form1 End If Cancel = True End Sub

    • 0

      Reacciones de usuarios

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