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. Muy buen día, tarde, noche. Quisiera solicitar de su amable colaboración en un pequeño inconveniente que estoy teniendo. Estoy siguiendo un tutorial para un sistema de facturación, pero me he quedado atorado en un proceso, el cual es el siguiente: Según el instructor, para continuar con el tutorial se debe descargar un archivo que él dejo en un ejecutable, y que supuestamente me guarda una Dll entre mis archivos, la Dll se llama DllAdo.dll, la cual permitirá realizar una conexión entre Excel y Access, y que todo quedará según él más rápido. La cuestión es que nos indica que se debe crear un módulo de conexión con la siguiente función: '''''''''''DLL ADO ''''…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3.9k visitas
  2. Started by Jose BN,

    Buenas noches! Amigos(as) acude a este foro para buscar una solución a lo siguiente: El archivo que he adjuntado cuenta con un formulario vba en la hoja llamada "Datos" el cual se muestra en botón Inicio, este formulario cuenta con un combobox que carga una lista de los datos contenidos de la columna A hasta la columna N. Una vez cargado los datos son seleccionados y se imprimen por medio del botón llamado Reporte, existe forma que me evite ir seleccionando uno a uno el usuario a imprimir? entiéndase que con seleccionar una opción o checkbox imprima automáticamente todos los registros cargados en el combobox. Espero haberme explicado bien y agradezco…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2k visitas
    • 1 seguidor
  3. Buen dia! Hoy estoy trabajando en un programa para controlar tiempos de mantenimientos de maquina. Ya cree un ListBox donde me toma automáticamente todos los datos de una tabla de mantenimiento. LO que estoy buscando es que mi ListBox, ponga la fecha actual (seria la fecha de mantenimiento) solo en las casillas que están seleccionadas. Si están todas seleccionadas, todas. Ya tengo el ListBox que toma la Tabla automáticamente Tengo el Listbox Con las Casillas de Check en multiselection Solo me falta hacer que la(s) casilla(s) seleccionada(s) cumpla(n) una acción. Que seria Poner la fecha actual en la columna "K" Donde corresponda. Y que la fecha sea …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.1k visitas
  4. Started by wilkinmonti,

    buenas tengo una consulta, se puede realizar en excel a nivel macro un chat pero no red normal, o algo que se le parescagracias por su tiempo espero su respuesta

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.7k visitas
  5. Started by artmandu,

    Hola un saludos a todos de nuevo se que esta pregunta no correponde, pero no encuentro como colgarlo de foro correcto pero espero puedan ayudarme estoy trabajando con imágenes en word, se trata de insertar una imagen y que luego esta sea seleccionada y modificada en cuanto a su tamaño, utilizo el siguiente código para insertar la imagenSelection.InlineShapes.AddPicture FileName:= _"C:UsersArturoDesktopFotosListasFoto d (" & nf & ").jpg" _, LinkToFile:=False, SaveWithDocument:=Truela imagen queda insertada en una tabla pero el problema es que se pierde su selección es decir que necesito seleccionarla con el mouse para modificar su tamaño, y como son bastantes …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 540 visitas
  6. Holas, me proporcionaron el sigiente codigo en VB para lograr enviar correos de acuerdo a una condicion. en un rango de correos lista El codigo funciona perfecto, sin embargo, el codigo se monto sobre un ejemplo sencillo, ahora necesito adaptarlo a una hoja mas elabaroda en donde las posiciones de las celdas son distintas NO logro distingir en la lista de instrucciones cuales son las celdas que puedo variar para ajustarlo a la otra hoja. Sub Macro68() '------------------ 'by Cacho Rodríguez '------------------ Dim LD(), C As Range, Q% For Each C In ActiveSheet.ListObjects(1).DataBodyRange.Columns(2).Cells If InStr(LCase(C), "enviar…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 773 visitas
  7. Started by Antonio1099,

    Hola a todos Encontré está macro en Internet, la cual me pareció que me podía funcionar, pero, quizás yo esté haciendo algo mal. Explico lo que necesito: Requiero que a través de este formulario me permita filtrar las celdas que contenga los días que señale, por ejemplo: Filtrar la información del 23/06/2016 al 01/07/2016 y que solamente me muestre la información con este filtro de fechas. Anexo un ejemplo que diseñe. Espero que me puedan apoyar. Prueba Fechas.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 7.3k visitas
  8. Este problema me supera, mis conocimientos en VB son muy basicos, pero de seguro alguno puede resolverlo en menos de 2 min. Necesito una macro que evalue un rango de filas que contienen cada una un correo electronico, si la condicion a evaluar (en un rato comento cual es) se cumple, entonces debe copiar esa direccion o direcciones de correo eltronico y enviar via outlook un correo masivo Tanto el asunto como el cupero del mesaje son iguales, por eso pueden incluirse en alguna celda y tomarlo a aprti de alli, si mas un caso cumple con la condicion entonces se pueden copiar en un solo mensaje todas las direcciones de correo, La condicion …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.4k visitas
  9. Started by zero-x,

    Bueno tengo 2 ficheros iguales , en nombre y se supone que en todo en sus interior , uno funciona el otro no no encuentro diferencias visibles. Necesito construir una macro que abra los dos ficheros y compare lo que esta en las distintas hojas y en la parte de programacion y de haber diferencias que las muestre. gracias

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 560 visitas
  10. Started by egaleano,

    Buen dia amigos Llevaba un tiempo considerable sin aportar ni participar y esta vez vengo a pedirles una orientacion. Cuando realizo busquedas en una base de datos utilizo el siguiente comando basado en un combobox: busq = TextBox1 HojaXX.Visible = xlSheetVisible Set RANGO = HojaXX.Range("a:a").Find(busq) Label1 = HojaXX.Range("G" & RANGO.Row).Value End if Esto es cuando basado en el combo lleno un label o al reves si voy a llenar un campo de una hoja. Pero como hago para llenar un listbox y que basado en los datos insertados vaya a una hoja y los ponga. O sea, por ejemplo. En la linea 1 del listbox introduzco el codigo A con la …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 812 visitas
  11. Started by Callao2908,

    Buenas tardes, en el archivo adjunto explico que es lo que debo obtener como resultado, sin embargo, no me arroja error, pero tampoco me da el resultado que necesito Sheets("Alldata").Cells(jLastrow, 3).Select.FormulaR1C1 = "=IF(LEFT(RC[-2],1)<>""3"", ""D"",""N"")" Sheets("Alldata").Cells(jLastrow, 4).Select.FormulaR1C1 = "=MID(RC[-3],3,1)" Agradeceré se sirvan verificar mi macro Gracias, Saludos Jorge desde Perú Copiar columnas jgbh.xls

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 844 visitas
  12. Started by Javier1978,

    Biuenos dias les mando saludos a todos.... Esperando pueda alguien apoyarme.. envio un archivo con una macro que compara los datos dela columna A con AV estos cuando encuentra que son iguales copia la fila desde la columna B hasta la columna AK y la pega todo ese rango apartir de la columna AY enfrente del dato repetido dela columna AV Pueden ejecutar la macro para que vean lo que explico de como funciona Mi solicitud esta en que si alguien me pueda ayudar a hacer algún arreglo a la macro para que funcione de manera mas rapida lo mas posible ya que ejecutar tengo que ejecutar esta macro en tres hojas de dato…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 720 visitas
  13. buenas e visto muchos vídeos por youtube y estoy realizando un pequeño cuadro de inventario rápido y sencillo, tomando el patrón de uno de los vídeos que e visto e diseñado uno me funciono, pero lo personalice como:les explicotengo 4 pestañas de las cuales 3 las voy a manejar yo y la otra es para que mis empleados lo vean pero no modifiquen nadaen la pestaña producto tengo un botón que con el puedo ingresar datos y le dije a la macro que los quería que se alojaron en la pestaña principio, entrada y existencia eso esta bien no tengo problemas; mi problema es que no quiero que en la pestaña principio me aloje los resultados a partir de la celda A1, sino a partir de la celda…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 862 visitas
  14. Started by Hugo,

    @Macro Antonio, Hola Macro Antonio, Con respecto al archivo del control itv, me surge una incidencia y quisiera pedirte ayuda para resolverla. Veras, en el adjunto (el control itv) tengo un vehículo que no ha pasado la revisión por defectos. En el libro; seria posible una columna en la cual al no pasar la revisión me quedara reflejado ?? como por ejemplo "negativo" o con un botón que puedas que te diga "ACTIVA" , "BAJA". y segundo, esos defectos serian lo suyo que me quedaran reflejados en el libro con una columna de "Observaciones"" Por favor, podrías echarme una mano. un saludo y gracias CONTROL ITV.xlsm

    • 0

      Reacciones de usuarios

    • 23 respuestas
    • 2.7k visitas
  15. En un excel tengo dos hojas, una es la Base de datos y la otra la que quiero que alimente la base de datos. Hasta el momento tengo una macro que me permite consultar los datos de la base de datos, dados un nombre de cliente y un nombre de presupuesto (BOTÓN BUSCAR PRESUPUESTO). Esta funciona muy bien. Luego he creado otra macro que me limpia la hoja para crear un nuevo presupuesto (BOTÓN NUEVO). Lo que necesito es una tercera macro que, o bien, me cree un nuevo presupuesto pegando los datos que yo le informe en la hoja de BBDD o bien que me los modifique en el caso de que ese presupuesto ya exista en la BBDD, mediante el tercer botón (GUARDAR / MODIFICAR). En el…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 649 visitas
  16. Buen dia Tengo un archivo de excel que se genera con un atabla dinamica lo que pretendo con el siguiente codigo es enviar el libro activo pero como valores, solo que no lo consigo por que me marca un Error: Error en el metodo"SaveAS" de objeto_"Workbook" Sub WorksheetLoop2() Dim Current As Worksheet For Each Current In Worksheets Dim attBook$ attBook = Environ("temp") & "\" & Current.[A4].Value & ".xlsx" Current.Copy Cells.Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 852 visitas
  17. Estimados amigos del foro, vuelvo a subir un tema que he diseñado su planteo de diferente manera, pero voy a repetir la explicación de la misma Se trata de un cronograma en el que constan clases teóricas y clases practicas en determinados días por ejemplo las teorías están los lunes y las practicas los martes en las fechas indicadas allí mismo en la tabla, cuando todo esta bien voy marcando los temas en la columna A haciendo notar que la clase ya se ha hecho o cumplido al seleccionar se ve un visto de color verde y la fecha se hace de color verde igualmente, pero si no se pudo ejecutar la clase en una fecha entonces deberá reorganizarse, claro vuelvo a seleccionar e…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 11.3k visitas
  18. Estimados expertos ; Necesito , por favor; realizar un ejercicio bastante complejo, que no se por donde empezar: Debo crear el siguiente formulario, para cargar la base de datos adjunta La zona debe cargarse desde un libro excel que va adjunto a esta consulta La región debe cargarse dependiendo de la zona que se seleccione. El código ciudad se debe cargar dependiendo de la región El botón debe permitir ingresar todos los datos a la planilla El ancho de las columnas debe ser acorde a los datos a ingresar y eso se debe ajustar automaticamente al ejecutar el USERFORM Se debe permitir ingresar los datos sin b…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2k visitas
  19. Hola Hice una macro que me filtra lo que contiene "ATO" en la columna H; si hay, se borran las filas el problema es que cuando bajo mi reporte y no hay "ATO" la macro me borra el titulo, es el mismo caso para la parte donde borra lo que contenga "DUMMY". Si alguien me puede ayudar a solucionar este error estare muy agradecido. Adjunto una porcion del archivo para mejor referencia. Sub MacroPrueba() strArchivo = Application.GetOpenFilename( _ FileFilter:="Excel Files (*.xlsx), *.xlsx", _ FilterIndex:=1, _ Title:="Select: rptProductionCTO") If strArchivo = False Then Exit Sub Workbooks.OpenText Filename:=strArchivo …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.6k visitas
  20. Started by cuadros08,

    Que tal Buen Dia Tengo un problema con crear una macro que se es algo sencilla pero no doy, les explica: Tengo una base de datos donde la columna A es la informacion principal y en ocasiones se repite, la macro tiene que insertar dos filas al termino de cada lista repetida que encuentre (los datos ya estan ordenados). Adjunto un ejemplo, problema en pestaña 1 y como queda en pestaña 2 Gracias. Saludos!!! ejemplo.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3.9k visitas
  21. Started by kler7,

    Hola, quisiera que me ayuden con este tema, como crear un archivo .INI con APIS de Windows ,en la ruta disco C con macros vba excel. La idea es esta: En el formulario debe escribir código de de activación en un textbox y al hacer clic en boton registrar, este debe ser corroborado con el código de una celda de hoja excel, si cumple crea archivo .INI, en la ruta disco C y en las siguientes aperturas del libro verifica el código y ya no se muestre el formulario registro. Caso contrario si no corresponde el código activación y no se registra aun,me siga mostrando el formulario registro. Si es posible se puede agregar tiempo de uso a 15 días si no se registra. Adju…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.3k visitas
  22. Started by REYAZTECO,

    Algún Maestro que me pueda ayudar Como bloquear la tecla menú contextual del teclado en Visual Basic VB, encontré como hacerlo con el ratón, pero necesito bloquear también el botón del teclado. De antemano muchas gracias por el apoyo que me puedan brindar Saludos

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 3.1k visitas
  23. Started by AdolfoGus,

    Amigos, debo vencer mi orgullo y recurrir a Ustedes, les adjunto una planilla de excel que tiene formularios, esta en proceso de elaboración y me encuentro que al "Activar la celda del registro elegido" me da un Error 91 en tiempo de ejecución, Variable de Objeto no establecido. Ingresando por el principal, buscando indices y Buscar, podran ver el error. Gracias desde ya. Gustavo IndiceMoneda.xlsm

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.5k visitas
  24. Started by ELVERKU,

    hola amigos del foro nuevamente despues de mucho tiempo es un gusto estar por aca de nuevo, en macros anteriores busque una macro que tuve que adecuarlo y practicamente me sirve como buscardor por medio de un useform pero tiene un problema la macro corre perfectamente bien hace su funcion correcta pero despues de buscar la informacion requerida al querer buscar otra informacion nueva la macro ya no funciona por lo que tengo que cerrar toda la hoja y volver abrirlo para que funcione les adjunto la macro saludos y como siempre agradesco anticpiadamente su aporte para esta macro busqueda.xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.1k visitas
  25. Started by pablgonz,

    Hola de nuevo, estoy trabajando en una macro para copiar filas y luego ordenarlas (para hacer una análisis estadísticos sobre estas) tengo definido el rango y ya poseo la macro para copiar y filtrara las filas como las deseo. Ahora deseo que , con la misma macro, pueda copiar y ordenar al mismo tiempo. La macro que poseo es ésta: Sub CopyForm() Application.ScreenUpdating = False 'Limpiar datos anteriores Sheets("ANF1").Range("A2:DA46").Cells.ClearContents Sheets("ANF2").Range("A2:DA46").Cells.ClearContents 'Copiamos las claves desde !claves 'Para la Forma 1 Worksheets("claves").Range("B2:CW2").Copy Worksheets("ANF1").Range("E47:CZ47").PasteSpecial xlPasteValu…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.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.