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

    Una buena tarde comunidad de ayuda en excel, les cuento que realice una hoja en excel que contiene código Vba para realizar funciones automáticas, además de recuperar datos de una hoja en excel a otra hoja en el mismo libro, pero cuando le subí a Sharepoint para compartir a las personas que deben digitar información, me sale un mensaje que los macros o código Vba no funciona de forma online o en la web, que debo hacer, mil gracias.

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 480 visitas
    • 2 seguidores
  2. Hola estimados, nuevamente solicitando su ayuda. En este archivo quiero implementar una búsqueda inteligente en un ListBox (Fact1) aplicando entre dos rangos de fechas usando dos TextBox (Fech_InicioFact y Fech_FinalFact), con 2 condiciones; que sean de clase de Documento (DF) y que el Comité no sea Vigente. La busqueda inteligente o normal debe efectuarse al hacer Enter en el segundo TextBox (Fech_FinalFact) Para activar el formulario hay que hacer lo siguiente: Seleccionar celda A4("Cuenta") de la hoja Resumen Cart-Cli para activar UserForm1. Después haciendo click en cualquiera de las celdas de Cuenta en la columna (“A5:A57”) cargar de registros al UserF…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 782 visitas
    • 2 seguidores
  3. Started by 96andres96,

    Buenas tardes, quisiera que cuando ejecuto una macro esta me escriba en una celda el nombre de una tabla para que la muestre en esa celda. Es decir, si tengo una tabla que va de "A1:B2" llamada TABLA. Si yo escribo de forma manual en la celda C5: "=TABLA", se me muestra la tabla. Pues bien, yo quiero poder hacer esto con VBA. Es decir, que la celda C5 esté vacía pero al ejecutar una macro se escriba en C5: "=TABLA" para que ahí se me muestre la tabla. El problema es que cuando intento hacerlo, en lugar de en C5 escribirse "=TABLA" se me escribe "@TABLA" y no sé cómo poder solucionarlo. Tengo esta línea de código: Sheets("Hoja").Range("C5") = "=TABLA" …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1k visitas
    • 2 seguidores
  4. Started by exceldata,

    Estoy en búsqueda de una hoja de excel que me permita llevar la contabilidad de préstamos sin tener que gastar en un software para prestamistas. Lo que busco es poder llevar las operaciones de un pequeño negocio de financiamiento en el cual estoy incursando sin tener que gastar dinero mientras aprendo bien el negocio. Me gustaría encontrar un template de Excel que esté bien completo por lo que me permitiría hacer cálculos de préstamos, procesar cobros de cuotas, moras, y costos, y organizar los préstamos en base a carteras y clase de préstamos. Dentro de las funciones que busco este template debe incluir: Múltiple frecuencia de pagos y métodos de cálculos cuando se …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 423 visitas
    • 1 seguidor
  5. Buena noche foristas. Quisiera solicitar su apoyo para ver si puedo solucionar el siguiente inconveniente. Estoy trabajando unas tablas que permitirán llevar un mejor control de verduras. He avanzado un poco, pero actualmente estoy parado en lo siguiente: A partir de la celdas B3:C3 enlisto las verduras de la semana, el cual es un listado variable. Para el ejemplo, tengo 4 verduras, y lo que quisiera hacer es que con una macro, se copie estas verduras que ingresaron esta semana, y por cada verdura, se incerte en la columna anexa 4 parámetros dispuestos en fila, como son: Orígen, Variedad, Peso y el Vendedor. Además, mentener un estilo de borde, el cual describ…

    • 0

      Reacciones de usuarios

    • 12 respuestas
    • 568 visitas
    • 1 seguidor
  6. Hola a todos, Estoy atascado en algo que debería ser sencillo, pero no lo consigo sacar por más que busco. Tengo un archivo el cual primero inserta 2 columnas a la derecha de una columna llamada "fRateBatcher"), después inserta unas formulas en las Offset(0 , 1), y después debe buscar donde el rango donde se han asignado las fórmulas (como ejemplo A3:B3) y copiar/pegar formula con ese rango variable hasta last row. Mi problema está siendo que no consigo encontrar el Range ya que el rango puede variar en columa, aunque no en fila. Este es el código que tengo ahora: Sub SANCMARC_Magic() Dim rng As Range Set rng = Range("A11:CDD11").Find("fRateBatch…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 437 visitas
    • 1 seguidor
  7. Started by Mustabante,

    Trienios-Quinquenios.xlsx Hola a todos, he buscado por los mensajes del foro y he encontrado a alguien que tenía el mismo problema que tengo yo, de hecho, no se si trabajaremos incluso en el mismo sector. Resumiendo mucho sería, introduciendo en una celda la fecha inicial del mi contrato (Antigüedad), me devuelva en otra los trienios que tengo hasta lo que llaman fecha de maduración del trienio (31/12/96) y en otra los quinquenios que tengo desde que he cumplido el último trienio hasta la actualidad. He encontrado esto en el foro: https://ayudaexcel.com/foro/topic/21669-ayuda-con-error-al-salir-de-la-hoja-en-visual-¿-alguien-me-lo-puede-mirar/?do=findCommen…

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 5.7k visitas
    • 1 seguidor
  8. Started by Jose BN,

    Buenos días, Amigos del foro quisiera solicitarles una pequeña ayuda, estoy intentado crear 3 condiciones en un botón de un formulario con el cual pretendo ó busco: 1. No se permita registrar en vacío un textbox. 2. Se evalue el formato si el valor ingresado en el textbox1 se encuentra en formato fecha. 3. Si el valor ingresado en textbox1 es mayor a la fecha determinada no permita el registro. 4. Se¿i el valor del texbox1 es menor a la fecha determinada cargar el valor en la celda indicada. El formulario cuenta con 3 textboxs y 3 botones para ejecutar las 4 acciones (mencionadas arriba), agradezco la ayuda y/o correcciones que me puedan brin…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1k visitas
    • 2 seguidores
  9. Started by eljadi,

    Hola, Tengo la necesidad de combinar los registros de una matriz (las filas) creando una nueva matriz en otra hoja con el doble de campos (las columnas originales y las resultante de la combinación) de forma que cada registro original se combine con todos los subsiguientes de la matriz. Como ejemplo, si tengo una matriz de 3 campos y 5 registros como la que pongo acontinuación: C-1 C-2 C-3 A B C D E F G H I J K L M N O Necesito una fórmula de excel …

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.9k visitas
    • 2 seguidores
  10. Started by Mohamad Marrawi Marrawi,

    Buenas tardes, Tengo este fragmento de código en el libro, de manera que cada vez que introduzco un valor en una celda de la columna B, me devuelve la fecha en la celda adyacente de la columna C. Me gustaría repetir la misma operación en el mismo libro, de manera que cuando se introduce un valor en las celdas de las columnas E y H, también devuelva las fechas en las celdas adyacentes de las columnas F e I. ¿Alguien sabría indicarme cómo repetir la misma operación? Private Sub Worksheet_Change(ByVal Target As Range) tiempo = Date Set isect = Application.Intersect(Target, Range("B:B")) If Not isect Is Nothing Then If isect.Va…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 653 visitas
    • 1 seguidor
  11. Started by Mohamad Marrawi Marrawi,

    Buenas tardes, Después de activar la pestaña "Programador", veo que el Visual Basic está deshabilitado. He probado a habilitarlo de muchas maneras y no sé qué más hacer. Incluso tengo instalado el Visual Studio. Adjunto unas cuantas imágenes. ¿alguien sabría decirme qué estoy haciendo mal o dónde está el problema? Gracias

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 800 visitas
    • 3 seguidores
  12. Hola a todos, Para una simulación docente utilizo un archivo de Excel que contiene columnas pareadas de datos que forman grupos. Adjunto archivo con datos y código para se entienda mejor lo que tengo y lo que necesito. Con esos datos quiero: · Que en determinados puntos de cada par de columnas (mismo color) se permuten datos de forma aleatoria. · Que el resultado el proceso de permuta se copie en una nueva ubicación. · Que el proceso se realice para todos los grupos de datos hasta acabar. Que es lo que tengo: · He escrito una macro que realiza correctamente todo el proceso (está en el archivo y contiene comentario…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 743 visitas
    • 1 seguidor
  13. Started by cesarmontenegro,

    Buen diaSolicitando su ayudaComo puedo listar carpetas en comboboxEn el primer combobox1 aparezcan listadas dos carpetas (ENTRADAS Y SALIDAS)Luego al seleccionar cualquiera de las dos anteriores aparezcan listadas las subcarpetas en el combobox2Al seleccionar cualquier subcarpeta del combobox2 aparezcan en el listbox1 los archivos pdf que contiene la carpeta seleccionada.Más o menos así espero su ayudagracias ---------

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 676 visitas
    • 1 seguidor
  14. Started by Marielos Gil,

    buenos días quisiera su ayuda para poder realizar un formato condicional utilizando VBA tengo una lista de códigos en la columna P y una tabla de registros donde quisiera que los registros tuvieran una fuente azul si el código aparece en la lista gracias por su ayuda FORMATO PARA CODIGOS.xlsx

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 471 visitas
    • 1 seguidor
  15. 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
    • 456 visitas
    • 1 seguidor
  16. Started by Wolfor47,

    Buenas noches. Quería preguntar si es posible incluir un buscador dentro de un dashboard teniendo en cuenta que solo quiero incluir algunos parámetros (nombre, DNI, Categoría y otro más, hasta un total de 4) de todos los que tiene la tabla dinámica situada en otra hoja. ¿Tengo que exportar todos los datos al propio dashboard? Mi idea es que todo los datos se mantengan en la una hoja y que en el dashboard (otra hoja) tan solo aparezcan los que cumplan con los requisitos que se incluyen en el propio buscador.......Es la primera pregunta que lanzo y quiero pedir disculpas porque he visto que hay que adjuntar archivo, pero tiene datos personales y por la protección de datos e…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 548 visitas
    • 1 seguidor
  17. Estoy trabajando un archivo de biblioteca para el cual ya me han ayudado anteriormente con un ListBox y con un formulario para Mantenimiento de Listas, lo que me ha servido muchísimo y de lo cual estoy muy agradecido de los miembros Antoni y JSDJSD, en esta oportunidad he agregado al objeto "ThisWorbook" las instrucciones "Application.Visible = False" y "FRMPanel.Show" para que al usuario le muestre solo el formulario "Panel" desde donde podrá realizar la gestión de la biblioteca, ocultando la aplicación Excel a su vista. La contraseña del proyecto es "biblio" Además he agregado al formulario un botón de comando para hacer visible Excel, el que al ejecutarlo y,…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 2.7k visitas
    • 2 seguidores
  18. Started by Crypto Diego,

    buenas adjunto excel con informacion modelo obviamente el archivo original es mucho mas largo pero es la misma logica..Lo que necesito el ejemplo lo coloque en la segunda solapa... basicamente seria que con alguna macro me detecte todo lo que se encuentra dentro de "Summary" y me lo lleve a otra hoja o que quede todo filtrado sino en la hoja original .La opcion ideal esta en la segunda sheet pero si es imposible... con que quede filtrado en la inicial estaria bien cosa de copiar y pegar... testt.xlsx

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 721 visitas
    • 2 seguidores
  19. Started by krada,

    Buenas tardes. Necesito un mano ayuda. Estoy creando un pequeño gestor de inventario, y al momento de ingresar entradas o la cantidad del producto lo hago por medio de un formulario (como se muestra en la imagen). ¿Cuál es su funcionalidad? En el combobox se filtran solo las hojas donde se guardan los productos, precios, cantidad de entrada y salida etc. el cual al seleccionar la Hoja debe de posicionarse en la celda que contiene el nombre y la cantidad de entrada y hacerlo visible en los textbox del formulario y poder recorrer las filas de las columnas de dichos campos por medio del botón next. el botón guardar debe solo reconocer el…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 911 visitas
    • 2 seguidores
  20. Started by wfredo,

    Hola comunidad, una consulta : alguno sabrá porque ahora no veo mis macros en Excel 2010. Desaparecieron! Gracias Saludos Wfredo El GreensHot no subió, es muy pesado

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 330 visitas
    • 1 seguidor
  21. Buenas tardes, Estoy elaborando una base de datos para llevar un seguimiento de los juegos que tengo comprados en las diversas plataformas. Para ello, he elaborado un excel donde tengo una tabla de registro y una de búsqueda en la primera hoja. Y la base de datos propiamente dicha en la otra hoja. En la primera hoja contamos con un apartado de registro con dos celdas la del nombre del juego y la de la plataforma. Por otro lado, tenemos el apartado de búsqueda donde tenemos las celdas: nombre del juego, ¿Lo tengo? y plataforma/as. En la segunda hoja tenemos un total de 11 tablas (cada una haciendo referencia a una plataforma de juego/tienda). Mi problema …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2k visitas
    • 1 seguidor
  22. Hola a todos amigos, tengo este código que me trae la información de un libro, sin embargo, ando intentando importar varios archivos a la vez pero ya me bloquié, este es el código que ocupo para leer el libro, espero alguien me puede dar una idea, saludos Application.ScreenUpdating = False Dim wbLibroOrigen As Workbook Dim wsHojaOrigen As Worksheet Dim wbLibroDestino As Workbook Dim wsHojaDestino As Worksheet Dim ruta As String ruta = ActiveWorkbook.Path & "\" & "Lista_Negra_SAT.csv" 'Datos destino Set wbLibroDestino = Workbooks(ThisWorkbook.Name) Set wsHojaDestino = wbLibroDestino.Worksheets("Hoja1") 'Datos origen Set wbLibroOrigen = Workbooks.Open(ruta) S…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 397 visitas
    • 2 seguidores
  23. Sub importarEnDesarrollo() Dim wb As Workbook Set wb = ThisWorkbook Dim ws_main As Worksheet Set ws_main = wb.Worksheets("Main") Dim directorio As String 'directorio = ws_main.range("path").Value directorio = "C:\Users" Dim sCadena As Variant Dim nFichero As String Dim i As Integer i = 0 Open directorio For Input As nFichero Do While Not EOF(nFichero) Line Input #nFichero, datos i = i + 1 sCadena = datos With Sheets(1) .Cells(i, 1) = Trim(Mid(sCadena, 1, 10)) .Cells(i, 1) = Trim(Mid(sCadena, 12, 4)) .Cells(i, 1) = …

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 617 visitas
    • 2 seguidores
  24. Buenas tardes espero se encuentren muy bien al igual que toda su familia, quisiera saber si alguien tiene idea de como escribir en una celda una función que tenga como referencia una tabla (pero de nombre variable). Adjunto un ejemplo corto de como sería con la función IF en una celda. (Realmente es para una formula más compleja y una macros mas extensa pero presento un problema como este al querer referenciar tablas que se crean al clonar una hoja de trabajo). Cabe aclarar que la tabla existe y tiene el nombre de las dos ultimas letras de la hoja trabajo. He intentado ya .Formula .FormulaLocal .FormulaR1C1 y nada me funciona. ¿Que podría hacer? Ag…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 509 visitas
  25. Started by Antoni,

    Hola a todos: Días atrás alguien publico una consulta con este título, más o menos, lo cierto es que esta consulta ha sido eliminada. No obstante y dado que he desarrollado una solución, la subo por si es de interés para alguien. La macro permite seleccionar cualquier número de columnas en cualquier orden y copiarlas en la misma hoja o en una nueva. Como curiosidad, decir que genera el código VBA necesario para realizar la operación en un textbox, se puede copiar dicho código, o incluso, generar la macro en el Módulo1, por si se quiere utilizar la macro de forma regular sin tener que volver a escoger las columnas. Abrir el adjunto, y como siempre…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 758 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.