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

    Buenos días, Necesito vuestra ayuda, estoy trabajando y me han pedido que haga una macro para unos archivos futuros, por ahora solo hay 3 archivos completos y el resto están vacíos y se irán completando a lo largo de los próximos meses. Necesito hacer una macro que copie los datos de varios archivos(en concreto 37) que se podría ampliar en un futuro en uno sólo. El archivo en el que estarán todos los datos está ubicado en el escritorio y los archivos con datos serán llamados 1,2,3...hasta el último que tendría de nombre de archivo 37. Sub CopyDataFromMultipleWorkbooks() Dim wbSource As Workbook Dim wbDestination As Workbook ' Open the destinat…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 413 visitas
    • 2 seguidores
  2. Started by MarianoCruz,

    Hola buenas tardes tengo una rchivo que me ayuda con la seleccion de archivos por medio del browser y de ahi extraigo algunos datos. Con la macro puedo buscar un archivo dentro del explorador, busco y selecciono archivo y extraigo datos como ruta, nombre del archivo etc, pero debido a que ya tengo mas archivos (200 archivos .doc), me hes dificil navegar entre todos y revisar cada renglon, existe alguna manera en la que pueda filtrar los archivos con parte del nombre (Escrito en celda, ejemplo C6), y al abrir el browser me muestre solo los con extension .doc y .docx con los archivos de nombres coincidentes (C6). O si hay alguna otra opcion, me ayudara mucho. …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 586 visitas
    • 1 seguidor
  3. Started by alvoroto,

    Hola a todxs, os cuanto mi problema que no lo es pero me puede hacer la vida mas fácil y divertida en el trabajo:topsy_turvy: tengo que gestionar un montón de archivos excel con muchas hojas y dentro de estas hojas ciento de miles de direcciones ip:miserable: me gustaría poder buscar en todos los archivos que tengo un dato ya sean numero o letras si tener que ir abriendo cada archivo, y dándole a buscar, son cientos de hojas y pierdo tiempo cada vez que busco algo que desconozco su paradero. resumiendo quiero buscar un dato entre todos los archivos que tengo, espero haberme explicado bien.:distracted: un saludo y gracias por adelantado PD: Excel 2007

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.7k visitas
  4. Started by Marco200,

    En excel 2003 era posible grabar una macro incluyendo la insercion de una forma como una linea o un rectangulo, sin embargo en la version 2007 no queda grabada en la macro las instrucciones para dibujar una forma en la hoja de calculo.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.7k visitas
  5. Started by pablitox_6,

    Hola, les cuento que tengo un excel el que me interesa arreglar es el boton de la izquierda arriba que sale buscar por sectores y mes... al abrir este me salen varias preguntas y luego al poner aceptar se me hace una busqueda en los archivos y se me abren los archivos que necesito. Todo funciona perfecto. El problema es que me pidieron colocar otro filtro por clave identico al anterior solo que ahora es vez de buscar una sola clave de codigo me busque dos o 3. queria preguntar como puedo crear dos claves abajo de la creada igual a esa y que haga el mismo filtro y funcion. Ojala puedan ayudarme adjuntare aqui el excel para ver si pueden ayudarme, se los agradeceria much…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 670 visitas
  6. Hola, les pido ayuda, ya que mis conocimientos en macros son muy excasos Lo que necesito es buscar una referencia de la Hoja 1 en la Hoja 2 y crear pestañas con el resultado Tengo una hoja Excel con dos hojas Hoja1 y Hoja2 En Hoja1 tengo un listado de materiales a buscar (COLUMNA D) En Hoja2 tengo un listado interminable de materiales en almacén (COLUMNA E) Lo que necesito es que situados en Hoja1 tome el texto que hay en la celda D1, pase a Hoja2 y busque todos los datos iguales que haya en la Columna E una vez encontrados, (si los hay) copie las filas que lo contiene y lo pegue en una hoja nueva creada con el nombre…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 506 visitas
    • 1 seguidor
  7. Saludos, Tengo formulas en varias celdas que se alimentan de una Tabla llamada TablaSubAlim la cual reside en el mismo Workbook.. Sin embargo ahora he tenido la necesidad que esta tabla se alimente desde una Tabla que está en Access. Con este código logré hacer esa conexion de manera automática. 'Private Sub Worksheet_Activate() 'Application.ScreenUpdating = False 'Dim l As ListObject 'Dim q As QueryTable 'Dim s As String ' ' ''CONEXION A LA BASE DE DATOS 'Cells.Delete 's = "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Jet OLEDB:Database Password="" ;Data Source=" 's = s & "\\DATABASE_TABLASUBALIM\DatabaseTablaSubAlim.accdb" …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 317 visitas
    • 1 seguidor
  8. Hola, quería hacer una pregunta que creo que es sencilla en poder hacerse o no, pero no tengo conocimientos para saberlo. Tengo varias hojas (pongamos para el ejemplo solo Hoja1, Hoja2) y un mismo botón (btn_activar) en cada una de ellas. Quiero crear en un módulo una función que al pulsar el botón, hace una serie de acciones (el hacerlo en el módulo es para no repetir todo el código en cada una de las hojas y posteriores modificaciones). Para llamarlo desde el módulo, si pongo por ejemplo: Hoja1.btn_activar.ForeColor = RGB(0, 0, 0) [funciona correctamente] Pero si le paso el nombre de la hoja (porque variará en función de donde pulse el botón…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 676 visitas
  9. Tengo el siguiente problema en un Userform: Para que me guarde los datos que introduzco en un Textbox, con los decimales separados por comas, los tengo que introducir separados por puntos. ¿Cómo puedo guardar los datos con decimales separados por comas, e introduciéndolos asimismo por comas? Gracias Cuestión.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.2k visitas
  10. Hola: Tengo una hoja con una tabla de de 11 columnas. En otra hoja busco con un listbox cualquier dato de la tabla y me muestra los resultados. Lo que quiero es trasladar a celdas el que yo elija (en caso de haber varios). Además, solo quiero que me traslade 2 de las 11 columnas. Y cada vez que haga la búsqueda me los debe trasladar debajo de las anteriores. En la hoja 3 hay un ejemplo completo que saqué de algún foro, el cual os puede servir de base para su adaptación. Si algo no se entiende, me lo preguntáis. Dentro hay más explicaciones. Saludos. ListBox buscador..rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 690 visitas
  11. Started by Olvidado,

    Buenas tardes. Necesito una macro que busque un dato en una hoja, y copie esa fila vaya a hotra hoja y busque un nombre y si lo encuentra que sobreescriba toda la fila. Por ejemplo en la hoja "BAJA" hay una fila que con nombres y apellidos y otros campos, hay uno que pone "Alta" o "Baja" y quiero que esa fila si el dato es Baja copie la fila entera y busque en la hoja "REL_CLI" si existe el nombre o el codigo que sobreescriba toda la fila. Un saludo clientes.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 889 visitas
  12. Estimados Estoy recien aprendiendo e intentando crear macros en VB,pero esta vez necesito por favor ayuda... Debo crear lo siguiente: 1. Crear una macro que tome las primeras 10 celdas de la hoja 1 y las copie en la segunda hoja a partir de A1 2. Crear una macro que tome de la celda 11 en adelante y la copie a una tercera hoja a partir de A1 Este es el codigo que intente hacer pero no me resulta el traspaso a la tercera hoja Public Sub traspasohoja2() Sheets("hoja1").Select Dim i As Integer For i = 1 To 10 Cells(i, 1).Select Selection.Copy Sheets("hoja2").Select Cells(i, 1).Select ActiveSheet.Paste Sheets("hoja1…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.3k visitas
  13. Hola que tal compañeros, bien lo que necesito hacer es una macro que cada vez que se ejecute filtre segun el dato principal de una columna, por ejemplo tengo una columna que se llama clase, esa columna divide todos los datos en clases, ya sea en 10, 20 o cualquier cantidad de clases, hacer aqui una macro que filtre de uno por uno no se me hizo tan complicado ya que las clases avanzan de uno en uno, pero por ejemplo si tengo otra columna con datos diferentes y no corridos, como le hago para caturar los datos que contiene esa columna y asi cada vez que ejecute la macro se vaya filtrando el siguiente valor. se que se escucha muy confuso asi que pondre el codigo de lo qu…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.2k visitas
  14. Buenas tardes.Alguien me pueda ayudar a indicarme el código para desplegar la ventana de adjuntar elemento de outlook. No archivo adjunto, sino correo adjunto.anexo una PDF de la ventana que quiero desplegar para el usuario. la ruta "por decirlo así­" es: cuando estas en una nuevo correo en la ficha archivo, esta el grupo incluir, luego adjuntar elemento y por ultimo elemento de outlook.de antemano muchas gracias.excelente foro

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 661 visitas
  15. Started by islercast,

    Estimados, junto con saludar espero que puedan ayudarme a resolver esta planilla que estoy generando. Necesito una planilla para registrar el tiempo de una mantención, tengo una celda para ingresar el tiempo que durará la mantención. Tengo un temporizador que empieza a contar hacia atras cuando ejecuto la macro. Todo bien hasta ahi, lo que me falta y no he podido hacer es que una vez que el temporizador llegue a 00:00:00, siga registrando tiempo en otra celda que se llame tiempo extra. *Resumo: necesito que cuando la cuenta atrás de E4 llegue a 00:00:00, en la celda F4 se active un cronómetro(cuenta hacia adelante) que se pueda detener con un boton Stop, para deten…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 3.3k visitas
  16. Started by jik,

    Hola a todos, Tengo un lista box que me carga la información de una tabla de 13 columnas de las cuales me interesan sólo 5 de ellas: la 1, 4, 9, 11 y 13 por lo cual oculto las que no tienen con ancho 0. El listbox carga los datos sin problema. El buscador funciona bien también pero cuando la columna es la 10 o mayor de .list es menor que 10. Va marcado en azul y negritas donde está el problema. ¿cómo puedo solucionarlo? Private Sub UserForm_Initialize() 'se definen características del Listbox (columnas, ancho, títulos) With LstBusqueda .ColumnCount = 13 .ColumnHeads = True .ColumnWidths = "60;0;0;160;0;0;0;0;240;0;100;0;100…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.5k visitas
    • 1 seguidor
  17. Buena tarde. Digamos que tengo en G2 diferentes números de semana del año, empezando en la 1, saltando a la 5 en G3 y la 21 en G4, necesito insertar filas entre cada uno de los datos, insertando una fila con el número de semana 2 en G3, después el 3 en G4, 4 en G5, y así consecutivamente hasta el 5, después hasta el 21, etc. Respetando los números que ya tengo y tomando en cuenta solo de 1 al 52 que son las semanas del año. Ayuda por favor! De antemano muchas gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.2k visitas
    • 1 seguidor
  18. 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
    • 520 visitas
    • 1 seguidor
  19. Hola a todos de antemano gracias por los aportes y ayudas, y felicitarlos por esta web que ha sido de gran ayuda para quienes estamos aprendiendo excel y macros. Adjunto archivo. Con datos mínimos, deseo crear una Planilla de Control de Cobros, acorde al DNI de C/Cliente, No. de Préstamo, y Modalidad de Pago, Diaria, Semanal, Quincenal, Mensual, tanto para Kapital como para Intereses, el método de calculo del interés es Simple, cuota e intereses fijos e iguales para cada período, valga la redundancia. Gracias a todos Javishalom Control Cobros Clientes K Int2.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.8k visitas
  20. Buen dia Tengo dos tablas en power pivot, en una tengo las ventas por canal de distribucion (tabla ventas) y en la otra tabla los que se gana el distribuidor por canal (flete), como hago para traerme a la tabla de ventas el valor pagado por canal (Ttal_Flete_Vrbl) de la tabla de fletes, teniendo en cuenta que el valor corresponda a la misma ruta y el mismo canal Agradezco su colaboración Fernando Trujillo Consulta PowerPivot.xlsx

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 588 visitas
  21. Started by JORGE.AUDITOR,

    Buenas tardes Quisiera ver si me pueden colaborar y ayudar a dilucidar una solución. En la actualidad me demoro un monton en estar modificando formular y quiero hacerlo mas rapido ya que las planillas las hago dos o tres veces por semana y me toma mucho tiempo. Dentro de una planilla, tengo 2 tablas con datos: 1) un historial de pagos a proveedores, donde se identifica cuanto se le canceló por año a un proveedor según su Identificador 2) una tabla con el detalle de las facturas que tengo pendientes de pago, ordenador por proveedor. El problema es el siguiente: de esas dos tablas, tengo que hacer una dinámica donde me aparezca el análisis de …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 650 visitas
  22. Hola intento general este resultado. Según la imagen la diferencia de tiempo es 02:16:26 . HH:mm:ss. El problema es que no sé como generar ese resultado sin separar las horas de la fecha. Aquí los problemas, no puedo separar o dividir las horas en una columna y las fechas en otra columna. También la fórmula debería expresar si la diferencia es en días.. cuántos días son más horas y minutos... Alguien sabe como expresarlo de esa forma?

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 810 visitas
  23. Buenos dias A todos Necesito me ayuden tango este codigo de una macro que arma una tabla dinamica de una hoja ya fija. la hoja y la columna de donde se toman los datos de origen para alimentar la tabla dinamica siempre seran fija no que no sera fijo sera la fila. necesito me ayuden como concateno el valor de la fila con una variable adjunto codigo Sheets("TABLA DINAMICA_RECON").Select Sheets("TABLA DINAMICA_RECON").Move After:=Sheets(2) FilaCOL = 10 'como idicar nombre de archivo ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "RECONSIDERACIONES!R[& FilaCOL & ]C2:R[FilaCOL]005C16").CreatePivotTable TableDestination:= _ "'[" &amp…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  24. Started by kagomagoo12,

    Que tal compañeros, quiero saber que numero indice corresponde a un elemento, entiendo que el primero es cero hasta N elementos, pero desconozco el por que por que parece que cuando le pongo Combobox.RemoveItem (2) Combobox.RemoveItem (3)[/CODE] Borra los datos del siguiente indice por ejemplo 3,4. En el ejemplo del excel tengo dos combobox en funcionamiento, que si se selecciona CONDOMINIO del primer combo que dice registro patrimonio (segundo combobox), nomas quede PREHISPANICO, LATIN, EGIPCIO y se borren todos los demás del JAPONES al Africano. son siete elementos de registro patrimonio en total, si pongo el 7 en el remove me marca error de argumento no valido e…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.4k visitas
  25. Started by juanantoniomillar,

    HOLA, RESULTA QUE NO SOY MUY APLICADO A LAS MACROS. PERO TENGO ESTA QUE ME ESTABA FUNCIONANDO BASTANTE BIEN. EL PROBLEMA ES QUE AL MOMENTO DE INGRESAR UNA CADENA DE TEXTO CON UN NUMERO COMO PRIMER CARACTER NO FUNCIONA. Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then memo = TextBox1 ActiveSheet.Range("A1:F5000").AutoFilter Field:=2, Criteria1:="=*" & [memo] & "*" _ , Operator:=xlAnd End If ActiveWindow.SmallScroll Down:=-63 End Sub ESTE ES EL LINK DE LA PLANILLA EN CUESTION Dropbox - PRUEBA1.xlsm AGRADECERIA CUALQUIER APORTE!!

    • 0

      Reacciones de usuarios

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