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. Hola a todos. Estoy haciendo en un archivo Excel habilitado para macros una clasificación por equipos de unas pruebas multideporte. Este archivo Excel contiene dos hojas: “Clasificación INDIVIDUAL” Y “Equipos”. En la hoja “Clasificación INDIVIDUAL” se recogen los resultados de los equipos en diferentes pruebas: FUTBOL, BALONMANO, BALONCESTO, SALTO VERTICAL (2 INTENTOS) y SALTO DE LONGITUD (2 INTENTOS). Cada equipo está compuesto por 5 jugadores. La suma de la puntuación de cada equipo se obtiene mediante la función “=SUMA…” al final de las puntuaciones de los participantes de cada equipo. La hoja “Equipos” tiene dos botones. El primero de ellos, llamado “Su…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 457 visitas
    • 1 seguidor
  2. Hola a todos: ¿Podrían ayudarme con esto? Ya he tratado de distintos modos sin éxito. En la celda G7, debo atregar un folio de documento, pero a ese folio (dependiendo del mes) se le debe agregar el numero del mes y el año. Entonces, el folio es "2457" y el mes es "02" y el año "23", por lo tanto en la celda G7 yo debo escribir "AC0223-2457" La idea es que solo se capture el folio "2457" y que automáticamente se agrege "AC0223-" Ya intente con una macro que agrege el texto cuando se modifique la celda, pero cuando la macro agrega el texto se está volviendo a modificar la celda y se cicla el proceso. ¿alguna idea? Les agradezco de antemano su apoyo. …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 457 visitas
    • 1 seguidor
  3. Hola, primero indicar que soy un novato y estoy aprendiendo con Excel. Tengo un formulario para añadir filas a una tabla llamada "Clientes". Me ocurre una cosa curiosa y es que aparentemente la macro ha funcionado y funciona bien salvo que ahora, cuando se ejecuta la macro, al añadir la última fila a la tabla, me da el siguiente error a pesar de no estar ninguna hoja protegida: Cuando se ejecuta la macro sale este error y se para en la línea: "Set Nuevafila2 = Tabla.ListRows.Add" llegando a añadir la última línea a la tabla. Cuando se ejecuta la macro sale este error y se para en la línea: "Set Nuevafila2 = Tabla.ListRows.Add" llegando a añadir la úl…

    • 1

      Reacciones de usuarios

    • 3 respuestas
    • 457 visitas
    • 2 seguidores
  4. Buenos días tengo un formulario que me muestra el proceso de mis solicitudes de mantenimiento por porcentaje necesito que el me diga que la tarea esta terminada al momento que se habrá el formulario y detecte el 100 en el textbox con un msgbox pero no se como hacerlo soy muy nuevo en esto alguien que me explique por favor. GESTION DE MANTENIMIENTO.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 457 visitas
  5. Tengo un combobox integrado en una hoja de excel, y también tengo un textbox integrado en la misma hoja. No se como decirle al combobox que me limpie el textbox . Con uno integrado en un formulario es fácil, pero integrado en la hoja... Gracias

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 456 visitas
    • 1 seguidor
  6. Started by MMGR,

    Quiero crear una macro que entregue el consultor que debe ejecutar el proyecto tomando en cuenta la carga de trabajo y los conocimientos de cada consultor. Estoy adjuntando un excel para que se entienda mejor: - En la pestaña "Proyectos" se puede ver los proyectos en los que está trabajando o debe trabajar cada consultor. - En la pestaña "Consultores" se puede ver a qué hora se va a desocupar cada consultor (la información la jala de la pestaña "Proyectos") y el nivel de cada consultor (sirve para limitar el tipo de proyectos en los que puede participar). - Por último en la pestaña "Determinar consultor" uno debe seleccionar los trabajos del nuevo proyecto y en base a…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 456 visitas
  7. Started by MarianoCruz,

    Hola buenas tardes. tengo un archivo que me ayuda a copiar diferentes archivos que tengo listado en una hoja de excel. todo funciona bien, pero tengo un problema, ya que dentro de mi estructura le indico que despues de hacer el copiado del archivo o archivos debe abrir la carpeta en donde se han copiado los archivos. El problema es que me abre varias veces la carpeta, según sea el número de archivos que he copiado. ejemplo: si copia 6 archivos abre la carpeta 6 veces y así según los números de archivos seleccionados. y solo necesito abrir la carpeta después de hacer el copiado. (solo mostrarlo una vez) Muchas gracias mueve archivos y a…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 455 visitas
    • 2 seguidores
  8. Started by Luis Heredia,

    Buenas tardes comunidad, me presento, soy Luis, estoy apenas comenzando a adentrarme en el mundo de las macros VBA, y estoy varado con la siguiente situacion: Tengo un formulario en el cual voy a realizar un filtrado de productos para luego de ese filtro resultante, seleccionar un producto y llevarlo a otro formulario (facturacion), estoy usando filtro avanzado, y el criterio de filtro lo tomo de un texbox, y el resultado lo mando a copiar en una hoja de excel, no me esta funcionando me da un error. Aca las lineas de codigo y el error De antemano muchas gracias por la ayuda que puedan aportar. Saludos

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 455 visitas
  9. Started by MarcoP,

    F22.xlsm Buenas noches un fraternal saludo. Tengo el siguiente código del que necesito encontrar la forma de que no me dé un resultado indeseado que obtengo. Sub MFD() ' ' ' P3FD1 Macro Dim fin As Long, final As Long Dim i As Long, j As Long, n As Long With Sheets("FD") ' With ThisWorkbook.Worksheets("Datos") fin = Application.CountA(.Range("A:A")) final = Application.CountA(.Range("1:1")) For i = 1 To final - 1 scadena = vbNullString n = .Cells(1, i + 1) For j = 1 To fin If .Cells(j, i) = n Then .Cells(j, i).Interior.Color = vbBlack If .Cells(j, i) = n Then .Cells(j, i).Font.Color = vbRed scadena = Trim(scadena & " " …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 454 visitas
    • 1 seguidor
  10. Started by MarianoCruz,

    Hola buenos días. Tengo un archivo con la que trabajo constantemente, una hoja donde ingreso muchos datos de otra hoja. Con una formula compuesta me funciona muy bien, el problema es que tengo que estar borrando los datos para actualizarlo con nuevos. y tengo que estar pegando esta formula cada vez que actualizo. Con la macro quiero lograr que esta formula se pegue unicamente en donde halla datos. Trate de hacer la macro para que me ponga dicha formula (en inglés) Espero me puedan ayudar. Gracias Mariano MAcro buscar indirecto.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 454 visitas
    • 1 seguidor
  11. Tengo un formulario muy util que incrementa valores preestablecidos y los exporta a otra hoja. El problema es que necesito que queden en la segunda fila de una hoja y sin embargo la macro me los reordena. Necesito esa ubicación porque otra macro trabajará desde alli. Gracias incrementar_numero.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 454 visitas
  12. Buenas tardes El libro que estoy compartiendo ya es producto de alguien que alguna vez me ayudó en el foro. Pero necesito perfeccionarlo un poco más. Hago 3 consultas al respecto. Gracias por el apoyo de siempre Rubén Cargar Facturas 01.xlsm

    • 1

      Reacciones de usuarios

    • 2 respuestas
    • 454 visitas
    • 2 seguidores
  13. Estimados, muy buenas les solicito ayuda con este problema, el caso es que tengo una tabla en donde cargo con datos y la vez tengo otra hoja en donde a través de formulas llamo estos datos para darle formato de publicidad. Me gustaría hacerlo masivo, o sea cargar mas de 300 filas en la tabla, por ende debo elaborar mas de 1000 llamados en la otra hoja para que se carguen los datos lo cual resulta tedioso no imposible. Existe algún método en macro, en donde uno cargue los datos en la tabla y la vez se genere formato en la otra hoja de a cuerdo a la cantidad de datos que están(en la tabla). Se agradece cualquier ayuda de antemano GENERADOR.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 454 visitas
    • 2 seguidores
  14. Started by eroluis,

    Muy buen día a todos los miembros de esta comunidad. Les expongo mi duda: Tengo un libro con Hoja 1 - Hoja 2 - Hoja X El libro tiene un userform con un combobox y un listbox El listbox muestra la base de datos que está en hoja 1 el combobox filtra la información que muestra el listbox el listbox es multiselect mi duda Hay algún método o código standard para capturar las filas seleccionadas del listbox (que están filtradas por el combobox), Copiarla(s) y pegarlas en la hoja 2 (no es importante el orden) y además elimina…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 454 visitas
  15. Hola Estoy trabajando en un aplicativo para almacenar una información en una hoja de calculo de Excel. Lo que quiero es que después de determinado tiempo se me guarde una copia de los datos ingresados y se cree un archivo en blanco para comenzar de nuevo a ingresar los datos.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 453 visitas
  16. ¡Buenas tardes a todos! Necesito su ayuda para automatizar una tarea semanal en Excel. Tengo un archivo de Excel que consta de cinco hojas: una hoja de datos del mes en curso y cuatro hojas fijas (Mar principales, Aire principales, Mar secundarias y Aire secundarias) que deben completarse según la hoja de datos del mes. La hoja de datos del mes tiene varias columnas, pero las importantes son F, G, H, I, L, N, Q y R, ya que determinan la clasificación y el contenido de las otras hojas. Quiero crear un botón en la hoja de datos del mes (Abril'23) que genere automáticamente los resultados en las hojas (Mar principales, Aire principales, Mar secundarias y Aire secun…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 453 visitas
    • 2 seguidores
  17. Buenas tardes, mi actual tabla es de la siguiente forma: Mi actual macro hace que quede de la siguiente forma: Mi consulta es la siguiente: ¿como puedo modificar el código que tengo cuando me aparece de la siguiente manera? Y que me quede algo así: Agradecimiento a [uSER=113842]@johnmpl[/uSER] por el apoyo brindado anteriormente. Libro2.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 452 visitas
  18. Started by alfsanchez880,

    Os cuento, he realizado una encuesta en forms y eso me genera un excel que adjunto. En función de las respuestas quiero dar pesos, os cuento mi idea Consta de 8-9 preguntas ( dependiendo de la respuesta en la pregunta 7 se abre o no una pregunta adicional) 5 obligatorias y 4 opcionales. De las 5 obligatorias el máximo que se puede obtener son 100 puntos. La 4 opcionales dará un máximo de 10 puntos si se molestan en contestar (2,5 cada una) La pregunta 9, adicionalmente servirá para otorgar los premios del reto. Puntuación máxima 110 puntos Pregunta 1 Ordena por prioridad qué es lo que más te motiva para pertenerce al programa YOU …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 452 visitas
    • 1 seguidor
  19. Started by Jorge23951,

    Hola, necesito crear de alguna manera que los datos ingresados en una celda vuelvan a ser ingresados y si no es el mismo que se ingreso la primera ves genere error hasta que sea el mismo ingresado anteriormente

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 452 visitas
  20. Hola espero me puedan ayudar. Tengo un proyecto que extrae información desde base de datos de SQL a excel, se requiere hacer una copia de unas celdas en la misma hoja, el problema lo tengo ya que no me muestra la información que se extrajo para seleccionar las celdas a copiar ya que cuando la macro pide el rango de celdas, no se ve la información y no se puede seleccionar hasta donde quedó la información. Espero me puedan ayudar Gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 451 visitas
    • 1 seguidor
  21. Started by oganam,

    Hola que tal? espero que se encuentren bien. Se me presentó el problema, cloné un proyecto que funciona bien solo que esta vez adicioné un boton de "ALTA CLIENTE" con un nuevo formulario, y cada vez que ejecuto botón "VOLVER" con: Unload Me UserForm.Show se cierran todos los formularios. Espero me puedan ayudar, saludos

    • 1

      Reacciones de usuarios

    • 2 respuestas
    • 450 visitas
    • 2 seguidores
  22. Buenos días a todos, soy nuevo aquí y como no he sabido encontrar donde presentarme, lo haré en éste mensaje. Me llamo Mauricio y realizo normalmente programación en php y javascript. Tengo un cliente que me ha pedido ayuda en la programación de un Macros para enviar los avisos de las citas que tiene en su Clínica Dental a través de un programa descarga a diario esas cita. Ha logrado enviar los mensajes por whats app, pero sólo en el primer archivo original que creó. Luego cada vez que ha querido repetir el proceso no ha podido. El Macros indica un error en la sintaxis, pero no sabemos cual es ese error. El proceso es el siguiente: Cuando descarga el archiv…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 449 visitas
  23. Expertos buenos días, tengo un código que debe modificar desde la columna C por la columna A y B es otro tabla, pero todas las veces que lo modifica lo pone en el encabezado, per que siempre he usado ese código en cualquier formulario y normal me funcionaba pero aquí en este archivo no me funciona, los voy mostrar el código por que no puedo subir el archivo Private Sub Btn_Modificar_Click() If TextBox1.Value = -1 Then MsgBox "Falta ingresar la posición del deportista.", vbInformation, "Sistema de Monitoreo" Exit Sub End If With Hoja2 If Btn_Modificar.Visible = True Then Fila = ListBox1.ListIndex + 2 Else Fila = .Rang…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 449 visitas
  24. Started by Pedro Alonso,

    Hola EXCELENTES. Heredé este código. Yo no tengo NI IDEA de programación. Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo errorfecha If Not Intersect(Target, Range("A1830")) Is Nothing Then If Range("A1830").Value <> "" Then If Application.WorksheetFunction.Weekday(Range("A1830").Value, 2) >= 6 Then On Error GoTo 0 MsgBox "No puede ser sábado o domingo", vbCritical Range("A1830").EntireRow.Delete Range("A1830").Select ElseIf (Range("A1830").Value < Date - 7 Or Range("A1830").Value &gt…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 448 visitas
    • 1 seguidor
  25. buenos días, tengo un tarificador de primas que me he quedado estancada por la funcion if dentro de un commandbutton. me explico: en la hoja excel tengo un cuadro combinado con tres valores (2010,2011,2012) según el año que elijas dará prima tanto de hombre como de mujer, en las celdas B12 y C12 respectivamente, los valores de los años 2010 y 2011 son la misma tanto para hombre como para mujer, pero la del 2012 la prima varía. una vez facilitada la prima, ésta debe pegarse en la hoja PRES que es un presupuesto que debe imprimirse. he creado un boton de comando y con la funcion If verifica la condición si B12<>C12 preguntar con un inputbox el sexo y una ve…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 448 visitas
    • 1 seguidor

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.