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 José_Santos,

    Hola a todos y gracias por anticipado por echarme una mano... Estoy trabajando con la API de JavaScript para Excel a través de Script Lab (esto no es muy importante) Estoy tratando de cambiar el ancho de una columna... Rango.format.columnWidth=100,81; Mi pregunta es, Ese 100,81 ¿a qué medida hace referencia? porque cuando lo veo al cambiar el ancho de la columna manualmente muestra 18,29 y en cm muestra 3,78 cm ¿Alguien sabría decirme en que unidades están esos 100,81? Debe ser una medida americana. Saludos Jose

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.5k visitas
  2. Started by 54022298,

    Hola buenos dias. El problema es que cuando voy Abro Excel, voy a la pestaña Programador y luego al icono Visual Basic (Programador - Visual Basic), pero al momento de darle en el icono visual Basic me aparece un mensaje que dice: "No se puede cargar VBE6EXT.OLB" - Este mensaje me da un boton el cual es aceptar Doy clic en aceptar y me aparece inmediatamente otro mensaje que dice "Memoria insuficiente" y no me abre Visual Basic. Tengo Microsoft Office 2010 y utilizo Windows 8. Gracias por todo.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.4k visitas
  3. Buen dia compañeros, tengo un problema con una macro que estoy elaborando en un combobox me lista las ciudades que tengo, pero donde ya me atore es donde requiero que dependiendo la ciudad que elija del combobox me abra un userform diferente pero me termina abriendo el mismo espero puedan ayudarme adjunto mi ejemplo ejemplo ciudades.xlsm

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.4k visitas
    • 1 seguidor
  4. Estimados, alguien me podría dar una mano con este tema? necesito poder contar celdas de colores, los cuales cambian en función del formato condicional, estuve buscando por la web pero ninguna de ls publicaciones me fue de utilidad. Gracias. Saludos.

    • 0

      Reacciones de usuarios

    • 9 respuestas
    • 4.4k visitas
  5. Started by agustin77,

    hola como puedo hacer una macro para combinar los numeros del 1 al 69 sin repetir algun numero en cinco posiciones ejemplo 1-6-2-3-5 o 63-58-42-47-2 numero que aparesca ya no se puede combinar

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 4.4k visitas
  6. Started by who23,

    Encontre una amcro en el foro de newton raphson la trate de adaptar para una funcion que tengo pero no funciona me sale que es #valor y derive la funcion usando mathematica asiq eu al derivada no croe que este mal peor nsoe que pueda hacer ojala puedna ayudarme les adjunto el arhivo de la macro y de la funcion en word Gracias Newton.zip

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.4k visitas
  7. Started by miguel.sme,

    Buenas tardes, tengo esta macro que lee caracter a caracter y los concatena con su mismo formato, en este caso concatena manteniendo color de ambas celdas. La he probado y es muy lenta cuando hay muchas lineas con muchos carcateres en cada celda. Como en realidad sólo tengo texto en dos colores que se encuentran siempre en celdas separadas, no sé si se podría optimizar y hacerla más rápida y ligera. Os copio el código y adjunto ejemplo: Sub COPYPASTECOLORINDEX() Set myRange = Range("A:B") 'aquí le digo el rango del aprimera columna For Each c In myRange.Cells If c.Value <> "" Then If c.Offset(0, 1).Value = "" Then …

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.4k visitas
  8. Started by Olvidado,

    Buenas tardes, necesito sumar los valores de dos columnas y restarlas de una tercera columna, por ejemplo A+B y el resultado - C que luego me lo ponga en D y que me vaya haciendo esto hacia abajo en 10 filas que tienen las columnas, Sería por supuesto una macro en VB. ¿Sería posible hacerlo? Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.4k visitas
  9. Started by vanenqn,

    Hola a todos, queria hacer una consulta, tengo este codigo: Public Sub Worksheet_Selection_Change(ByVal Target As Range) Dim nFilas As Long Dim nFila As Long Dim i As Long nFilas = Cells(Rows.Count, 4).End(xlUp).Row nFila = 1 For i = 11 To nFilas + 11 If Cells(i, 4) = "" Then Cells(i, 27) = "" If Cells(i, 4) <> "" Then Cells(i, 27) = nFila nFila = nFila + 1 End If Next End Sub con ese código numero las filas en el rango deseado, desde la celda 11 hacia abajo las que hayan.. el tema que yo aplico filtro y obvio la cantidad total se reduce de q se 20 aprox.. a 5 filas.. el tema que ese código numero perfecto pero no le im…

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.4k visitas
    • 1 seguidor
  10. Como puedo eliminar la barra superior del formulario para que solo pueda salir por boton abortar.

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 4.4k visitas
    • 3 seguidores
  11. Amigos, Estoy nuevamente por acá para que me ayuden con un código: Lo que estoy haciendo es enviar un mail de Outlook - en su versión 2010 -, mediante una Macro; ésta Macro envía un correo con un archivo adjunto más un rango de celdas específico. Hasta el momento todo bien, pero al momento de cambiar la propiedad Display por send es donde falla, ya que me envía el archivo adjunto pero no el rango de celdas. Les adjunto el código que estoy utilizando: Sub rangoCeldas() ' Don't forget to copy the function RangetoHTML in the module. ' Working in Office 2000-2010 Dim rng As Range Dim OutApp As Object Dim OutMail As Object Dim Adjunto As Variant …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 4.4k visitas
  12. Started by LaFlower,

    Buenas tardes. Me podrían apoyar por favor en darme una guía de como puedo obtener lo siguiente: tengo una macro que recorre la fila 1 hasta el último dato.. ejemplo A1 hasta AA1. Lo que trato de hacer es que si el valor es mayor a 3 letras entonces me limpie el contenido, pero cuando se encuentra con celdas combinadas me marca error. No puedo eliminar las celdas combinadas, porque me descuadraría mi archivo. Sub Eliminar_texto() Dim lc As Long, col As Long lc = Cells(1, Columns.Count).End(xlToLeft).Column For col = 1 To lc If Len(Cells(1, col).Value > 3) Then Cells(1, col).ClearContents Next End Sub Gracias por la ayuda y su tiempo. ☺️ MiEje…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.4k visitas
  13. Started by Ferjam,

    Buenas, es una cosa fácil pero se me esta resistiendo, con Application.hWnd saco la de la ventana activa, el excel, y con FindWindow("notepad", vbNullString), la de notepad, pero cuando intento otras que tengo activas como por ejemplo el word no me da nada... alguien me puede indicar como indicar en el findwindow / ex el titulo de la ventana, gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.4k visitas
  14. Started by maylex,

    Hola amigos, tengo la siguiente macro: Sub Tabla_de_Excel_a_Word() 'Copia el rango de Excel seleccionado en un nuevo documento Word Sheets("Reporte").Select Range("C8:T20,C89:T92").Select 'copiar rango selecionado Selection.Copy 'Crea nueva aplicación Word Dim swMSWord As Word.Application Set swMSWord = New Word.Application With swMSWord .Visible = True .Activate End With 'Abre nuevo documento Word swMSWord.Documents.Add 'Pegado con vínculo de las celdas Excel swMSWord.Selection.PasteSpecial link:=True 'Libera el objeto Word Set swMSWord = Nothing End Sub La cual copia mis tablas de Excel a un Word, pero tengo dos problemillas y necesito de …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 4.4k visitas
  15. Buena tarde amigos: tendrá alguien por ahí algún macro para buscar e insertar imágenes pero al desplegar la ventana de búsqueda esté direccionada a una carpeta especifica?. saludos

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 4.4k visitas
  16. Started by ulixes,

    Hola, quisiera una ayuda con esta macro: Sub copiarNuevo() Dim hj As Worksheet, x As Long, celda As Range x = 8 y = 0 For Each hj In ThisWorkbook.Worksheets If hj.Name <> "Index" And hj.Name <> "Plantilla" And hj.Name <> "Consolidado" Then If celda <> 0 Then y = y + 1 With hj For Each celda In .Range("v8:z48") If celda <> 0 Then Worksheets("Consolidado").Cells(y, x) = celda x = x + 1 End If Next End With End If Next End Sub Lo que deberia hacer es recorrer todo el libro (menos las hojas indicadas), copiar las celdas ocupadas en el rango v8:z8, y pegarlas en otra hoja, fila tras fila. El problema es que…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 4.4k visitas
  17. Buenas noches amigos necesito una ayudita para los que les gusta comparatir su conociemtiento en VBA, estoy tratando de desarollar un formulario que carga o enliste en una hoja de excel archivos pdf con sus caractieristicas generales y a su vez luego poder visualizar en un Web Browser. Este formulario cuenta con un textbox donde se visualiza la ruta del archivo a cargarce en la lista de la hoja1, el boton examinar buscará el archivo a enlistar, una vez que tengo mis archivo estos se visualizar en un combobox y al escoger puedo visualizar, no se si el boton Cargar PDF esta demás para visualizar porque simplemente se elegiria del combobox. Me intereza también poder extraer …

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 4.4k visitas
  18. Private Sub Worksheet_Change(ByVal Target As Range) Dim KeyCells As Range Dim rumbo As String If Application.Intersect(Target, Range("E4")) Is Nothing Then Exit Sub Else Set KeyCells = Range("E4") Azi = KeyCells If (Azi >= 0 And Azi <= 20) Then rumbo = "nn" ElseIf (Azi >= 21 And Azi <= 69) Then rumbo = "ne" ElseIf (Azi >= 70 And Azi <= 110) Then rumbo = "ee" ElseIf (Azi >= 111 And Azi <= 159) Then rumbo = "se" ElseIf (Azi >= 160 And Azi <= 200) Then rumbo = "ss" ElseI…

    • 0

      Reacciones de usuarios

    • 27 respuestas
    • 4.4k visitas
  19. Started by sebasmrn,

    Buenas, Estoy haciendo una macro que consiste en lo siguiente: Vaya a una carpeta, abra el primer excel, aplique un RefreshAll, lo guarde y cierre, y pase al siguiente. Estos exceles tienen conexiones de datos externas, que son las que quiero que me actualice, pero no lo hace. Pero si lo hago manualmente (abro excel, le doy en Datos a RefreshAll), sí me funciona. Este es el código que estoy aplicando: Sub AbrirArchivos() 'Paso1: Declarar las variables Dim Archivos As String 'Paso2: especificar una carpeta y el tipo de archivo que buscamos. 'En este caso la carpeta se lla "RFC2" y el tipo de dato es "xslx" Archivos = Dir("C:\Users\Desktop\2. RFC2…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 4.4k visitas
  20. Buenas noches. Soy yo de nuevo. Estimados, en esta oportunidad quisiera por favor me orientaran sobre como incluir de manera automática la firma que grabé en outlook a los correos que me genera el archivo que anexo. El mismo lo utilizaré para enviar correos masivos. La ruta donde tengo la firma es: C:\Users\Administrador\AppData\Roaming\Microsoft\Firmas\Firma Jezreel.htm Y esta es la macro que ejecuta el envío de los correos '***Macro Para enviar correos Sub correo() 'Por col = Range("J5").Column For i = 6 To Range("D" & Rows.Count).End(xlUp).Row Set dam = CreateObject("outlook.application").createitem(0) dam.To = Range("D" & i) …

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 4.4k visitas
  21. Started by jeladio,

    Hola: Quisiera saber si hay alguna manera de conectar excel con access remotamente, intente hacerlo con un macro que supuestamente conecta excel con MYSQL que debe encontrarse en servidor web, pero no logré hacer que me funcione, por lo que quisiera hacerlo entre excel y access y de forma mas "casera" ya que lo que necesito es actualizar precios cuando ando en la calle desde el servidor de la oficina. saludos

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 4.4k visitas
  22. Started by vic91am,

    Hola amigos foreros, Necesito una macro que me saque los cumpleaños que tengo en un determinado tiempo. Me explico, tengo una hoja con una base de datos con los nombre, apellidos, fecha de cumpleaños...... y en otra hoja me gustaría tener un par de calendarios con las fechas que quiero que me filtren los cumpleaños, Ejemplo del 5-Mayo al 15-Mayo --> me cumplen años María Díaz 10-Mayo. No se si me explicado... si hay algún problema me lo decís. Si no se puede poner dos calendarios que tiene que ser uno y se va seleccionando la fecha no pasa nada. O si con calendario no funciona pues algo que me ponga la fecha. Soy novato en esto y no sé si será posible. Para cualqui…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 4.4k visitas
  23. Started by jeladio,

    Hola amigos: Tengo este código que convierte a texto el contenido numérico de la celda A2 en la celda A1, y todo funciona bien el problema es que deseo hacer lo mismo pero dentro del textbox1 ubicado en un formulario que esta en el ejemplo y no logro hacerlo hay alguna manera de hacerlo. adjunto ejemplo. saludos numeros a letras.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 4.4k visitas
  24. Hola que tal, un saludo a todos. Mi consulta creo que es muy sencilla (cuando se sabe claro), y es que tengo una hoja donde importo datos de otro libro pero que no conozco el nombre, ya que es un reporte del banco y cada vez me lo da de distinta forma. La cuestión es que necesito saber cual es la última fila de ese libro con datos para poder copiarlas todas y pegarlas en el libro de destino, que es el que tiene la macro. Por razones de "afinamiento" del código no quiero seleccionarlo, sinó que, quiero consultar simplemente, porque me he dado cuenta que aunque se tenga el "Application.ScreenUpdating = False" da un pequeño pantallazo. La línea que he puesto me da …

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 4.3k visitas
  25. Started by Marcos14,

    Hola a todos, he probado un montón de cosas para intentar conseguir la dependencia de tres combobox, en el archivo adjunto tengo la relación de los combox, pero no consigo hacerlo. Solo cargo el principal. Espero vuestra ayuda Gracias Combobox.xlsm

    • 0

      Reacciones de usuarios

    • 23 respuestas
    • 4.3k visitas
    • 1 seguidor

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.