Saltar al contenido
View in the app

A better way to browse. Learn more.

Ayuda Excel

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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. Estimados, Estoy tratando de hacer una macros que me permita abrir todos los archivos de una carpeta, copiar una casilla y pegarla en la tabla de otro archivo, pero al ejecutar me lanza el error previamente mencionado. Si alguien me puede ayudar en esto estaría muy agradecido. Saludos! Option Explicit Sub Open_All_Files() Dim oWbk As Workbook Dim sFil As String Dim sPath As String sPath = "C:\Users\User\Desktop\Respaldo Periodo Felipe 08-03-2012\TERPEL\Planillas TERPEL\checkist total\" ChDir sPath sFil = Dir("*.xlsx") Do While sFil <> "" oWbk = Workbooks.Open(sPath & "ID1 ISLA BILBAO.xlsx") ThisWorkbook.Activate Sheets("Isla").Select With …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.3k visitas
  2. Started by josemaria,

    Hola; llevo unos dias intentando transponer unos datos pero no consigo hacerlo, he probado con la función transponer, pero no es exactamente eso lo que quiero. Tengo los valores ordenador como estan en la hoja "Datos iniciales", y los quiero poner como estan en la hoja "Pasar Datos". En el ejemplo hay 10 empleados, y 5 conceptos distintos ,pero normalmente ese proceso tiene 500 empleados con unos 15 conceptos. Si os preguntais como se hace ahora, pues, se hace uno a uno , la intencion que tengo, y he probado es pasar los datos mediante access (tabla vinculada), a una tabla oracle, que es donde lo necesito. pero lo que no consigo es dejar los datos como estan en la …

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.8k visitas
  3. Buenos días; Mi problema es el siguiente. Abro un libro Excel que me hace saltar una ventana con las opciones Yes/No. Yo quiero que responda siempre Yes. He probado con todo (Application.enableevents=false/true, Application.displayalerts=false/true, Application.sendkeys "y") pero no funciona porque la acción de abrir el libro es la que hace saltar la ventana. Entonces, ¿hay alguna forma de que dentro de la instrucción Workbooks.Open (Filename:=ruta, Password:="e3t2b4ci").RunAutoMacros which:=xlAutoOpen [code] pueda responder Yes a una ventana qué emerge? Muchas gracias de antemano por vuestro tiempo Un saludo

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.4k visitas
  4. Started by nataliazd,

    Hola a todos, tengo una matriz de nxm y necesito que cada una de las filas se copie 13 veces quedando una matriz de (14*n)xm Dejo un excel donde se muestra como debería quedar, en la hoja 2 estan los datos de la matriz inicial, las matrices con las que trabajo son en general mucho mas grandes, no es el largo fijo, y en la hoja 3 se muestra como debería quedar, solo lo hice para 3 filas a modo de ejemplo. Ojala se entienda y me puedan ayudar, que hace rato estoy tratando de hacerlo y no me sale! Gracias y saludos ejemplo.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 871 visitas
  5. Muy buenas tardes estimados, la verdad es que soy bastante nuevo en las macros programadas mediante VBA. Estoy haciendo una que se utilizará aqui en mi trabajo para calcular el tiempo utilizado por otros trabajadores en realizar ciertas tareas asignadas y definidad en un libro de Excel. Para calcular el tiempo utilizado, desde el principio definí que sería mediante una hoja nueva, sin embargo yo sé que existen algunas formas muchos mas funcionales que la que yo he pensado. Adjunto un libro (Libro2.xlsx) el cual contiene el código que calcula el tiempo transcurrido, lo que yo necesito es poder manejar los tiempos cuando por ejemplo una tarea dure mas de un día y haya que p…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.3k visitas
  6. Que tal buenas tardes o dias he estado trabajando en un macros para dividir gastos que se realizan a meses sin intereses ya pude crear el calculo para que coloco la cantidad coloco el plazo coloco los intereses y me divide la cantidad en el munero de plazos multiplicado por los intereses ahora lo que no he podido hacer tengo dos mensajes el nombre de la tarjeta (nombre de la tarjeta de un banco digamos American Express) el nombre de a quien pertedece (nombre de la persona dueña digamos yo o mi esposa) quisiera que esos datos se repitan en las columnas G y H solo habia podido hacer que se colocaran en las primeras celdas pero no que se repitan en la misma c…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.3k visitas
  7. Buenas Tardes. Tengo este codigo: Private Sub ListBox1_Change() With Sheets("Hoja1") Set codi = .Columns("A").Find(What:=Me.ListBox1, LookIn:=xlValues) If codi Is Nothing Then MsgBox "Codigo no existe!": Me.ListBox1.SetFocus: Exit Sub For i = 2 To 12 Me.Controls("Textbox" & i) = .Cells(codi.Row, i) Next End With Set codi = Nothing Dim nsp As String Dim hoja As Worksheet nsp = ListBox1.Value For Each hoja In Worksheets ' Busca si existe una hoja con el nombre del codigo de cliente If nsp = hoja.Name Then Dim rw As String rw = ListBox1.Value & "!A:A" ComboBox1.RowSou…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.1k visitas
  8. Started by German,

    Hola a todos nuevamente, ésta consulta no es que sea para Macro Antonio pero es quien me dió éste archivo con código, y como el tema vuelve a ser el mismo practicamente por eso lo nombro a él primero, pero indudablemente cualquier compañero puede solucionarlo, bueno cualquiera que sepa de ésto claro, yo sería imposible. Bueno supongo que se acordará, y es el tema de separar los nombre que ya me realizó, y es que ahora como los nombre no van en la columna B sino en la A, habría que cambiar algo del código para que tome esa columna como referencia, es decir, de la columna A extraemos los nombres de A1 y los ponemos en otra hoja en filas distintas hasta acabar con todos los…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.2k visitas
  9. Started by Onotera,

    Buenos días, Adjunto hoja con macro en la cual me crea hojas con cada registro de la base de datos. Una vez creadas esas hojas y a la hora de imprimir en pdf, me gustaría poder quitar el salto de página que tienen y que sólo me imprimiera el rango (a1:x64) en el archivo pdf, que corresponde con el formato recibo. Copia de Recibos ok.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 927 visitas
  10. He estado buscando pero no he visto nada tipo lo mio, si hay algo, por favor disculpadme, me indicais y que se cierre el tema. Voy a explicaros un poco, lo que estoy haciendo y donde me e quedado atascada. He creado una tarifa, a la que quiero ponerle fecha de caducidad, para ello le he puesto una portada en la que obliga a habilitar las macros para que pueda funcionar, y dentro la fecha de caducidad, con la idea de que cuando haya pasado la fecha, el documento se autoelimine o se eliminen filas del mismo. Para obligar a que cada vez que se use el fichero se tengan que habilitar las macros, he deshabilitado las opciones de guardar con los comandos workbook.beforesave y…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 821 visitas
  11. Started by pimoweb,

    Estimados, tengo el siguiente problema, quiero hacer filtro con una variedad de datos ( estos datos los quiero sacar de una tabla X, que pueden ser números tan diferentes como 4, 5060, 876, etc. como puedo hacer para introducir estos números en una variable y que se pueda filtrar por esta? he tratado simplemente con 1 numero y ni por eso me sale: Sub Macro1()Dim suma As Double Dim reparto As Double suma = 0 Range("P3").Select 'Range(Selection, Selection.End(xlDown)).Select Do While ActiveCell &lt;&gt; "" suma = suma + ActiveCell.Value ActiveCell.Offset(1, 0).Activate Loop reparto = suma * 0.016 Range("p1127").Value = reparto Ac…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 3.2k visitas
  12. Started by fdiaz128,

    Buenos días Foreros, necesitaría ayuda sobre este tema que se me plantea. Estoy creando un documento en el cual necesitaría que la Macro Asociada para visualizar una celda activa en el encabezado o pie de página, fuese igual para todas las hojas de mi libro. Si no me explico bien, que el encabezado que tengo en una hoja, sea el mismo para todas las hojas os adjunto el excell y a ver si podeis echarme una mano. Muchas graias por todo. Saludos compis PLANTILLA LISTA DE DOCUMENTOS FORO.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 578 visitas
  13. Que tal. Soy nuevo en esto de la programacion y estoy "tratando de automatizar un formato de vacaciones" colocandole un calendario virtual para que de alli se tomen los dias que se ocuparan. En la maquina que uso funciona bien. El detalle es que quiero distribuirlo entre mis compañeros, pero el calendario no aparece en las demas maquinas. Esta tiene Excel 2010 y el archivo ext .xlsm, pero no todas las maquinas tienen el 2010. Agradeceria cualquier ayuda. FormvacWhisho1.xls

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 989 visitas
  14. Hola a todos, Tengo el archivo adjunto, el cual tiene algunas hojas, de las cuales solo deseo copiar unas cuantas a un nuevo libro el cual deberá tener un modulo con una macro que dejo en el archivo adjunto así como un botón y una hoja que se debe llamar "resumen". Espero pueda estar claro el archivo. Quedo a la espera de su amable atención. Saludos, EJEMPLO COPIAR.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 617 visitas
  15. Started by Eduado09,

    hola a todos espero me puedan ayudar gracias. tengo en un libro de excel en la hoja 2 tengo datos del 2013 con información de piezas y sus ventas. Pieza Año MES1 MES2 MES3 ....MES11 MES12 2-44 2013 44 56.21 33 22 12.32 3-76 2013 21 32 7. 99 11 44 En la hoja 3 tengo datos del 2014 con información de piezas y sus ventas. Pieza Año MES1 MES2 MES3 ....MES12 2-44 2014 11 52.43 55 21 lo que me gustaría hacer es por medio de un textbox buscar una pieza de la hoja3 y sumar sus meses anteriores y coloque la información en la hoja1 ejemplo: en el textbox pongo 2-44 de algún modo tiene que saber el mes en curso ( febrero) entonces hace la sum…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 571 visitas
  16. Started by nelcab25,

    Buen día. Necesito de su ayuda por favor, con el archivo adjunto. Me he ayudado de algunos ejemplos de Internet para ir completándolo. En el archivo hay una hoja que dice notas, en ella esta lo que necesito hacer. No se mucho sobre macros y no he podido encontrar como solucionar esas dudas. Si necesitan información adicional favor hacérmelo saber. de antemano muchas gracias. Archivo Base.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 534 visitas
  17. Started by AstridEdelKal,

    Hola! He estado leyendo todas las consultas sobre este tema pero las soluciones no me ayudan. Me sigue marcando error. Les explico: Tengo dos libros, El libro "Menú" tiene una macro con un userform que se graba en el libro "Concentrado". La macro abre perfectamente el libro "Concentrados", pasa la información a dicho libro, pero cuando quiere ejecutar la función para guardar y cerrar el libro "concentrados" me marca error de ejecuón. Alguna sugerencia? Gracias! Concentrado.xlsb.rar EJEMPLO Menu.xlsb.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  18. en el formatoen la hoja propuesta que adjunto a continuación, tengo el crear una carpeta con el nombre de la celda j9, crear un archivo pdf con el nombre de la celda j7, y quede guardado en la carpeta creada, de igual modo tengo que el archivo de excel quede grabado en la carpeta creada, hay veces que no deja guardar el archivo y no entiendo el porque del error, en el archivo adjunto esta un ejemplo del que no me guarda, podria alguien colaborarme quedaria inmesamente agradecido FORMATO.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 875 visitas
  19. Started by Ratatuich,

    Buenos días, Buscando una solución a mi problema y no he encontrado ninguno con respuesta. Tengo 10 archivos para distintos usuarios, cada uno con su contraseña. Los archivos están vinculados entre si y lo que quiero es que cuando abra uno, no me pida las contraseñas del resto de usuarios. Estoy intentando programar la macro: Sub Abrir() Dim Libro As Workbook Set Libro = Workbooks.Open(Filename:="C:\Directorio\Libro.xls", UpdateLinks:=1, Password:="qaz", WriteResPassword:="qaz") End Sub He empezado con archivo 1 vinculado a archivo 2, para que cuando abra archivo 1 no me pida la contraseña del archivo 2 Tengo dos problemas Pero con este ejemplo, al abrir e…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 958 visitas
  20. Hola a todos de nuevo!! Vengo de nuevo esta vez para solicitar una ayuda más. Tengo 6 columnas (C hasta H) con información de una sola palabra, lo que busco es que por medio de una macro pueda concatenar todas las descripciones posibles, es decir lograr que me forme las descripciones de izquierda a derecha a modo de utilizar toda la información posible. Pongo un ejemplo corto: Al crear la macro estaría como que quedando así: ETIQUETA DE FOLEO AMARILLO #12 T.L. ETIQUETA DE FOLEO AMARILLO #12 T.F. ETIQUETA DE FOLEO AMARILLO #12 OT.L. ETIQUETA DE FOLEO AMARILLO #12 OT.F. ETIQUETA DE FOLEO AMARILLO #12 OTM.L. ETIQUETA DE FOLEO AMARILLO #12 OTM.F. Si se darán cuent…

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 836 visitas
  21. Started by andresko,

    If Mid(ComboBox1.Value, 1, 1) = "B" Or Mid(ComboBox1.Value, 9, 1) = "B" ThenTipo = 2ElseTipo = 1End IfAncho = Mid(ListBox1.Value, 1, 3)If Mid(ListBox1, 18, 1) = "u" ThenEspesor = Mid(ListBox1.Value, 16, 2)ElseEspesor = Mid(ListBox1.Value, 16, 3)End IfDim importacion As Variant, Proveedorproducto As Variantimportacion = Application.VLookup(TextBox7.Value, Worksheets("Estructura COD. Lotes Film").Range("A3:J102"), 3, False)Proveedorproducto = Application.VLookup(TextBox7.Value, Worksheets("Estructura COD. Lotes Film").Range("A3:F102"), 6, False)If IsError(importacion) = False ThenCells(n, 7).SelectActiveCell.FormulaR1C1 = TextBox7.Value & importacion & Proveedorprod…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.6k visitas
  22. Started by AdolfoGus,

    Amigos, debo vencer mi orgullo y recurrir a Ustedes, les adjunto una planilla de excel que tiene formularios, esta en proceso de elaboración y me encuentro que al "Activar la celda del registro elegido" me da un Error 91 en tiempo de ejecución, Variable de Objeto no establecido. Ingresando por el principal, buscando indices y Buscar, podran ver el error. Gracias desde ya. Gustavo IndiceMoneda.xlsm

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.5k visitas
  23. Started by vendetta86,

    Buenos días esta pregunta esta relacionada con el hilo anterior el cual me dieron una solución perfectamente valida, copio en enlace para que sepáis de que hablo. Pero claro ahora me surge la duda, cuantas o que formas hay de "sacar" valores de un modulo, cual es la que normalmente utilizáis o recomendáis. Vuelvo a pedir perdón si soy muy pesado pero creo que mientras mas conocimiento se comparte mas se aprende.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 855 visitas
  24. Started by meduvilla,

    hola Estimados Maestros es posible que me enseñen a programar la referencia del archivo adjunto la idea es que combobox2 muestre las marcas del producto selecionado en combobox1 desde ya gradecido combobox2 dependiente combobox1.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 700 visitas
  25. Started by Antonio,

    Hola a todos. Me gustaría que alguien me ayude con una macro que ejecute lo siguiente: Tengo un rango de datos con varias columnas y filas y necesito que cuando cambie el valor de la primera celda del rango siguiente, la última fila del rango anterior se resalte con un color determinado (puede ser el amarillo, por ejemplo) En mi rango de datos, ese cambio debe producirse en la columna E (NIT), es decir, que cuando el valor del NIT cambie, la fila inmediatamente anterior a la celda que cambia de valor se resalte. Para ejemplo, subo un libro compuesto de dos hojas (Datos y Así) En Datos, está el rango de de datos, y en Así, cómo debe quedar dicho rango una vez se …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.4k 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 sergio@ayudaexcel.com

Información adicional: Encontrarás más información en la política de privacidad.
 

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.