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 zero-x,

    Hola , Buenas Tardes , agradeceria cualquier ayuda para automatizar este problema Con la planilla lo que obtengo es el directorio de trabajo que se llama originales para efecto de este ejemplo Datos Tengo una cantidad no definida menor que 40 de archivos pdf en carpetas FA,FB, para este ejemplo,pudiendo ser más FC,FD etc. Necesito introducir numeros correlativos en cada pdf partiendo de 01FA hasta 40 FA (05FA en este ejemplo) , pero no tomando el 00FA , el resultado de esto seria mover 00FA a la Carpeta FAN y ahi poner todos los archivos de 01FA hasta 50FA o menor con el numero coorrelativo dentro de cada archivo y que…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.8k visitas
  2. Buenas: He creado un excel con macros (ocultas) que tiene que utilizar otra persona y le da "Error de compilación en el módulo oculto: Ahorros". He investigado y parece que el problema es que mi sistema es de 64 bits y el suyo de 32, como puedo solucionarlo? Gracias

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.3k visitas
    • 1 seguidor
  3. Saludos amigos del foro, ahora me he puesto a pensar que puede simplificarse un código que uso para borrar el contenido de ciertas columnas. Si en el texbox1 coloco el 5 se borra todo el contenido de esa columna, en el rango indicado. Pero me parece que todo ese código es muy largo. Tengo 20 columnas en cada uno lleva informacion que en cierto tiempo puedo decidir borrar todo el contenido de una de las columnas. Expongo el código para saber si es posible encontrar un código mas corto que haga los mismo. Pro ejemplo veo que el mensaje puede ser solo 1 y cada vez lo que cambia es el numero de columna igualmente ocurre cuando se decide cancelar el borrado, y así p…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  4. Buenas tardes: Trabajo con varias hojas donde cada una tiene nombre y una hoja menu donde esta una lista de todos de nombres de las hojas de calculo, con este código : Sub Ir_a_kardex_tkt() ActiveWorkbook.Sheets(Range("s2").Value).Activate Range("A1").Select End Sub Voy a la hoja correspondiente, pero según el valor de la celda S2, como puedo hacer para que a cualquier celda que seleccione vaya a la hoja correspondiente?? Gracias y saludos cordiales Jesús

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1k visitas
  5. Hola!! Conformo que soy nueva en esto de macros. He hecho un formulario investigando aqui y alla, el cual agrega y modifica datos y los almacena en otra hoja del mismo libro. Hasta ahi mi formulario funciona como lo deseo, pero al querer modificar o agregar un dato faltante aun registrom quiero que la celda anterior a la celda a la cual agrego el nuevo dato, cambie el color de fondo. Investigando di con el evento worksheet_change(ByVal Target As range) el caso es que si hace el cambio de color de fondo, pero no queda permanente. Dejo el codigo que use y les suplico ayuda rivate Sub Worksheet_Change(ByVal Target As Range) …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 689 visitas
  6. Buenas noches Tengo el siguiente código que muy amablemente me ayudaron Sub Nuevokardexclte() Sheets("A1").Select Sheets("A1").Copy before:=Sheets(7) For Each Sh In Sheets If InStr(1, Sh.Name, Range("B1")) > 0 Then 'se busca el guión bajo porque no sabemos cuántos índices puede llegar a tener For i = Len(Sh.Name) To 1 Step -1 If Mid(Sh.Name, i, 1) = "-" Then indi = Right(Sh.Name, Len(Sh.Name) - i) + 1 nvonbre = Left(Sh.Name, i) & indi ActiveSheet.Name = nvonbre Exit For End If Next i 'si i = 1 es que no encontró el guión If i = 0 Then nvonbre = Range(…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1k visitas
  7. Hola a toda la comunidad, espero me puedan ayudar a un problema al parecer simple, pero no he podido darle solución a esto: Tengo un checkBox1 con esté código que al activarlo y me salga el mensaje de Ok y Cancel, al presionar el botón OK, se ejecuta la macro "ModificarFicha" (Hasta ahí todo bien).... Private Sub CheckBox1_Click() Dim respuesta As Variant respuesta = MsgBox("¿Desea registrar ahora la ficha?" + Chr(13) + "¿Desea proceder?", vbOKCancel) If CheckBox1.Value = 1 And _ respuesta = vbOK Then ModificarFicha End If End Sub El problema resulta cuando ya tengo el checkbox1 activado y ya se ejecuto la macro "ModificarFicha" porque presioné Ok. en mi f…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 15.9k visitas
  8. Hola: Tengo un Listbox que lista una carpeta y al hacer doble click en cualquier item se debería abrir el archivo. Antes de hacer pruebas, se me abrian todos los tipos (doc, pdf, y jpeg entre otros), salvo los tipo excel (xls*), pero ahora no se abre ninguno. Aun así, la consulta es para saber cómo abrir cualquier tipo de archivo incluyendo los de Excel, porque tengo varios códigos que abren archivos (del tipo ShellExecute, etc) , pero fallan con los xls* Abrir archivos.rar

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 3.3k visitas
  9. Estimados, En lo posible necesito que me guien en como seguir con una macro donde quiero colocar una suma en la fila correspondiente a un articulo y a la culumna que corresponda el mes actual. Columa A Columna B Columna C Columna D ID Articulo Abr-16 May-16 1 Pinzas 1 2 Una parte esta hecha que va agregando columna en caso que el mes actual no corresponda o en caso contrario realice la suma del articulo pero no logro colocar la suma en la columna del mes…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 805 visitas
  10. 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.7k visitas
  11. Tengo el siguiente problema, en el paso de validación de un formulario, tengo que validar 3 o 4 campos por linea, las lineas pueden llegar a ser 20. Es por eso que quisiera poder mediante un FOR a cada uno de los textbox/combobox. Intente algo asi pero no funciona, se que no lo estoy haciendo correctamente. Lei algo acerca de indexar pero tampoco se realizarlo, podrian indicarme por donde atacar el problema. Muchas gracias. VALIDACIÓN PARA LA PRIMER LINEA: If Npedidobox1.Value = "" Then MsgBox "Por favor seleccione Numero de Pedido en la linea 1.", vbExclamation, "Carga de Movimiento" Exit Sub End If If Conc…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 653 visitas
  12. Hola genios: Estoy comenzando con este apasionante mundo de las macros y quisiera conocer sus ideas. He creado un libro con algunas funciones y formulas que me ayudan a optimizar mis tareas. mi "hoja 3", llamada "Mensajes" pretende llevar un registro de mensajes y tareas que trabajamos entre algunos usuarios (archivo compartido). Así, si yo encuentro algo de interes, lo dejo anotado y quien lea el mensaje trabajara al respecto en las otras hojas. Mi hoja "Mensajes" debe hacer lo siguiente: Columna A, solo admitirà 2 valores: "PENDIENTE"y"TERMINADO" Columna B se usara para ingresar el mensaje. Columna C se usara para ingresar la fech…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 764 visitas
  13. Buenos días, Requiere de su ayuda para que por favor me apoyen diciéndome como puedo plantear un código vba, que me permita consolidar todos los archivos contenidos en una carpeta X en un solo archivo de excell para poder armar una base de datos. obviamente los archivos contenidos en la carpeta tienen la misma estructura (misma cantidad de campos, iniciando en A1 y terminado en la columna F), solo que son casi 60 archivos los que debe consolidar la macro. Si me pueden ayudar les agradecería inmensamente.

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.5k visitas
  14. Started by ramonvar,

    Hola a todos, espero me den una mano con esta macro que encontré en este foro, lo quiero adaptar a mis necesidades pero no lo logre.. La idea es que me busque los datos de la columna "E", de la "hoja27" y una vez que encuentre me posicione el cursor en la celda, esta macro la hace pero solo con nombres cortos Ej. fast, pero yo tengo de la siguiente manera Ej. Alimentación - Restaurante - FAST WAY FOODS S.R.L., lo ideal para mi es que encuentre al darle Fast o Way sin importar el orden Y cuando presiono el Botón "criterio" que me limpie el textbox, porque ahi da un error al repetir la busqueda y en el label2, que me de los valores de la celda "D".....desde y…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 713 visitas
  15. Hola a tod@s mi pregunta es la siguiente: Quiero poner caducidad a un libro de Excel una fecha en donde se caduque y no puedan acceder al libro. Estuve buscando una macro y pille esta: Private Sub Workbook_Open() Dim FechaCaducidad As Date FechaCaducidad = #5/14/2016# If FechaCaducidad > Date Then MsgBox "Faltan " & FechaCaducidad - Date & " días para su caducidad", vbInformation Else MsgBox "Lo sentimos, pero este libro de trabajo" & vbCrLf & "ha llegado a su fecha de vencimiento", vbCritical Application.DisplayAlerts = False ActiveWorkbook.ChangeFileAcces…

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 3.4k visitas
  16. Estimados, la consulta es la siguiente: tengo este vinculo en A1 ='C:\Users\Usuario\Cursos\1º AÑO TT\[LENGUA_Y_LITERAT_1º_TT.xlsm]Hoja1'!D10. Lo que necesito es que cuando pegue la formula en otra celda le pueda cambiar solo la parte de la celda donde esta el dato, en este caso seria "D10", es decir poder modificar D10 por la letra y numero que yo quiera por ej. P13. y que me pegue la formula donde yo quiera. Bueno no se si se entendió bien pero esa es la idea mas o menos.

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 603 visitas
  17. Hola a todos...quisiera saber como hacer para que esta macro me busque palabras que se encuentran dentro de una cadena de texto. Ej. Combustible - Estación de Servicios Internacional - RAMIREZ GALEANO MILCIADES VIDAL......es decir escriba "Estación o Servicios o Vidal y que me lo encuentre He probado de diferente manera y no pude dar con el...creo que mi problema está en esta linea....... palabra = VBA.Format(Me.TextBox2, "*") Esta es la macro que dispongo Private Sub CommandButton2_Click() Dim palabra As String With Range("E1:E" & Range("E" & Rows.Count).End(xlUp).Row) palabra = VBA.Format(Me.TextBox2, "*") Set fil = .Find(pala…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 910 visitas
  18. Saludos amigos del foro, tengo un archivo que al abrirlo y luego mostrar el userform esta todo bien pero al cerrar con unload me se muestran junto al archivo otras dos hojas. Sospecho que debido a que le aplique un codigo para minimizar y maximizar el userform este esta haciendo algo como eso pero no estoy seguro, pongo el codigo de min-max: Option Explicit Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Declare Function FindWindow…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 795 visitas
  19. Estimados amigos del foro me gstaria que me ayudaran a resolver este tema, el mismo que muchos buscan tener resuelto este caso en la mayoria de sus aplicaciones. Una aplicacion excel que abra automaticamente un userform, se oculte excel de manera independiente a otros abiertos, en el userform exista un modo de mostrar al excel y volver al userform ocultándolo. Al cerrar el archivo se vuelva todo normal al excel con previo guardado He intentado algunas cosas pero se presentan errores al probar diferentes modos Espero me puedan colaborar y ademas lo puedan colocar en aportes, ya que es útil para todos Gracias anticipadas subo el archivo para que lo…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 775 visitas
  20. 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
    • 922 visitas
  21. Hola a Todos, Tengo un archivo que hace la búsqueda correcta en una carpeta de un archivo en formato PDF, sin embargo lo que deseo es que este mismo haga búsqueda parciales, osea que me busque los tres dígitos de un archivo, en este caso lo deseo para que me busque números de boletas y no deseo escribir todo el nombre del archivo, porque es extenso. ¿Es posible hacer eso? Espero su pronta respuesta. ayuda_pdf_1.xlsm

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 1.4k visitas
  22. Hola y de antemano muchísimas gracias por su ayuda. Estoy desesperado ya que no encuentro una solución a mi problema, el cual describiré a continuación: Tengo dos ComboBox y quiero hacer uno dependiente del otro dentro de un formulario, mis listas se agrupan de manera horizontal... por ejemplo: ComboBox1 - Celda (A1:A100) / ComboBox2 - Celdas a la derecha, (10 Celdas B1:K1 ) A B C D... 1 Aves Carpintero Cotorra Perico 2 Caninos Chihuahueño Salchicha Bulldog 3 Felinos Tigre León Puma …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.9k visitas
  23. Started by Alfonso5597,

    Saludos amigos foreros De nuevo recurro a su ayuda para resolver un problema que me tiene atrancado por mucho que me esfuerzo, intento sumar las horas trabajadas desde 2 listbox los agrego a unos textbox y sumo estos, aqui tengo el problema, tambien me sucede que dentro del list el formato de hora no me aparece Espero que puedan eharme una mano Gracias por anticipado, saludos Prueba.xlsm

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  24. Hola les pido su ayuda con lo siguiente... tengo un formulario en Excel que me ayuda a actualizar un catalogo de fotos Web estas fotos están en una tabla de una base de datos Oracle, la macro que utilizo estaba funcionando bien hacia el cambio sin problemas solo que debido a otros problemas tuve que reinstalar el SO en mi equipo y al querer usar de nuevo esta macro ya no funciona, si actualiza la información pero no termina se queda congelado Excel. Esta es la Macro que utilizo: Sub SubirFoto() Dim sql As String Dim m_stream As Object Dim cn As Object sql = "select foto from prueba_fotos where num_empleado=44163" Set cn = CreateObject("ADODB.Connect…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 771 visitas
  25. Buenos días: Tengo el siguinte código: Sub NombreHoja() ActiveSheet.Name = Range("B1").Value End Sub Bueno pone el nombre a la hoja de calculo según el valor de la celda, mi pregunta es de que si hay otra hoja con el mismo nombre me de un aviso para cambiar de nombre o en su caso asignarle por defecto un carater numérico para diferenciarse de la otra hoja que tenga el mismo nombre. Saludos cordiales Jesús

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.2k 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.