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

    Hola que tal? Estoy intentando realizar un contador de manera que vaya sumando o restando un "1" en la celda "DESPLAZA", hasta que se cumpla que la "SUMA (< 32)" de una columna de datos "DESV DESFA" sea <32 y sea el valor más cercano a 32. La celda "DESPLAZA" hace que varíe la columna "REF DESPLA" y a su vez ésta modifica el contenido de "DESV DESFA". Espero haber podido explicarme un poco. Un saludo y gracias. [TABLE=width: 435] [TR] [TD]A[/TD] [TD]B [/TD] [TD]Ref[/TD] [TD]REF DESPLA[/TD] [TD]DESV DESFA[/TD] [/TR] [TR] [TD]100[/TD] [TD]37,2[/TD] [TD]33[/TD] [TD]19[/TD] [TD]0,0[/TD] [/TR] [TR] [TD]125[/TD] [TD]31,4[/TD] [TD]36[/TD] [TD]22[/TD…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.5k visitas
  2. Started by lugosurf,

    Buen Día Estimado German: Me podrian ayudar a optimizar mi excel les comento lo siguiente: Trata de utilizar un contador y una secuencia para mis dos sistemas de trabajo con su respectiva guardia, lo que desea es que ingreso la fecha de inicio y fin Como ejemplo ingreso la guardia A y se generaría de la siguiente manera si estuviera en un sistema 4 x 2 (trabaja 4 dias descansa 2) y el sistema 14 x 7 (trabaja 14 dias y descansa 7) y asi sucesivamente y así con las demas guardias, las guardias son distintas una de la otra como podras observas Algo asi donde D es dia y X es descansa [TABLE=class: cms_table, width: 207] [TR] [/TR] [TR] [/TR] [TR] [TD][/TD] [TD…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.5k visitas
  3. Started by ElmerFigueroa,

    Hola, estoy intentando mostrar un video en un Formulario, cargando una Página HTML pero sin éxito lo que si he logrado es cargar imagen GIF. Anexo Archivo Excel, página HTML y Video mp4 para ver si alguien me puede ayudar. Gracias. video.rar

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.5k visitas
  4. Started by adrianesteban,

    Buenos dias desde Zaragoza, Estoy intentando guardar una hoja en una carpeta que se grabe con el texto que contiene una celda, he estado haciendo pruebas con temas solucionados de aqui y de otros foros y no he llegado a buen puerto con ninguno. Os dejo unos detalles de como lo estoy intentando hacer y el archivo. Desde grabar pedidos se generan dos tipos de albaranes"telefonicos" y "just eat" que pasan a "FACTURA PLANTILLA" para pedidos telefonicos y "FACTURA PLANTILLA (2)" para just eat. A) Intento una macho para que la hoja "FACTURA PLANTILLA" se dispare desde grabar pedidos y vaya a C:\Users\come\Desktop\pedidos\TELEFONICOS y se grabe con la celda F1 de factura "FAC…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  5. Hola: Gracias de antemano por la atención de leerme. Mi problema es que mis macros son muy rudimentarias, por mi falta de formación. Cuando tengo que extraer un dato determinado de otra columna, hoja, libro, etc... Siempre utilizo el mismo sistema: Sub Ejemplo()[/b] Range("AJ2").Select ActiveCell.FormulaR1C1 = _ "=INDEX(CLIENTE_GESTOR!C3,MATCH(RC[-35],CLIENTE_GESTOR!C1,0),1)" A = 2 While Cells(A, 1) <> "" A = A + 1 Wend Range("AJ2").Select Selection.Copy Range(Cells(3, 36), Cells((A - 1), 36)).Select ActiveSheet.Paste Range("AJ:AJ").Copy Range("AJ:AJ").PasteSpecial xlPasteValues Range("AJ:AJ").Replace What:="#N/A", Replacement:=""…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.5k visitas
  6. Muy buenas a todos, He estado leyendo y probando métodos que dais en otras dos consultas muy similares a esta, pero lo único que he conseguido es entrar en un bucle infinito que bloque todo. Os cuento, estoy realizando una pequeña aplicacion en vba y necesito que un determinado día de la semana a una hora que yo le fije, ejecute una macro. Esta macro lo que hace es , dependiendo del valor de una celda (0 o 1) , compara el día actual y si se corresponde el día con el fijado en otra celda, envia un e-mail y eso lo hace bien, si se abriera la hoja de excel todos los días, funcionaría, pero, en teoría el formulario va a quedar siempre abierto y al hacer uso de ont…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.5k visitas
    • 1 seguidor
  7. Started by Armando,

    Muy buen Dia/Noche me suscribi a esta pagina con la intencion de encotrar ayuda pero cuando creo encontrarla me arroja un herror y lo unico que deseo es lo siguiente yo estoy a cargo de un estacionamiento y en ocaciones por cuestion del exceso de trabajo cometo herrores en la cuenta de horas ya que tengo que realizar el conteo mentalmente y no he podido dar con el clave 1 hora de entrada 2 hora de salida tendra que ser la hora actual del systema 3 seleccionar tres rangos de cobro (1.- 30 minutos gratis 2.- 90 minutos gratis y el tercero seria el 100% del tiempo gratis esto es para los clientes VIP) 4 numero de boleto o serie 5 tota…

    • 0

      Reacciones de usuarios

    • 14 respuestas
    • 2.5k visitas
  8. Started by cadavid04,

    Buenos días, soy nuevo en estoy de programar en excel, tengo un macro de evento de una lista desplegable, la cual si se le inserta un valor que no esta en la lista lo agrega automáticamente, aquí esta el código Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$D$5" Then Exit Sub On Error Resume Next fil = Application.WorksheetFunction.Match(Target, Sheets("Hoja2").Columns("B:B"), 0) If fil <> "" Then Exit Sub uf = Sheets("Hoja2").Range("B" & Cells.Rows.Count).End(xlUp).Row + 1 Sheets("Hoja2").Range("B" & uf) = Target Sheets("Hoja2").Range("B5:B" & uf).Sort Key1:=Sheets("Hoja2").Range("B5"…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  9. Buenas soy nuevo en esto de la programación de vba en excel. Tengo un problema con un combobox y queria ver si me podrian ayudar. Necesito que un combobox se llene con la información de la columna A y otro combobox con la información de la columna B. Pero necesito que cada vez que se agregue información nueva en estas columnas esta aparezca en el combobox. Por eso no quiero usar el rowsource sino codigo. Tengo lo siguiente Private sub userform_initialize () Sheets ("variables").select Range ("A2").select While activecell <>"" Combobox1.additem activecell Activecell.offset (1, 0).select Wend End sub O tambien tengo Private sub userform_initialize () Sheet…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.5k visitas
  10. Started by Moises Echavarria,

    Buen día compañeros: Quisiera pedirles una ayuda de como crear una tabla dinamica y una macro para realizar un un resumen del consumo por unidad/mes en pesos, litros y el porcentaje del incremento o decremento, de tal manera que me sirva para ir midiendo cuales son los vehiculos que mas consumen y determinar la razón. Abjunto archivo para que me puedan ayudar. Saludos CONTROL VALES COMBUSTIBLE.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.5k visitas
  11. Espero me puedan ayudar con lo siguiente, al descargar una informacion de la pagina web( crtl+e, ctrl+c, ctrl+v) se descarga una tabla con la informacion almacenada de dos maneras, una en las celdas de manera regular y la otra en cuadros de texto, son serca de 1000 cuadros y para manipular esa informacion se hace muy tardado hacerlo una por una, de que manera podria extraerla toda sin la necesidad de hacerlo manual?, adjunto excel para ilustrar problematica, saludos! Libro21.xlsx

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.5k visitas
    • 1 seguidor
  12. Hola gente acudo a ustedes ya que realmente no se que hacer; tengo un userform que al ingresar "x" valor en el textbox1 buscara en la base de datos especificada y devolvera el resultado en textbox2. Si bien el formulario funciona, lo hace solo si busco numeros, es decir si busco el numero "1" me devuelve corretamente el valor que necesito, pero si busco por ejemplo "una palabra" ya no la encuentra. el código es el siguiente Private Sub CommandButton1_Click() On Error GoTo error: nombre = Application.WorksheetFunction.VLookup(VBA.CInt(Me.TextBox1), Sheets("datos").Range("A:B"), 2, 0) Me.TextBox2 = nombre: Exit Sub error: Me.TextBox1 = "": Me.TextBox2 = "" Me.T…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  13. Started by dkvs,

    Buenas tardes! Soy nueva en el foro ya que comence hace poco a trabajar con Excel. Hace unos dias que necesito reemplazar valores de varias planillas para poder subir a una pagina web. El problema es que son miles de productos a los cuales debo agregarles sus colores principales por medios de codigos que solicita la pagina para poder realizar un filtro. Tengo dos hojas, en una todos los productos por talle donde ingreso el color primario y la segunda hoja, los colores que quiero reemplazar por su respectivo código: https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-xlp1/t31.0-8/14311264_1659514134359551_3946213478181993442_o.jpg https://fbcdn-sphotos-…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.5k visitas
  14. Started by mcastillo32,

    Hola a todos, tengo el siguiente problema que me gustaria me pudiesen ayudar tengo una hoja en la cual realizo consulta a BD SQL, hasta el momento logre conectarme a la base de datos y rescatar la informacion que necesito el problema es que cuando filtro por fechas mediante DTPicker y consulto por Ej. por el dia 04-12-2012 el resultado que obtengo son los datos del 12-04-2012. El problema es que considera los 2 primeros digitos como el mes y los segundos como el dia y no he logrado solucionar esto. le pido por favor si me pudieran ayudar. Saludos Libro3.rar

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 2.5k visitas
  15. Estimados amigos: En un archivo Excel tengo una tabla de datos bastanteextensa que importo de otra aplicación y genera un archivo con numerosas hojasy miles de registros. A modo de ejemplo os adjunto un libro que ya contiene unamacro que me permite eliminar filas de manera aleatoria en función de un rangoseleccionado: desde fila, hasta fila y el número de líneas que se deseanborrar,pero necesitaría concretar más la macro y que haga también lo siguiente:Que para una hoja concreta, seleccionando una columna y un concepto existenteen celdas de esa columna, y un importe sumatorio de valores de otra columna quecumplan ese criterio, me borre aleatoriamente filas hasta obtener…

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 2.5k visitas
  16. Started by chapis14,

    Hola! Exelente foro, tengo un problema ya que no puedo correr el bucle, bueno explico lo que quiero hacer, tengo varias columnas y de las cuales cada fila cuenta con un valor diferente, en una nueva columna se debe sacar el numero mayor de cada fila, despuès de eso en otra columna se debe hacer con un bucle la resta del numero mayor con cada una de las columnas y cada que sea 0 asignar un nombre, pero me sale el error 1004. este es el codigo: f = 1 For Each o In Range("R2:R6362").Cells Nombre = "" b = 0 f = f + 1 For porce = 0 To 7 Set a = Worksheets("ejemplos").Cells(f, porce) a = a + 1 If (o = 0) Then o.Value = "Sin datos" Nombre = o.Value End If If (o.Va…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.5k visitas
  17. Buen día estimados, Solicito su valioso apoyo para orientarme con lo siguiente: Quiero copiar un archivo Excel de una carpeta a otra por medio de una macro, sin embargo este proceso lo realizan diferentes usuarios por lo que el directorio del archivo cambia de acuerdo al usuario de red, tengo el siguiente código VBA pero no funciona: FileCopy "C:\Users\%Username%\Documents\SAP\SAP GUI\MB5L.xls", ThisWorkbook.Path & "\MB5L.xls" %Username% puede ser Rodrigo, Lorena, etc. Gracias de antemano por su apoyo.

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.5k visitas
  18. Started by segun,

    Buenas noches a todos; Aquí traigo una consulta, tiene que ver con la posibilidad de actualizar una tabla en Excel a partir de una tabla (o una consulta en Access), creo que la forma de hacerlo sería mediante ADO. He probado a hacerlo mediante los botones de formulario en datos, pero me encuentro con el problema de que al tener el archivo de Access una contraseña siempre aparece la ventana conexión pidiendo usuario (admin) y contraseña. Como no quiero que aparezca esa ventana ni la posibilidad de que se vea ningún tipo de contraseña, creo que la mejor opción sería mediante ADO. La base de Access tiene contraseña (la tiene que tener) y es 123 He visto algunas consultas …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 2.5k visitas
  19. Buenos días, tengo el siguiente código que intenta copiar el mismo rango desde el archivo "DATOS DEL SISTEMA" hacia el archivo "Escenario" en la hoja Datos, siempre y cuando el nombre de la hoja del primero sea igual al encabezado de columna de la hoja Datos del segundo archivo, la intención es que si falta alguna variable el proceso no se detenga y salte al siguiente con datos, y luego en el archivo Escenario, elimine las columnas que queden sin datos, ya que no todos los días hay datos para todas las variables, esto cambia día a día. Necesito que en la hoja datos solo aparezcan las columnas en forma consecutiva co n las que tengan información. El problema es que la macr…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.5k visitas
  20. Started by nanojs,

    Bueno antes que todo agradecer por la ayuda que brindan a los que no sabemos tanto de excel , ahora manos a la obra : Lo que necesito es saber si existe una macro para que imprima una hoja en PDF , adjunte y luego se envie a un correo por outlook , a una direccion ya definida , que el asunto sea lo que se escriba en la celda E1 , de ante mano muchas gracias agosto1.xls

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.5k visitas
  21. Buenas tardes tengo un problema que no he sabido solucionar preguntándole a San Google. A ver si me podeis echar una mano. Tengo diferentes archivos de excel denominados con los nombre de cada trabajador. En ellos van apuntando sus actuaciones de trabajo y son personales y mensuales. A final de mes me los envían y me gustaría tenerlos unificados en uno sólo para luego tener una tabla dinamica global. NO quiero que todos utilicen el mismo archivo sino que cada uno tenga el suyo. He creado un archivo separado denominado "Control general de horas" donde quiero que me inserte todos los campos de los distintos archivos que los trabajadores han ido creando. en este caso "L…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.5k visitas
  22. me explico.... 1111 alex colombia 24 2222 daniel peru 26 que código puedo ocupar en un botón de visual basic para buscar la fila que tiene el código 1111 y elimine la fila completa? (osea elimine el 1111 alex, colombia y 24) la idea es hacerlo desde un botón dentro de un formulario. espero alguien me pueda dar el código o referencias. Muchas gracias

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.5k visitas
  23. Started by vmjmb,

    Buenas tardes, Estoy seguro que me podran ayudar con esto tengo un problema con el boton guardar, es para un historial de facturas no me resulta nose si alguien lo puede revisar y me dice que pasa dejo el documento anexo en la hoja datos esta el programita. es para guaradar un registro de ventas gracias. cotizacion victor 1.rar

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 2.5k visitas
  24. Started by manus,

    Buenas a todos, Estoy buscando como evitar que sin necesidad de proteger una hoja evite que copien y peguen formulas. Encontré esto Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.CutCopyMode = False End Sub [/CODE] Pero permite que se arrastre una formula. Es posible evitar que se arrastre una formula?? Saludos y gracias de antemano!

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.5k visitas
  25. Buenas tardes, En una hoja tengo dos columnas, la primera con las rutas completas de 14000 archivos, que tienen distintas ubicaciones. Y la segunda, con las carpetas donde tengo que copiar estos archivos. Es decir, el archivo cuya ruta está en A2, tengo que copiarlo en la ruta indicada en B2, igual A3 - B3, y así sucesivamente. He intentado algunas cosas con CopyFile, pero sinceramente no tengo mucha idea, y sólo consigo copiar un archivo, vamos nada. Necesito que me indiquen como hacer una macro que los copiase o moviese de una sola vez. He subido un ejemplo con unos pocos registros. Un saludo. Ejemplo.rar

    • 0

      Reacciones de usuarios

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