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

    Buenos días a todos, En la empresa tenemos una "Base de datos" con registros de personal, contratos, etc que se gestiona desde un formulario y funciona muy bien todo menos el botón EliminarBD que ejecuta el siguiente código. Private Sub btn_Eliminar_Click() Dim Ufila, ufilaD, i, j As Long Dim ht As Worksheet Dim hd As Worksheet Set ht = Hoja3 Set hd = Hoja8 If Me.txt_nic = "" Then Exit Sub If MsgBox("Seguro de eliminar TODOS los registros del item seleccionado?", vbQuestion + vbYesNo, "Borrar") = vbNo Then Exit Sub End If Ufila = ht.Range("A" & Rows.Count).E…

    • 0

      Reacciones de usuarios

    • 28 respuestas
    • 2.8k visitas
    • 2 seguidores
  2. Buenos días Tengo una macro que me abre un Excel y me rellena una serie de datos. Hasta ahí todo correcto. Pero me gustaría darle un poco mas de utilidad y que me abriera el archivo con el nombre que finalmente deseo guardarlo y lo guardara en la carpeta correspondiente Sub MetodoAbrirLibro() Dim rngCopy As Range, rngCopyOT2 As Range, rngOT1 As Range, rngOT2 As Range, cel As Range, cel2 As Range, adres$ Dim wbOr As Workbook, wbDes As Workbook Dim nombre As String, Ruta As String Application.ScreenUpdating = False Set wbOr = ThisWorkbook Set wbDes = Workbooks.Open("C:\Users\jctorres\Desktop\Partes presenciales\C2020-0136_Carga_Horas (1)2.xls") Wit…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 813 visitas
  3. Hola! amigos del foro quisiera consultar si hay alguna forma en que se pueda validar el usuario que ha abierto en libro, pero no en un evento Workbook_Open, mas bien cuando ya el libro se encuentre abierto esta comprobación se realice en la hoja activa. Lo que busco lograr es si el usuario definido en el código no es el mismo que ha abierto el libro, genere el procedimiento de cerrar el libro activo sin guardar los cambios. Agradezco cualquier ayuda o comentario. Saludos Historial Smart_IntelligenceTools.xlsm

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 1.5k visitas
    • 1 seguidor
  4. Hola a todos! Tengo un formulario en VBA para registrar datos en una tabla de excel. Lo que necesito, es que cada vez que se hace click en el botón "Registrar" de mi formulario, en la primera celda de cada fila vaya generando algo así como un Autonumerico con formato "REG-0001" y al volver a cargar datos en el formulario y al apretar nuevamente dicho botón, lo haga con el código "REG-0002" ...03,04 y así sucesivamente.... ¿Alguien me puede guiar? ¡Gracias!

    • 0

      Reacciones de usuarios

    • 13 respuestas
    • 2.4k visitas
    • 2 seguidores
  5. SentenciaSQL.xls Hola , estoy intentando hacer consulta SQL con este archivo pero no consigo que funcione en OFFICE 365, sin embargo en la version office 2016 si funciona.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.4k visitas
    • 1 seguidor
  6. Started by rzamoras,

    Buenos días, Solicito su ayuda para pasar el contenido de 12000 archivos en formato .rtf dentro de una carpeta con historia clínicas, requiero pasar estos datos a una base de Excel para usarlos posteriormente en Access. En una columna debe estar el nombre del archivo ya que esta vinculado a la ID del paciente, y en otra columna el contenido del archivo. Ya busque en el foro, encontré una macro para pasar txt pero no me funciono, se bloquea el archivo de Excel y no responde. Gracias Rene Zamora

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 2.1k visitas
    • 1 seguidor
  7. Buenas, Tengo una hoja en la que en la que en una de las columnas uso un buscarV, que además quiero que se autorrellene usando referencias relativas (el autorrelleno inteligente, vamos). Os pongo un ejemplo que no es real, ya que son decenas de miles de celdas, y tengo en cuenta el tamaño del rango que puede variar, etc….pero para simplificarlo. Si lo hago grabando una macro, obtengo esto: ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],Hoja1!R2C1:R10C3,3,FALSE)" Selection.AutoFill Destination:=Range("B2:B20") Pero no quiero que se vea que es una macro grabada, por lo cutre que queda. Además porque quiero aprender. Así que uso la expresión Appli…

    • 0

      Reacciones de usuarios

    • 14 respuestas
    • 2.8k visitas
    • 1 seguidor
  8. Hola! amigos del foro quisiera solicitarles el apoyo con lo siguiente: me encuentro tratando de encontrar la forma que pueda exportar datos de excel a access, estoy intentándolo con la siguiente macro: Sub CopiaDatos() Dim fila As Long, uf As Long, conta As Long Dim cn As ADODB.Connection, rs As ADODB.Recordset On Error Resume Next Application.ScreenUpdating = False Application.DisplayAlerts = False Set a = ActiveSheet Set cn = New ADODB.Connection Set rs = New ADODB.Recordset cn.Open "Provider=Microsoft.ACE.OLEDB.12.0; " & "data source=" & ThisWorkbook.Path & "\171 ProgramarExcel.accdb;" rs.Open "Clientes", cn, adOpenKeyset, adLockOptimistic, adCmdTable f…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.4k visitas
    • 1 seguidor
  9. Started by 96andres96,

    Buenas tardes. Tengo en excel un macro con el que imprimo un ticket y tras imprimir el ticket automáticamente se abre el cajón portamonedas. El cajón portamonedas he logrado abrirlo a través de las propiedades de la impresora que es de la marca AV Pos modelo P-83. No obstante, me gustaría hacer una macro que abra solo el cajón portamonedas sin necesidad de imprimir. El cajón que tengo es el HS-410. ¿Hay alguna forma de hacer esto? Gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.2k visitas
    • 1 seguidor
  10. Estimados buenas tardes, Recurro nuevamente a ustedes con un nuevo inconveniente que se me presentó con una macros que estoy trabajando, exactamente en el formulario "frm_CopiarCobros", lo que hace ese formulario es me combina 2 hojas, la hoja "CopiarCobros" y la hoja "Proyectado", combina datos de ambas hojas haciendo coincidencia con el número de Factura, hasta ahi todo funciona bien, el problema es cuando quiero exportar esa información, quiero enviarla a la hoja "Ejecutado" y solamente modificar algunos datos en la hoja "Proyectado", pero me lanza error con el código para enviar a modificar la hoja "Proyectado" todo el código lo copié de otra macros que hice dond…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.1k visitas
    • 1 seguidor
  11. Started by 96andres96,

    Buenas. Quisiera hacer una macro para guardar un rango de celdas en un PDF cuando se cliquee en un botón. La macro en sí, se hacerla. El problema viene en que el rango de celdas seleccionado es grande (no mucho), pero lo suficiente como para que cuando se genere el PDF se guarde en varias hojas. Por tanto, lo que me gustaría que me ayudasen a conseguir es a que la información del rango de celdas se redimensione para que quepa en una única hoja del PDF. ¿Es posible? Gracias.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.5k visitas
    • 3 seguidores
  12. Started by muyayito,

    Buenas exceler's. Me preguntaba si hay alguna forma de ocultar el reborde de la celda activa (no se como se llama) en un libro en concreto, mediante vba, en opciones, etc. Gracias por adelantado

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.1k visitas
    • 2 seguidores
  13. Buenas noches nuevamente a los Foristas. A sugerencia de JSD de los problemas que le planteaba sobre el formulario, abro un nuevo tema. Ofrezco disculpas porque realmente es así como debe ser. El tema es el siguiente: Tengo en este formulario otros problemas que quizás puedan ayudarme: realmente he tratado de ver dónde está el error, pero mis conocimientos no alcanzan y ustedes son los MAESTROS. 1.- En el FrmPersonal trabajo lo que es el listado de Personal con todos los datos y las Nóminas de Salario. En la parte de las nóminas (LstNomina) ya lo configuré de tal manera que con el evento DobleClick pueda traer cualquier trabajador y poder modific…

    • 0

      Reacciones de usuarios

    • 24 respuestas
    • 1.8k visitas
    • 3 seguidores
  14. Started by hectorcc_18,

    Hola!! Creé un módulo de clase para obtener el último dato en una fila o columna específica, hasta hace unos días funcionaba a la perfección, la exporté a mi disco duro y en cada nuevo proyecto la incluía dentro de los módulos de clase. Desde el módulo principal defino la respectiva variable que hace uso del módulo de clase con DIM y SET sin tener problemas, el módulo de clase original lo desarrolle desde abril de este año, y como comenté no me había dado ningún problema. El código del módulo de clase se llama clsUltimoDato, y el código es el siguiente: Private Fila As Integer Private Columna As Integer -------------------------------------------------------…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 556 visitas
  15. Started by jeaa,

    Buenos dias, expertos nuevamente solicito su ayuda, lo que pasa es que tengo un formulario que funciona bien, cuando busco un codigo me muestra bien, pero si pongo otro codigo no cambia de imagenes. Adjunto el archivo REPORTES.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 713 visitas
  16. Started by 96andres96,

    Buenas. Tengo un libro de excel donde dependiendo del valor de unas celdas (Inicio de sesión) quiero que se muestren unas hojas y se oculten otras. Tengo esta macro: If Sheets("Principal").Range("K23") = Sheets("Usuarios").Range("B4") And Sheets("Principal").Range("K24") = Sheets("Usuarios").Range("C4") Then 'Se comprueba usuario y contraseña ''USUARIO1 Dim Hoja As Object For Each Hoja In ActiveWorkbook.Sheets If Hoja.Name = "Inicio1" Then 'Quiero que se vea la hoja Inicio1 Hoja.Visible = True Else Hoja.Visible = False 'Oculta el resto de hojas End If Next Hoja Sin embargo, cuando voy a ejecu…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.8k visitas
    • 2 seguidores
  17. Started by 96andres96,

    Buenas tardes. Tengo una macro que selecciona un rango de celdas para imprimir. La macro la tengo en Hoja1 y las celdas que quiero imprimir están en Hoja2. Si coloco la macro en Hoja2 para imprimir, la macro corre bien, sin embargo, si coloco la macro en Hoja1 y la ejecuto desde esa página me salta error. Estoy en Hoja1 y quiero imprimir las celdas de Hoja2 con el siguiente código y me salta error: Sub ImprimirTicket() Sheets("Hoja2").Range("O2:R10").Select Sheets("Hoja2").PrintOut Copies:=1, Collate:=True, _ IgnorePrintAreas:=False End Sub Sin embargo, teniendo la macro en Hoja1, si le hago un apaño dirigiéndome a Hoja2 y regresando a Hoj…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
    • 2 seguidores
  18. Started by Jose BN,

    Hola! amigos(as) del foro hace poco me descargué este archivo de autoría de @JSDJSD El problema que tengo es intento cambiar la imagen del icono que lleva como nombre: AccessRefreshAllLists por otra de preferencia, tratando de cambiar en esta parte: imageMso="Inicioprueba" insertando la imagen en el editor, a pesar que al momento de validar el editor Office RibbonXeditor no salta ningún error, no realiza el cambio de la imagen. <!-- Created with IDBE RibbonCreator 2019 (Version: 1.1003) --> <!-- http://www.ribboncreator2019.com --> <!-- http://www.ribboncreator2019.de --> <customUI…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2k visitas
    • 2 seguidores
  19. Started by pinoji,

    Hola nuevamente muchachos. Espero estén bien todos, es mi mayor deseo. Estoy teniendo otro problema por acá con la configuración de un TextBox donde quiero expresar números. Propiamente el número que va a estar reflejado en esos TextBox son la división del Salario Mensual entre los días a trabajar y eso me da un índice o tarifa salarial diaria. No tengo problemas en las operaciones matemáticas, sino en el formato a expresar en el TextBox. Este dato lo toma el TextBox de la Hoja, la que tengo configurada (Celda) como Numero. Podrían ayudarme. Gracias de antemano y excelente semana para todos. Saludos Pino

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.7k visitas
    • 2 seguidores
  20. Started by knuckles,

    Hola a todos. Llevo meses empleando una macro para hacer scrapping la cual tengo que modificar dado que la web ya no admite IE. A través de tutoriales conseguí escribir un código que me permite obtener los datos, llevo varias semanas y tengo dos problemas: Primero, no consigo que la macro copie los datos de página 2 debajo de los datos de la página 1, los de la 3 debajo de las 2,..., sino que siempre copia encima de lo anterior. Segundo, copiar los datos en la hoja de excel actual (solo consigo que copie los datos si creo una nueva hoja) Este es el código inicial que funciona bien, debajo pongo a donde he llegado con Selenium. Emple…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.4k visitas
  21. Buenas Tardes, desde Colombia En un Userform tengo la Columna "A" con fechas y en la fila 1 tengo los datos de unas casas en la celda E1 se llama Casa01 la F1 se llama Casa0y y asisucesivamente hasta la celda O1 , en mi Matriz que va de E2:O50 tengo unos numeros, necesito que cuando el TEXTBOX1 que lo determina la fecha que escribay el COMBOBOX1 que lo determina el numero de Casa que escoja coincidan o se crucen me traiga el numero resultante, como hago, GRACIAS, por mi nivel NO PUEDO INSERTAR EL ARCHIVO

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 739 visitas
    • 1 seguidor
  22. Started by afigueroaf,

    Hola, Hace tiempo atrás descargué una macro a través de la cual se puede controlar el puerto Serial del laptop y por lo tanto, se puede establecer una comunicación con un dispositivo serial en protocolo RS-232. Ahora necesito hacer lo mismo, pero utilizando el protocolo serial RS-485 Modbus Alguien tiene alguna experiencia en eso? Gracias

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 726 visitas
  23. Started by 96andres96,

    Buenas tardes. Tengo el siguiente código en una macro: Sub Prueba() hora = Hour(Now) If hora <= 18 & Sheets("Hoja1").Range("G7") = 1 Then MsgBox ("haz esto") ElseIf hora > 18 & Sheets("Hoja1").Range("G7") = 2 Then MsgBox ("haz esto otro") Else MsgBox ("No se cumple") End If End Sub Sin embargo, siempre se me ejecuta el Else aunque a priori se cumplan las condiciones del If. Adjunto el excel de prueba. ¿Alguna idea del por qué no entra en el If ni en el ElseIf? Gracias Prueba.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 987 visitas
    • 2 seguidores
  24. Started by 96andres96,

    Buenas. Tengo dos preguntas sobre el uso de los formularios. Tengo un label con un texto en color negro, y me gustaría darle el color en hex: #731232 sin embargo, no sé cómo aplicarle este color a la letra. Por otro lado, quería saber si hay alguna forma de que los CommandButton tengan bordes redondeados en lugar de rectos. Gracias de antemano.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 6.1k visitas
    • 2 seguidores
  25. Started by pinoji,

    Buenas Tardes Foristas. Una vez más acá. tengo una pequeña duda y me gustaría que ustedes me ayuden . Quiero sumar dos o más TextBox y que el resultado me lo ponga en un Label en tiempo real. Necesito el código. Una amistad me dio este, y aunque no me pareció lo implementé y no suma. Private Sub LblImporte_Change () LblImporte.Caption = Val(TxtCantidad.valuie) * Val(TxtPrecio.Value) End Sub Gracias de antemano. Tengan un feliz resto del día. Pino

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 3.4k visitas
    • 2 seguidores

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.