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

    Hola, he estado buscando por el foro algún tema similar al problema que tengo pero no he conseguido encontrar nada. Mi duda es la siguiente: tengo una hoja Excel donde hay un botón que al pulsar aparece un userform. Cuando la hoja esta minimizada, si quiero que aparezca el userform debo maximizar la hoja y pulsar a continuación el botón. Lo que me gustaría es que al maximizar la hoja, automáticamente apareciese el userform y la hoja quedara minimizada en la barra de abajo de la pantalla. ¿Existe alguna función con la que podría hacer esto? Gracias. Libro1.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 881 visitas
  2. Started by GabrielRaigosa,

    Hola, Estoy adaptando una macro para filtrar varias tablas dinámicas según el valor de una celda, conseguí una macro cuyo alcance son todas las tablas de todas las hojas de un libro, mi pregunta es: ¿que cambio debo en la macro para que los filtros solo se hagan en todas las tablas de una hoja en particular y no en todas las tablas del libro (nombre de la hoja que contiene las tablas "Filtros"), esta es la macro. Private Sub Worksheet_Change(ByVal Target As Range) Dim Hoja As Worksheet Dim TD As PivotTable If Not Intersect(Target, Range("B3")) Is Nothing Then Range("B4:B6").ClearContents 'Recorrer todas las hojas del libro For Each Hoja …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 904 visitas
  3. Started by SALAVERRINO,

    Buenas Noches. Quisiera que me ayuden con una interrogante, la cual consiste en esta formula: Private Sub Worksheet_SelectionChange(ByVal Target As Range) With Target If .HasFormula Then .ShowPrecedents Else ActiveSheet.ClearArrows End If End With End Sub Lo que quisiera si es posible colocar en una hoja de excel, es decir cada vez que ejecute el MICROSOFT EXCEL esta formula siempre aparezca en dicha hoja, o si habrá alguna macro que permita realizarlo. Desde ya nuevamente agradezco su gentil colaboración.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 786 visitas
  4. Started by yordin,

    Buenas Tardes, quería hacer una consulta, habría forma de que al momento de abrir un Documento en Excel este me solicite el usuario y clave pero que estas sean las del Equipo, adicional que el documento permita o no la edición si este usuario tiene permitido poder ver o editar el mismo? espero me puedan ayudar, no tengo un libro de muestra solo pregunto si se puede hacer y si podrían ayudarme.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 773 visitas
  5. Started by Diego2015,

    Buenas tardes, tengo 2 hojas, en la 1° tengo una tabla con 5 campos (Cod, Nom, Apell, Area, Pais), en la 2° tengo un buscador, selecciono 1 codigo y me aparecen los demas datos, tambien tiene la imagen de la bandera del pais (B7). Lo que sucede es que no aparece la bandera cuando escribo un codigo en el filtro, pero he probado escribiendo el pais aparte y si funciona. ¿Como podria hacer que al actualizarse B7 tambien se actualize la imagen de la bandera? PD: Adjunto el codigo VBA para la imagen. Actual_Pais.zip Actual_Pais.zip

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  6. Buen dia Tengo un archivo de excel que se genera con un atabla dinamica lo que pretendo con el siguiente codigo es enviar el libro activo pero como valores, solo que no lo consigo por que me marca un Error: Error en el metodo"SaveAS" de objeto_"Workbook" Sub WorksheetLoop2() Dim Current As Worksheet For Each Current In Worksheets Dim attBook$ attBook = Environ("temp") & "\" & Current.[A4].Value & ".xlsx" Current.Copy Cells.Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 922 visitas
  7. Started by NIXONLYOS,

    tengo un formulario y este me alimenta un listbox que ademas no se como ponerle el encabezado quiero hacer que con el click de cualquiera en la lista del listbox este dato se seleccione AYUDA no recuerdo como hacer eso Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.1k visitas
  8. Hola amigos, Tengo un reto. En el archivo adjunto tengo un archivo con varias pestañas. La pestaña LEAVE SOURCE tiene dos tablas, estas deberían esta en blanco al abrir el archivo, excepto los Headers o titulos de las tablas. Existe un botón que le solicita un password al empleado, solo asi el podra ver su información. Hice manualmente una simulación de como se vería el resultado si el Empleado 2 ingresara al sistema. El resultado esta en la hoja LEAVE TARGET. NOTA: no deseo que se abra otra hoja, sino que en la misma hoja LEAVE SOURCE se filtre y muestre la información solicitada por el empleado (segun su password) Alguna idea con el codigo? …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.3k visitas
    • 2 seguidores
  9. Buenas tardes estimados colegas, Podrá sonar algo sencillo, pero realmente esta complicado el tema. Mi situación es la siguiente. Tengo una macro la cual esta montada en un OneDrive y Sincroniza en Microsoft Teams, esto con el fin de que se puede visualizar la data del archivo en linea. Ahora, mi Excel es un archivo de registro de solicitudes. Analice las siguientes particularidades: 1. Cuando utilizaba el procedimiento sencillo de ActiveWorkbook.Close SaveChanges:=True el archivo se guardaba en "Mis Documentos" aún cuando el archivo se abre directamente del sitio del onedrive sincronizado en el pc directamente en el explorar de archivos. 2. …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  10. Buenas compañeros, Estoy elaborando una macro para contar el numero de celdas que cumplen varios criterios en una misma columna, pero solo se me ocurre sumar varios Countifs(). Seguro habrá alguna forma mas eficiente de hacerlo. Por ejemplo para la siguiente tabla: Me gustaria contar las filas que cumplen los siguientes criterios: Columna A: Numero="100" Columna B: Semana="8" Columna : Perdida= "AB" y "AC" Como dije antes estoy haciendolo usando sumas de countifs: Perdidas = Application.WorksheetFunction.CountIfs(Range("A2:A" & ufila), "100", Range("B2:B" & ufila), "8", Range("C2:C" & ufila), "AB") + Application…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.6k visitas
    • 1 seguidor
  11. Hola buenas tardes amigos de Ayuda Excel Estoy parado en una macro que no he podido resolver a ver si pueden ayudarme. Gracias de antemano por su colaboración. Les explico. El archivo tiene varias hojas, Una se llama control enero, control febrero y asi sucesivamente La macro la voy a ejecutar en cada hoja Lo que debe hacer la macro es: 1) copiar la celda A3, que es una formula, de la Hoja CONTROL 1 a la primera fila disponible de la columna A5 de la Hoja Control General. 2) Copiar la celda j22 de Control 1 (que es una formula), como valor sin negrita a la primera fila disponible de F5 de la Hoja Control general. 3) …

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.8k visitas
  12. Started by manus,

    Buenas a todos,Ante todo espero que estén bien.Quería consultar sobre como podría hacer un msgbox que se cierre automáticamente después de ciertos segundos. Cabe decir que he buscado diferentes opciones y las pruebo y no se porque no me funciona, simplemente el msgbox queda allí y no se cierra.Dejo acá las tres opciones que encontré pero que no me han funcionado, no sé si es que no he activado alguna librería. Quedo atento. Option Explicit Const TIMEOUT = 3 'Segundos Sub MsgBoxTimer1() Dim objShell As Object, intMsgBox As Variant Set objShell = CreateObject("WScript.Shell") intMsgBox = objShell.Popup("Mensaje Temporizado en 3 Segundos.", TIMEOUT, "exceltrabaja…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 12.7k visitas
  13. Buenos días, En la empresa recibo un archivo Excel con muchísimos datos con los "saltos de hoja", no sé como explicarlo, de forma vertical. Quisiera ponerlos de forma horizontal. Las hojas, constan de la columna A a la L y 39 filas, y me gustaría que cortara datos, colores, etc desde la fila 40 a la 49 y lo pegara en horizontal y así sucesivamente. He estado mirando y no hay manera, todo lo que encuentro hace referencia a ordenar los datos pero yo no quiero que los datos se ordenen y cambien, solo busco un corta y pega. He buscado si existe alguna opción en Excel y no la sé encontrar y he supuesto que se tendrá que tirar de vba. Si existe llamadme **maravilloso…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 767 visitas
  14. Algún formulario Excel que permita explorar y abrir archivos de windows?

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.2k visitas
  15. Buenos dias, Quisiera modificar este diagrama de Gantt, la idea es poder añadir, ya sea con un sombreado los dias del calendario que usarémos para una tarea. En la captura indico lo que me interesa en la tarea 2. La suma de los dias sombreados seria en este ejemplo 13. Si añado mas dias pues se sumarian. Asi con todas las demas tareas. Es posible? Diagrama de Gantt.xlsx

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  16. Invitado Christian Herrera

    Buena tardes, ¿me podrían ayudar a resolver este problema? - Soy nuevo en esto de las macros y esta vez san google no me ayuda :( Estoy tratando de poder copiar la unica hoja del archivo INDICADORES.xls al archivo recién abierto formado por los datos que se toman de la variable IN26, el problema es que cada mes cambia el nombre del archivo y su carpeta, el abrirlo no hay problema ya que la variable "IN26" se forma de los datos obtenidos de las celdas en la hoja y libro indicadores, pero al copiar la hoja,si no especifico el nombre del libro IN26U202106350114.xls la macro no funciona, intente en lugar de poner IN26U202106350114.xls la variable "archivo" y no funciono,…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 937 visitas
  17. Hola a todos!! Les comento mi problema y espero que me puedan ayudar. Tengo la tabla2 la cual representa los pedidos que realizo, esta tiene un codigo y su respectivo SKU (Tipo de Producto). Y la Tabla1 que representa las ventas, con sus cantidades y SKU. Lo que necesito hacer es que a medida que vayan cayendo las ventas se asigne automaticamente el codigo del pedido a la venta, y una vez que se venda todo el pedido, se le asigne el siguiente pedido con su respectivo codigo y asi sucecivamente. Les dejo el excel. Libro de prueba (1).xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 700 visitas
  18. Started by bugy,

    Buenas Tengo una hoja que quiero que cada vez que cierre el programa me canvie el formato de las columnas (la F y la G) a texto. Alguna idea de como hacerlo? Muchas gracias

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 738 visitas
  19. Estimados: Hago un curso de Excel para cursos superiores en un colegio y me presentaron un problema que no supe abordar... Tengo dos archivos: "origen.xlsx" y "destino.xlsx"... En "origen.xlsx" hay un dato en una celda que deseo transportar a "destino.xlsx"... no hay problema si es que deseo hacerlo a través de referencias... El problema surge pues "origen.xlsx" cambia su nombre de acuerdo a la fecha en que se modifica algún valor... es decir "origen" se llama "origen 04 -09-2022.xlsx" si el día 4 de septiembre fue modificado... como ven, el nombre cambiará si (por ejemplo) modificamos "origen...xlsx" el día 6 de septiembre, entonces el nuevo nombre del archivo se…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 573 visitas
    • 1 seguidor
  20. Started by kloxtnx,

    Buenas tardes, de abte manos muchas gracias a la comunidad por la ayuda quisiera seleccionar la ultima celda con datos y copiarla para posteriormente pegarla en una hoja nueva, este es mi codigo Sub Copiar_Valores_Contabilidad() Sheets("Extraer_Rutas").Select For i = 2 To Range("A" & Rows.Count).End(xlUp).Row ActiveSheet.Range("A" & i).Select Selection.Copy Next Sheets("Rutas_Fs").Select ActiveSheet.Range("A2").Select ActiveSheet.Paste End Sub …

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 485 visitas
  21. Hola , necesito una pequeña ayuda para generar una macro que me compare la columna A en dos hojas diferentes (Hoja 1 y Hoja 2). La columna A de la hoja 1 contiene DNI+ Nombre (123456 Pedro Perez) y la columna A de la hoja 2 contiene solo el DNI (123456) La idea es recorrer con cada dato que hay en la columna A de la hoja 2 , la Columna A de la hoja 1 Si el DNI esta en la celda marcar la celda en verde, sino pasar a la siguiente celda (los DNI pueden estar descolocados) Sino lo encuentra, copiar el dato a la hoja 3 y marcar en amarillo. Adjunto un ejemplo Ejemplo comparar columnas.xlsx

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.8k visitas
  22. hola estimados foreros, ojalá puedan ayudarme por favor, necesito una macro para obtener la serie_inicio y la serie_final de registros que están duplicados (Columna A), les adjunto archivo de ejemplo con los datos y que lleva en columna D, E el cómo debería quedar la solución final. Desde ya, les agradezco cualquier ayuda foreros. ayudaexcel_series.xlsx

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 438 visitas
  23. Por favor el código abajo descrito , necesite que funcione con tablas Sub REP_FUNC() 'BUSQUEDA POR CEDULA Set h1 = Sheets("DATA") Set h2 = Sheets("REP-FUNC") u2 = h2.Range("F" & Rows.Count).End(xlUp).Row If u2 < 2 Then u2 = 2 'linea de inicio h2.Range("F" & u2 & ":N" & u2).ClearContents 'h2.Range("F" & u2 & ":K" & u2).ClearContents j = 2 celda = "A1" 'CELDA DE LA CONSULTA Set r = h1.Columns("E") 'COLUMNA DE CONSULTA DATA Set b = r.Find(h2.Range(celda), lookat:=xlWhole) If Not b Is Nothing Then ncell = b.Address Do h1.Range(h1.Cel…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 448 visitas
  24. Hola amigos, nuevamente por aquí, quisera saber si es posible almacenar en una variable datos para luego hacer un registro en otra hoja, les explico. tengo mi archivo Inf_Tec_registro varios, en el tengo tres hojas (data tgm, informe, Registro), con los conocimiento aquieridos en este foro, he logrado hacer un informe el cual me registra los datos llenados, a la vez me crea una copia del informe al hacer registar, el detalle de todo esto es que en la hoja informe, ingreso serie por serie para registar cada evento y aveces los eventos son repetidos para varias series, quisiera sabes si puedo ir almacenando los datos de serie, Nº posicion, fabricante, juego, propietario, p…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1k visitas
  25. Hola a todos, tengo una macro que elabora una tabla dinámica con algunos datos, el problema que me surgió es que por ejemplo necesitaría copiar un rango de datos que es variable es decir siempre mi tabla dinámica comienza la hoja1 del libro1 en la celda A4 en adelante, eh visto códigos que muestran la ultima fila con datos : Range("A65536").Select Selection.End(xlUp).Select Yo necesito copiar de la antepenúltima celda hacia A4, y pegarla en otro libro2, hoja2, especificándole a que celda ira la información. Trate de hacer algo asi: Range("A65536").Select if Selection.End(xlUp).Select = "Total general" then selection.end(xlup).select - 1 selection.pasteSpec…

    • 0

      Reacciones de usuarios

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