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 chrisspal,

    Por favor solicito su ayuda para poder solucionar un problema que tengo y no he podido dar fin, la situación es la siguiente tengo esta aplicación en la que extraigo una lista de una hoja de excel a un listbox quiero ordenar albabeticamente en el listbox sin modificar las celdas de la hoja ni la información que estas me proporcionan ya que son vitales en el desempeño de la aplicación, y si es posible filtrar los items del listbox por medio de un textbox.. Adjunto ejemplo Gracias por su ayuda ejemploordenar.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.4k visitas
  2. Started by DARKSHADOW,

    Buenas amigos del foro Tengo la siguiente macro que me funciona bien pero no me guarda o imprime el pdf con el nombre de la celda ai1, me podrían ayudar. Ademas me gustaría indicarle donde guardarlo, pero ya para mi eso es muy profundo. Les agradezco su valiosa ayuda [/code]Sub SavePDF() ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, ActivePrinter:="Nitro PDF Creator" Dim filename As String filename = Range("ai1").Value End Sub[/code]

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 5.6k visitas
  3. Started by JaimeDavid,

    Saludos a todos, Ya voy cerca de 4 horas en el foro y no encuentro un tema similar pero si muchos ejemplos que me son de utilidad, al grano; quisiera saber si por medio de una macro de EXCEL en VBA, se pueda crear un archivo *.ZIP , ojo que no comprima ningun archivo o similar, que haga nada, simplemente que cree un archivo *.ZIP vacío. Del mismo procedimiento como crear una carpeta, pero en vez de ello crear un ZIP. Desde ya gracias por su tiempo y a la espera de sus respuestas. PD: no adjunto archivo porque no tengo alguna muestra o similar para adjuntar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 5.4k visitas
  4. Started by marista,

    Estimados Apreciare su apoyo en el siguiente problema, cuento con un libro con 3 hojas las cuales la primera ("Base") me indica los datos generales de los articulos por codigo y diametro, la segunda (ingresos) me registra los ingresos (manualmente por fechas), y la tercera (salidas) me indica las salidas por fechas. Mediante un useform no se si se podria en la hoja "ingresos" que te solicite codigo del producto, fecha y cantidad, y luego de buscarlo pondria en la celda correspondiente la cantidad ingresada en el formulario, y si no encontrase el codigo te permita crearlo en la hoja "base" Adjunto archivo de ejemplo Se agradece el apoyo pregunta 1.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 894 visitas
  5. Buen día compañeros. Estoy empezando a trabajar con macros y tengo un problema que quizá sea fácil de solucionar para ustedes. Necesito una macro que haga basicamente dos cosas: 1) abra un archivo de excel que tiene el mismo formato pero que cambia todos los días de nombre 2) copiar de ese archivo cierta cantidad de información y pasarla a un formulario Por ejemplos: - el archivo hoy se llama APAPCH120712.XLS, lo quiero abrir, tomar algunos datos y copiarlos a mi formulario. - el archivo mañana se llamara APAPCH120713.XLS y requerire lo mismo. - y asi sucesivamente. Gracias anticipadamente por su apoyo y comprensión. SALUDOS A TODOS

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.2k visitas
  6. Tengo una plantilla donde quiero introducir valores según los criterios que yo seleccione yo se que se puede hacer con funciones como índice y coincidir pero yo quiero evitar formulas en la tabla de datos de mi hoja 2, por esta razón me gustaría que fuera con macros en modulo o en formulario. EJEMPLO: Si selecciono prod1 y octubre criterio igual a la "cantidad producida" el valor que introduzca en la celda cantidad pase a la hoja 2 en la comuna Cantidad producida y posición Prod1 y octubre. Si selecciono prod1 y selecciono octubre y criterio igual a "perdida en proceso" el valor que introduzca en la celda cantidad pase a la hoja 2 en la columna perdida en proceso y pos…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 937 visitas
  7. Started by carcid,

    Saludosen la celda b,20 necesito ingresar un contador correlativo que en medida que le ingrese datos comience de 1 en 1 y si pueden necesito que los datos que ingreso, salgan como datos numericos y no como texto. De ante manos Gracias. PRUEBA_001.xltm (1).zip

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.9k visitas
  8. Started by Kunstmann,

    Estimados, favor vuestra ayuda, necesito agregar una casilla de verificación (control de formulario) que al marcarla me marque el resto de casillas (40) que tengo en la hoja, esto para restaurar los datos a su forma original; se que debe hacerce con vba, pero no me manejo. Es decir, tengo una hoja con 40 casillas de verificacion y necesito agregar una que al marcarla marque todas y al desmarcarla las desmarque todas. Quedo atento sus comentarios --------------------------------------------------------- buscando y rebuscando en la web encontre estos 2 codigos, si lo ejecuto por separado funcionan perfectamente, pero no se como unirlos para que funcionen dependiendo del…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.3k visitas
  9. Que tal comunidad me presento rápido mi nombre es Fernando ya es de madrugada y tengo el cerebro un poco ciclado ya jeje vengo a implorar una ayuda acerca de una duda que me surge en estos momentos como concatenar y remarcar en negrita algunos campos. El problema es este: Tengo esta función de concatenar =CONCATENAR("El usuario ",B2, " tiene la ficha ", A2, " y tiene un sueldo de ", O2, " Quincenales")[/CODE] la celda B2 corresponde al nombre de usuario lo único que deseo es saber como remarcarlo en negrita trate de seguir este tutorial y entender macros pero no me resulto nada https://www.ayudaexcel.com/foro/macros-programacion-vba-10/cerrado-concatenar-celda…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.4k visitas
  10. Started by idaira,

    Hola necesito intertar filas automaticamente en excel despues de terminar de rellenar una primera columna,no quisiera perder los enlaces a las demas hojas libro mayor y balance de sumas y saldo y plan general contable. el archivo no lo pude subir porque es de 258kb o algo asi. pero bueno intento explicarlo.el formato del libro diario es de la siguiente manera. nº asiento...fecha....grupo...subgrupo...subcuenta.....concepto....debe....haber 1...............13-5....... 4....... 43.............430.............clientes.....300 2................14-5...... 4........40.............400.............proveedor.............300 ahora explico: -nº de asiento es aut…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2k visitas
  11. Buenas Tardes mi consulta viene a que necesito obtener un valor de distintos libros que tienen celdad semejantes de una hoja de excel a otra hoja de excel ejemplo tengo la hoja1 y el la celda C1 le pongo el nombre de uno de los libros de la hoja 2 y cuando acrtive la macro en el C2 de la hoja1 jale el valor del libro de la hoja 2 gracias osea en un libro 1 con hoja1 tenenemos en las celdas C los nombres de las hojas del libro2 el cual quiero obtener valores de cualquier celda de cada hoja Nueva carpeta.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  12. Started by alitanmdq,

    Hola, les cuento un poco mi problema. Estoy trabajando en una empresa de servicios y mi jefe me pidió que le hiciera una planilla para recordar que servicios hay que hacer en cada día. Los servicios se deben hacer cada un determinado intervalo de días(todo esto esta en la hoja "ver"). Para calcular cuando es el próximo servicio simplemente tomo la fecha del ultimo y le sumo el intervalo y me da cuando debería ser el próximo servicio. El problema surgió cuando arme la segunda hoja ("ingresar fechas"), donde la idea era ir ingresando las fechas en las que se realizan los servicios y que se vayan desplazando hacia la izquierda automáticamente a medida que ingresara las nuev…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1k visitas
  13. Buenos días a todos. Llevo varios días intentando realizar lo siguiente con unas hojas de excel, pero no he sido capaz: Tengo varios miles de registros de pacientes de nuestro hospital en una hoja excel, con varios campos (número de historia clínica, edad, sexo, centro de salud de referencia etc...). Estos datos los hemos sacado de la base de datos de nuestra historia clínica electrónica. El problema es que en muchos de los pacientes hay datos incompletos, es decir, por ejemplo falta el centro de salud, o falta el médico habitual. Cada paciente además puede tener más de un registro, correspondiente a cada una de las visitas a urgencias, ingresos hospitalarios etc... …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.1k visitas
  14. Started by marios25sm,

    Buenas a todos. Hace más de un año ya estoy trabajando con la base de datos que gracias a vuestra ayuda creamos (básicamente la creasteis vosotros). Básicamente es una base de datos de control de stock. Donde se registra las salidas y entradas de material y donde queda registrado cada movimiento. Ahora necesitaría añadir a la base de datos el concepto "Precio". Y que cada movimiento que se genere, al lado de "material" aparezca su precio. Espero me podáis ayudar. Un saludo y muchísimas gracias a todos. INVENTARIO ALMACEN 2012-2.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 809 visitas
  15. Buenas a todos: Estoy empezando en la programación en VBA para Excel y gracias a vuestro foro, estoy aprendiendo bastantes cosillas pero me he quedado atascado con algo y no soy capaz de encontrar la solución. Estoy haciendo, a modo de ejercicio, un sencillo programa que permita al usuario introducir una matriz de dimensión variable para calcular su función inversa. La matriz se escribe desde la celda A4 en adelante y mi idea es que el programa lea el número de columnas con contenido para establecer el orden de la matriz, redimensionar los vectores y calcular la inversa. El programa es el siguiente: Option Base 1 Dim M() As Variant Dim MInv() As Variant Sub Inv…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.9k visitas
  16. Que tal amigos del foro anexo un archivo en el que se puede hacer la busqueda del archivo por coincidencias del nombre, mi duda es si se puede hacer la busqueda tambien por autor aunque no ponga el nombre del archivo o poniendo ambos (autor y nombre del archivo), la otra hace mucho me acuerdo que alguna vez vi que se puede hacer la busqueda por condicionantes esto es que si no lo encontraba en c:, lo buscaba en D:, en esos tiempos A: (que ya no existe en algunas maquinas), etc. con la finalidad de no escribir toda la ruta. Espero poder darme a entender y ante todo un saludo buscar archivos.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.7k visitas
  17. Started by JoseCoppa,

    consultas de un combo box No encuentro la forma de consultar la segunda columna de un combo box (de un registro seleccionado). Ag}lguien que me pueda ayudar con esto

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  18. Buenas tardes a todos, Quiero crear recordatorios para todos los cumpleaños de la empresa donde trabajo. Para esto tengo un listado de excel con toda la información de los empleados y a través de una macro se me ocurrió crear citas en outlook que sean recurrentes de forma anual. Logré armar el código para la creación de la cita pero el problema es que no sé como indicar el lenguaje vba que sea recurrente. Les muestro lo que armé: c = Columna con el nombre del empleado g = columna con la fecha de cumpleaños Sub EstablecerCitasEnOutlook() Dim nOutlook As Object, Cita As Object, _ Fila As Integer, uFila As Integer uFila = Range("a65536").End(xlUp).Row Set nOutlook =…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.7k visitas
  19. Started by fjchavez,

    Buen día, Tengo un requerimiento que no tengo la noción de como ejecutarlo/programarlo. El tema es el siguiente, tengo un archivo excel que se usa en toda la empresa donde trabajo para crear cotizaciones. Este archivo tiene formularios y formulas en sus hojas, ademas una vez terminada una cotización te permite exportarla a xls (sin formulas ni procedimientos) y pdf. Tiene un procedimiento que al abrirlo o cerrarlo te limpia todo lo que si es editable y queda listo para volver a crear una nueva cotización. Entonces el tema es que quiero crear la funcionalidad de poder cargar una cotización antigua a este excel. Obviamente solo quiero cargar ciertos campos ya que no quie…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.2k visitas
  20. Started by Danielr,

    Hola a todos, Necesito ayuda con el siguiente gráfico de burbujas, pues necesito que en la etiqueta de cada burbuja me aparezca el dato que tengo en la columna A, y no las coordenadas x,y,z con la que fue creada cada burbuja. Se que se puede hacer manualmente, pero me han dicho que mediante una macro es posible hacer esto sin necesidad de hacerlo manual una y otra vez. Ejm: la ultima burbuja que se observa tiene el rotulo 44, 7.7, 3 y quisiera que me apareciera una etiqueta con el dato de la columna A que (a14) que dice "D30" Muchas gracias, adjunto el archivo Gráfico Burbújas.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  21. Buenos Noches para todos los compañeros estuve realizando una macro para actualizar 8 tablas dinámicas y al momento de ejecutar la macro me genera un error " Se ha Producido el Error 1004 en tiempo de ejecucion" y me sale error definido por la aplica Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Target.Address <> "$b$5" Then Exit Sub Application.ScreenUpdating = False 'Actualiza las tablas ActiveSheet.PivotTables("TD1").PivotCache.Refresh 'Actualiza el año de todas las tablas dia = Hoja3.Range("B5") ActiveSheet.PivotTables("TD1").PivotFields("Dia").CurrentPage = _ dia ActiveSheet.PivotTables("TD2").PivotFields("Dia").…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.2k visitas
  22. Hola a todos, Soy nuevo aquí, y en realidad es en el primer foro que participo. Quiero dar color a una fila según el criterio de una celda. En la celda TIPO si pongo una M quiero que se me ponga la fila de una color y si pongo M que se ponga de otro. Así en toda la hoja. He intentado seguir vuestros consejos, pero aun soy demasiado torpo para esto. Aquí os adjunto mi hoja TOTAL AÑOS.foro.xls

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.3k visitas
  23. Started by who23,

    Encontre una amcro en el foro de newton raphson la trate de adaptar para una funcion que tengo pero no funciona me sale que es #valor y derive la funcion usando mathematica asiq eu al derivada no croe que este mal peor nsoe que pueda hacer ojala puedna ayudarme les adjunto el arhivo de la macro y de la funcion en word Gracias Newton.zip

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.2k visitas
  24. Estimados, buenas tardes. Tengo una Macro que ubica a una persona en un cuadro o matriz según los siguientes datos. a) Nivel de una persona (puede ir del 2 al 7) Desempeño (NS, NM, CP, SA, EX) c) Estrato (puede ir del 2 al 5) d) Sub-estrato (puede ir del 1 al 3) e) Propósito y Balance emocional (puede ir del 1 al 3) Al ejecutar la macro me funciona bien, solo que deseo generar algo y no estoy pudiendo lograrlo. Lo que quiero es que según sea el valor del "Propósito y Balance emocional" de una persona (1, 2 o 3) pinte el texto de esa persona de un color determinado. Si es 1 (rojo), si es 2 (anaranjado) y finalmente si es 3 (verde) Adjunto el archivo …

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 4.1k visitas
  25. Saludos. El caso es el siguiente: yo comparo el valor de dos celdas y el resultado lo coloco en otra celda. Ejemplo D1=A1-C1. Si el resultado es negativo (por ejemplo -300), quiero que emita una alerta sonora con un mensaje de voz "producción baja". Gracias!

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 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.