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. Started by cohispro,

    Hola amigos del Foro, una pregunta se podrá esto: Guardar o Copiar la hoja activa (respetando el nombre de la hoja) a un libro que esta cerrado en un directorio determinado. Se generan varias hojas activas Necesito que la hoja activa se guarde al archivo Test.xls pero que no reemplace el existente. Que se acumulen las hojas al final del mismo archivo Test.xls Tengo esta Sub test() ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:="C:\Temp\E\Test.xls" ActiveWorkbook.Close End Sub Gracias por sus aportaciones. ARCHIVO.xls

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 887 visitas
  2. Started by viejo,

    Gute Nacht a todos los maestros tengo un calendario 2013 que me gustaria automatizar pero no encuentro como, me gustaria me pudieran ayudar, la manera en que quiero automatizarlo es: que al darle doble click me ponga una nueva hoja con el nombre de la fecha que se seleccionó (o se doble clickió) para asi poder escribir la tarea dentro de esa hoja nueva. Asi como su efecto inverso que al darle doble click a la hoja nueva me regrese a ese calendario. ¿alguien que me pueda ayudar? nota: en el archivo vienen tres calendarios distintos me es suficiente con que se automatize el que es completo de antemano muchas gracias calendario-2013-en-excel-lunes-domingo.rar

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 886 visitas
  3. Started by danyalix1987,

    Hola muy buenas tardes acá en México, mi consulta es que tengo este código para copiar y pegar el contenido de un archivo, en uno nuevo: Sub test() ' ' test Macro ' ' Selection.End(xlToLeft).Select Selection.End(xlDown).Select Range(Selection, Selection.End(xlUp)).Select Range(Selection, Selection.End(xlToRight)).Select Range("B130").Select Range(Selection, Selection.End(xlUp)).Select Range("B9:w130").Select Range("B130").Activate Selection.Copy Windows("Consolidado 2012 ww21.xlsx").Activate …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 886 visitas
  4. Started by MAURO_1512,

    amigos en otra pagina consegui este archivo para manejar la contabilidad familiar y es muy bueno lo unico que no e podido cuadrar es lo relacionado con los pagos aplazados en la columna c y d en pagos y atrasado salen las formulas con error y nose como arreglarlo de resto es excelente toco eliminar varias hojas para poder subirlo y no se si es permitido colocar el link de otra pagina muchas gracias de antemano por sus ayudas Contabilidad_Familiar_V311 (2).zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 886 visitas
  5. Seleccionar entre dos productos iguales el de mayor fecha la idea es la siguiente al seleccionar el producto en el macro me tome el precio del producto con la fecha mas actual osea el precio actualizado Sub detecta_producto() If CmBProductos.Value <> Empty Then Call calcula_importe Else End If End Sub Sub calcula_importe() If txtCantidad.Value = Empty Or cmbClave.Value = Empty Then Else Importefi.Text = CCur(txtPrecio.Text) * CCur(txtCantidad.Text) End If End Sub Sub busca_art_precio() Private Sub cmbClave_Change() If Me.cmbClave.Value = "" Then Exit Sub Dim sUltimaCelda As String Me.txtDescripcion.Text = "" Me.txtPrecio.Text = "" If…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 886 visitas
  6. Started by lursaildi,

    Teno la siguiente macro pero me error 1004 por que puede ser. La macro es para cuando encuentre una X en las celdas b9:b200 oculte las filas que contienen una X Sub ocultarfilas_FRIO_NO_TALLER() ' ' ' ActiveSheet.Unprotect For Each celda In Range("b9:b200") If celda.Value = x Then ActiveCell.EntireRow.Hidden = TrueElse ActiveCell.EntireRow.Hidden = False End If ActiveCell.Offset(1).Select Next ActiveSheet.Protect End Sub

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 886 visitas
  7. Saludos: Tengo una tabla ya definida con un rango de B9:I250. No importa si usas las primeras 10 o las utilizas todas siempre es el mismo rango. Yo tengo un macro VBA donde primero sorteo en una columna en particular y en orden ascendente con el propósito de colocar todas la información en orden y evitar que hayan espacios en la tabla. Luego de sortear, identifico la ultima celda escrita y borro cierta información que pueda haber en otras columnas. Por ejemplo siempre termino sorteando la columna B, si en la celda X de la columna B no hay nada escrito entonces puedo borrar la información que haya en las columnas C,D, H. Sim embargo esto lo logro utilizando la función…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 886 visitas
  8. Started by josegomez,

    Saludos mis expertos, con la siguiente cuestión. En una hoja tengo varios objetos lo que quiero es pasar estos objetos a un userform para que estén disponible en cualquier momento. ___de antemano muchas gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 886 visitas
  9. Started by Pirtrafilla,

    Buenas tardes. Me estoy liando con una macro y recurro a vosotros porque no le veo salida. En un proyecto que tengo hay una hoja que cambiando el año necesito que en un rango de celdas me aparezca por macro el último día del mes. Os envío un Excel, vereis que que hay un año y en la fila de arriba aparece el contador del mes. (1 enero, 2 febrero, etc...) pero en la celda de abajo necesito que si cambio el año me venga la fecha del ultimo día del mes, Por ejemplo, si pongo 2021, debajo del mes 1 aparezca 31/01/2021, si el mes es 2 aparezca 28/02/2021. A lo mejor os parece fácil, pero me estoy liando y mucho. Gracias de antemano!!! Moisés. Macr…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 886 visitas
    • 1 seguidor
  10. Started by anatera10,

    buenas tardes jovenes tengo un problemita con una macho que estoy ejecutando y me da un error '1004' en tiempo de ejecucion, me pueden decir por favor como lo soluciono, le explico que esta macro es para buscar las diferentes combinaciones exixtentes de 6 codigos en un rango del 1 al 38. este es el codigo que estoy utilizando lo que esta en negrita es en donde me esta dando el error. espero me puedan ayudar. Gracias Private Sub CommandButton1_Click() Dim nn As Long, mm As Integer, rElem As Long, kk As Long, r_Comb As Long Dim myMat(), Elem, piv() As Long nn = Cells(Rows.Count, "B").End(xlUp).Row If WorksheetFunction.CountA([b:b]) <> nn Then MsgBox "La col…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 886 visitas
  11. Hola a todos nesecito de su ayuda, antes esta funcion de estas 2 formulas me corrian, esta macro convierte la celda en mayuscula y a la vez incresas 2 veces datos y automaticamente se bloquea la celda. -------------------------------------------------------------------- Esta es la formula la que antes me corria bien: Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If Not Intersect(Target, [d33:f33]) Is Nothing Then Target.Value = UCase(Target.Value) Hoja6.[a1] = Hoja6.[a1] + 1 Application.EnableEvents = True If Hoja6.[a1] >= 3 Then ActiveSheet.Unprotect "colorbol54321.-" …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 885 visitas
  12. Started by JoaoM,

    Tengo este evento el cual quisiera aplicarlo en varios eventos de varios formularios Sub Limpia(nameform As String) 'para TextBox y ComboBox en formulario 'Dim Ctrl As Object ''Aqui la rutina para Ejecucion 'For Each Ctrl In nameform 'Entrada.Controls 'If TypeOf Ctrl Is MSForms.TextBox Then Ctrl = Empty 'If TypeOf Ctrl Is MSForms.ComboBox Then Ctrl = Empty 'Next Ctrl 'MsgBox ("Controles limpios para nuevo uso"), vbInformation, "Limpiesa" End Sub[/CODE] Tal como esta no funciona, funciona si si le quito nameform As String y nameform y le dejo Entrada.Controls (Entrada es nombre de uno de los formularios) Para ello tendria que repetir el mismo codigo con solo …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 885 visitas
  13. Started by MARY_45,

    Buenas tardes! Les escribo para solicitarles su ayuda. Estoy intentando filtrar el contenido de un cuadro combinado de acuerdo a un dato existente en una base de datos. Por ejemplo, si yo coloco 04/04/2014 en la celda B3 en el cuadro combinado solo me deberia aparecer los nros de presupuesto del 1 al 4. Adjunto les dejo el archivo. Saludos Libro1.rar

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 885 visitas
  14. Hola a todos, me gustaría pedir ayuda con la siguiente macro. Adjunto hoja con datos relativos a lecturas de contadores de consumos, con dos pestañas: CONTROL y PARQUE En PARQUE están los datos. Decir que la tabla real sobre la que se ejecutará la macro tiene ahora mismo unos 17.200 registros En cada registro de la tabla se guarda un numero de ordenacion, numero de contrato, nombre y direccion, y despues relativo a cada trimestre de lectura del contador hay FECXXXX que es la fecha de lectura de un contador, LECXXXX que es la lectura que tiene el contador en un periodo determinado. En el campo INCIDENCIA se guardan las incidencias del periodo actual. En…

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 885 visitas
  15. ¡Hola! Estoy trabajando en un libro con bastantes fechas y sumas, así que recurrí a un macro para agilizar el llenado de una plantilla. Es algo complejo de explicar pero trataré: Subí un ejemplo con colores para ser mas especifico. Tengo una tabla que ocupo para vaciar datos, con una fecha legal (que me sirve de guía) y fechas de migración con el numero de documentos. Mediante dos combobox selecciono el rango de fechas a trabajar (Hoja "signos" columna A), necesito copiar ese rango de fechas a la hoja "Plantilla" celda C12 en adelante (en el ejemplo use del 22-02-19 al 26-02-19), luego, en D12, deberá buscar la fecha mas antigua del día legal, en el ejemplo corr…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 885 visitas
  16. bueno primero que nada si leen esto gracias por su atencion el punto de de mi tema es si me podrian ayudar a la creacion de una macro que me permita copiar celdas especificas de 1300 archivos de exel a uno solo. mi ejemplo seria cliente1(archivo de exel parte de los 1300) nesesito copiar las siguientes celdas h1,h7,g11,g13 de ese archivo a otro llamado "resumen" de manera concecutiva y ordenada de antemano gracias por la atencion

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 885 visitas
  17. Started by doby2005,

    Buenas tardes, Estoy creando en un libro de excel la contabilidad domestica y necesito una macro que copie los datos de una hoja llamada Registro a las hojas que corresponda cuando llege la fecha indicada se anoten en la hoja que correspondiente y la fecha que cambie al mes siguientey asi sucesivamente con todos los registros de la hoja . Espero que me haya explicado bien. No puedo subir archivo porque es muy grande[ATTACH]45516[/ATTACH] Muchas gracias ,

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 885 visitas
  18. Started by Luis Antonio Torres,

    Estimados, Muy buenas noches, por favor alguien que me pueda ayudar cómo podría traer datos de la web mediante consulta, es decir, estando en la web ingreso un dato y me arroja información sobre dicho dato consultado. La cuestión es que tengo ya armada una base que me toca consultar en una página web, y para no estarla digitando en dicha página quisiera que pueda obtener esos datos y ponerlos en dicho archivo, hace un par de días vi algo parecido en otra web y supe que si se podía realizar, talvez alguien me pueda orientar sobre como podría simplificar mi trabajo. La página web es esta. Sistema de Autorización de Documentos Y en mi archivo tengo todos los datos que s…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 884 visitas
  19. Hola buenas tardes, Alguien de ustedes pueden orientarme con una problematica que tengo al momento de utilizar la opción de Excel de Data Validation. Tengo un template que he generado donde los usuarios deben llenar los campos seleccionando información de una lista despegable (Data validation) y como lo comparto por red, entonces los usuarios hacen una copia de este archivo a su equipo y lo trabajan localmente (Esto porque son muchos usuarios) ya que lo tienen listo copian y pegan la información al archivo compartido en red que se puede decir es el original, pero tengo un issue ya que los Data validation de todas las columnas del archivo se eliminan al realizar esta ope…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 884 visitas
  20. Se me ocurre lo siguiente basandome en un ejemplo que encontre aqui mismo en los foros, pero al momento de ejecutarlo me indica un error no lo logro decifrarlo ya le di varias vueltas igual y es sencillo pero no doy me podrian echar la mano. El boton "limpiar coincidencia" debe de comparar si existe contenido de cada celda en la columna m en la hoja2 contra el contenido de las celdas de la columna C en la hoja Cob y en caso de que el valor lo encuentre entonces eliminara el contenido de la hoja COb en toda la fila donde se localize el valor, `para lograr esto lo que estoy realizando es sustituir el valor de cada celda por """" con esto logro dejarlo en blanco. Esa es la…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 884 visitas
  21. Started by dc8,

    Buenos días Foro, Necesito vuestra ayuda y conocimiento para un error con VBA. Hace un mes que lleva dándome problema una línea de código (no había pasado en más de un año) y tras mirar en mil páginas no encuentro solución, por si pudierais echarme una mano. Os adjunto la línea de código: El error se encuentra en el "end if" del final. No sabéis lo importante que me es solucionarlo y no encuentro la solución... Mil gracias Sub ImportarModelos() Dim strSource As String Dim dbs As DAO.Database Dim rst As DAO.Recordset Dim consulta As String Dim archivoAbrir As Excel.Workbook Dim RUTAExcel As String Dim strRespu…

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 884 visitas
    • 1 seguidor
  22. Started by Antonio,

    Un saludo para todos los foristas. Solicito ayuda con un tema que no he podido resolver. Tengo una rutina que me permite crear una tabla de Excel y en ella, guardar los datos de ciertas personas. La rutina se ejecuta bien a excepción de que, si ya existe la identificación de una de esas personas, se muestra un Msgbox que así lo indica. Luego, al pulsar el botón Aceptar de dicho mensaje, se sale de la rutina pero antes, debe seleccionarse la celda E6. Aquí está mi problema, que no se ejecuta esta instrucción, por ello, acudo a ustedes para lograr la solución de esto. Adjunto un block de notas con el código utilizado. Mil gracias por la ayuda que puedan prestarme. Rutina…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 884 visitas
  23. Buenas tardes expertos. En esta ocacion solicito de su apoyo, tengo un codigo para mostrar informacion de cada shape, pero no me funciona, lo que pretendo lograr es que al momento de pasar el mouse sobre un shape, me muestre como screentip la informacion que se encuentra en otra hoja. Anexo ejemplo. De antemano gracias por la ayuda brindada. Saludos cordiales. Screentip.rar

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 884 visitas
  24. Started by Fcarrillo,

    hola, explico el archivo adjunto, cuando lo abren se presiona el botón que se ve en la parte superior derecha, sale un inbox, al escribir "TIPS", que es el usuario principal, nos muestra 2 hojas más, en la hoja "registro", como puedo hacer, para que se vea en cada celda, el usuario, hora de acceso y hora de salida, ya que serian varios usuarios y necesitaré llevar un historial del personal que ocupa la hoja anexo codigo que utilizo, no se si se pueda modificar o se tenga que agregar otra rutina Private Sub CommandButton1_Click() clave1 = InputBox("Ingrese Usuario", "TIPS PROMOCIONALES", DefaultValue, 6700, 2800) If clave1 <> "" Then Call Example Select Case …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 884 visitas
  25. Started by Orlandoee,

    Se puede vincular de forma Automatica, trabajo con un libro que tiene en determinadas celdas el nombre de "XXXXXX-MAC" el nombre coincide con archivos pdf ubicado en otra carpeta se puede por medio de una macro realizar una vinculacion automatica de estas imagenes cada vez que se accede al libro, Muchas Gracias

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 883 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.