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. Buenas tardes tengo un form que que desde ahi ingreso datos pero en algunas ocaciones ingreso mal los datos con con un boton buscar ubico los datos hago la modificación y con un boton "modificar" quiero que se grabe los cambios hechos que hice estos se graban en una hoja de excell "BBDD" que viene a ser la base de datos. Tengo el código pero no puedo programarlo bien para dicho objetivo a ver si me puedes ayudar. Muchas gracias amigos App'Demo.xlsb

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 962 visitas
  2. Invitado Nicolás Araneda
    Started by Invitado Nicolás Araneda ,

    Hola buenas, Necesito ayuda porfavor, tengo una fuente de datos (pestaña Prueba) donde el combobox están los datos del campo "Datos" y no me sale que al seleccionar un dato del combobox se desplieguen todos sus id y nombres correspondiente en una celda de excel. Ejemplo: si en el combobox selecciono Perú, en la misma celda de excel se debería desplegar todos sus datos. Favor si alguien me puede ayudar estaría muy agradecido. Adjunto link: https://drive.google.com/open?id=1Bbog2UwVWrCbfmAuDEoAeVdD5FgIRpIv Saludos

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.9k visitas
  3. Started by RandalHP,

    Buenas tardes, Tengo el siguiente Private Sub en mi hoja de cálculos: Private Sub Worksheet_Change (ByVal Target As Range) If Target.Column < 17 Then Cells(Target.Row, 16383).Value = Now End If If Target.Column = 18 Then Cells(Target.Row, 16384).Value = Now End If End Sub Pero me gustaría saber que tengo que modificar o agregar para que cuando se ejecute la orden de (Target.Column < 17 Then) al modificarse después de un registro no cambie la fecha y hora de creación. Al parecer el Excel está considerando colocar la fecha y hora cada vez que se modifica las 17 primeras columnas, lo ideal sería que la fecha y hora salga solo una vez, cuan…

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 2.5k visitas
  4. Buenos días; Por favor, me podéis ayudar??. He creado una macro con unas casillas de verificación en un formulario. Al marcar cualquier casilla de verificación y dar al botón generar, llama a una macro “Generar_Datos” y hace X. El problema que tengo es, si tengo las líneas a ejecutar de las casillas de verificación dentro del formulario funciona pero si las tengo en un módulo ( necesito que este hay ya que si no hay cosas que no me funcionan ) me da error de “variable de objeto o bloque with no establecido”, no sé cómo definirlos, los definí como objetos pero no me funciona. Os adjunto el ejemplo. Muc…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1k visitas
  5. Hola a todxs. Soy Lobato, un publicista de 58 tacos, que a base de copiar y pegar cosas que encuentro, he podido proteger mi plantilla para un cliente con Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) MsgBox "Lo sentimos,..etc", vbCritical, "EXCELeINFO" Cancel = True End Sub Y va bien, no permite salvar, pero aparece ya al abrir el fichero, y no mola, es muy agresivo para el cliente, a mi me gustaría que solo apareciese al tratar de salvar. Eso no sería agresivo pues el cliente está informado de la protección, lo que no deseo es hacérselo saber constantemente. Saludos desde Gijón.

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 1.4k visitas
  6. Buenos días Estimados, Tengo un listbox que muestra ciertos datos que están en una cierta hoja, una de las columnas está en formato hora [hh:mm] pero al visualizarla en el listbox me aparece con puros números como muestra la imagen: Este es el código que estoy ocupando y me lo muestra con números: Me.ListBox1.List(Me.ListBox1.ListCount - 1, 7) = Format(b.Cells(nFila, 8), "hh:mm") 'HORA Como puedo hacer para cambiarle el formato y que se vea como debe ser? (hh:mm) ¿Existe otra forma de asignarle el formato hora a la columna? Gracias.

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 3.5k visitas
    • 1 seguidor
  7. Started by julioms23,

    Buenos días, tengo una duda sencilla a priori pero que no entiendo el problema: - He creado un botón que activa un reemplazar espacios (cuando las unidades son + 1000 hay un espacio). Si lo hago manualmente se queda el valor como numero pero si lo hago con la macro se queda como texto. El archivo de partida es un .txt y se pega en un excel. adjunto el ejemplo txt. como veís la ultima fila es superior a 1000 rtoyprod.txt

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 820 visitas
  8. Hola estimados amigos Espero que me puedan colaborar en este problema , por que no le encuento solucion, les explico, tengo unos texbox que quiero que cambien de color dependiendo del estado, LIBRE OCUPADA o RESERVADA, he conseguido que cambien de uno en uno, por lo que necesito mucho codigo y se hace muy pesado el programa, y necesito que con menos codigo se rellenen todos Muchas gracias Saludos Prueba

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 1.7k visitas
    • 1 seguidor
  9. Started by Pirtrafilla,

    Hola a todos de nuevo. De nuevo con un problema con una consulta SQL desde Excel a Access. Pongo el código y explico. 'macro para grabar los datos en tabla Checklist Fin = ListBox1.ListCount For i = 0 To Fin - 1 xxx = ListBox1.List(i, 0) Conexión If IsNull(ListBox1.List(i, 9)) Then Sql = "UPDATE Tb_Checklist SET Importe='" & ListBox1.List(i, 4) & "',Contable='" & ListBox1.List(i, 7) & _ "', Previsto='" & ListBox1.List(i, 6) & "', En_Curso='" & ListBox1.List(i, 8) & _ "' WHERE ID =" & xxx Else Sql = "UPDATE Tb_Checklist SET Importe='" & ListBox1.List(i, 4) & "',Contable='" & ListBox1.List(i, 7) & _ "', Previsto='…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 3.5k visitas
  10. Hola a todos. Mi nombre es Maurizio y mi problema es este. En una hoja de Excel, creo utilizando una serie de hallazgos producidos según el día y el mes insertados en la celda (B1: B2) y hasta ahora todo parece estar bien. Pero ahora me gustaría que las dos coordenadas que se entrelazan entre ellas en la fila y la columna que van desde la celda (B7: M37) una vez identifiquen la celda de color de color (rojo) El número que se inserta en esa celda en particular podría adherirse a la celda (B4) En tu opinión, es posible hacer todo esto! Gracias como siempre a partir de ahora por toda la ayuda que me puedan brindar; Saludos desde A.Maurizio ######################…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 767 visitas
  11. Invitado danigran

    Hola a todos, soy nuevo en el foro, gracias por el soporte y la ayuda que prestáis. Mi cuestión es la siguiente: Tengo varias hojas que empiezan por el nombre "PRO" y necesito que el rango (b13:g64) de cada una de las hojas pegue los valores en la hoja "Dat" a partir de la primera columna en la siguiente fila vacía. Lo he intentado con el siguiente código pero solo pega los valores del rango" b" y no todo el rango. Sub prueba() Dim hj As Worksheet Dim x As Integer For Each hj In ActiveWorkbook.Sheets If hj.Name Like "PRO*" Then Sheets("Dat").Range("a" & Rows.Count).End(xlUp).O…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 664 visitas
  12. Started by nitrito,

    Estimados: Solicito su valiosa ayuda Tengo una planilla en la cual deseo buscar datos de otra con una macro. En la parte donde dice cuenta, deseo colocar sólo el número y presionar buscar, si es que existe, necesito que me arroje los datos, si es que no, que aparezca mensaje de error. LEs adjunto la planilla, les dejé un ejemplo. Por favor si alguien puede ayudar se lo agradecería mucho Gracias Libro1.xlsm

    • 0

      Reacciones de usuarios

    • 17 respuestas
    • 2.6k visitas
  13. Started by rudape,

    buenos días, me gustaría utilizar una macro que me coloque datos en un archivo dependiendo de si esta en otro archivo. la cuestión es que tengo un archivo llamado master con columnas de la A a la E, y otro archivo llamado impresión con columnas A y B, quiero que al ejecutar la macro en en archivo master, busque en la columna b del archivo impresión los números de pedidos que estén y en el archivo master llenar esos números de pedidos las columnas c (con la fecha y hora actual) y e (con la palabra "impresión". ojo pero solo si están vacías de lo contrario dejarlas como están. de antemano muchas gracias impresion.xlsx master.xlsm

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 757 visitas
  14. Started by eugeniocol,

    Hola buenas. Tengo esta macro que quisiera que se ejecute en hojas determinadas del libro Private Sub CommandButton1_Click() Dim NX As Integer, N2 As Integer Dim CX As Integer, C2 As Integer, SEL As Integer If Not IsNumeric(TextBox1) Then MsgBox "Cantidad X incorrecta" Exit Sub End If If Not IsNumeric(TextBox2) Then MsgBox "Cantidad 2 incorrecta" Exit Sub End If If CheckBox1 Then Combinar Application.ScreenUpdating = False NX = CInt(TextBox1) N2 = CInt(TextBox2) For y = [B18] + 3 To 4 Step -1 CX = 0: C2 = 0: SEL = 0 For x = 0 To 13 If ListBox1.Selected(x) Then SEL = SEL + 1 If Cells(x + 1, y) = "X" Then CX = CX + 1 …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 884 visitas
  15. Por favor alguien que me ayude con mi proyecto solamente me hacer falata hacerle funcionar a mi codigo de modificación por medio de un boton ingreso datos por este form tengo botones basicos todos ya me funcionan menos el botón "Modificar" es se da el caso en que he ingresado mal los datos entonce con e boton "Buscar" que es la "lupa" ubico el lote hago las modificaciones correspondientes y el Boton Modificar debería grabar con las modificaciones hechas pero no logro hacerlo alguien con su genialidad me puede colaborar. Gracias App'Demo.xlsb

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.1k visitas
  16. Bunas tardes chic@s; No sé ni cómo explicaros lo que estoy intentando hacer, a ver si consigo. Estoy intentando filtrar datos de una hoja Excel ( Hoja1) y que se copie en su hoja correspondiente ( hoja con el nombre de la condición filtrado ). Las condiciones a filtrar están en un userfrom, os pongo un ejemplo. Si abro el userfrom ( menú ) y marco TACON Y PIEL, al pulsar generar, lo que quiero es que me filtre por TACON y me copie los datos en la hoja llamada TACON y me filtre por PIEL y me copie los datos en la hoja PIEL, si marco todo, quiero que me vaya filtrando por cada una de las condiciones y se vaya copiando en la hoja correspondiente. Com…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  17. Invitado Julia Mellado
    Started by Invitado Julia Mellado ,

    Hola buenas, @Haplox Mi problema es este: - Quiero filas en varias hojas Excel a la vez. Insertándola siempre desde la hoja1. - Que la fila en blanco que se inserte esté en el mismo numero de fila en todas las hojas. Es decir que si inserto una fila en Hoja1 en la fila 12, en las hojas2 y hoja3 también se inserte en la fila 12. He probado con este código que le dejaste a otro usuario pero me surge el problema de que si la fila que inserto en la hoja1 es la 12, en las demás hojas se me inserta en la fila 13, es decir, una por debajo. ¿Alguien sabe el problema del código? Public Filas As Long Public seleccion As Range Private Sub Work…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 1.3k visitas
  18. buen día tengan, eh aqui yo con los problemas de horas y fechas, pues ahora con la problemática que tengo que resolver que un textbox solo permita un horario determinado, es decir en un textbox al inicializar el formulario o a traves de un boton necesito determinar que solo acepte en horario de 24 horas desde las 09:00 horas hasta las 23:59 horas; es decir, si es menor a las 09:00 horas y mayor a las 23:59 horas me marque algun mensaje de error o en otras palabras que si la hora que esta en el textbox esta entre el rango de las 00:00 a las 08:59 horas me marque como hora invalida....¿como lo logro?, alguien que me pueda ayudar porfavor. determinar horario de horas xD.x…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  19. Started by ELVERKU,

    hola amigos del foro estoy modificando un macro que hace tiempo subio nuestro buen amigo gerson, muchos lo han de conocer es el turbo filtro a este macro le eh adaptado un modulo de consulta de doble click sobre el listbox para poder desplegar otra pantalla y poder hacer un comparativo de unas listas de precios el macro corre y carga la informacion pero tengo este detalle que no busco la solucion o no se que estoy poniendo mal 1.- el primer problema es que no guarda las modificaciones y al darle click al boton de guardar borra la primera linea y lo deja en ceros 2.- el segundo problema es que no me respeta los decimales eh intentado darle varios formatos p…

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.9k visitas
  20. Hola amigos tengo el siguiente detalle, la siguiente macro. Sub Ordenando() 'ordena la hoja por la col B en forma ascendente teniendo la primera fila como encabezado Worksheets("Hoja7").Select Range("A1").Select Selection.Sort key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom End Sub debe ordenar alfabéticamente todos los datos de la hoja7 tomando como referencia la columna B desde la fila 2 hasta la ultima con datos, ya que la fila 1 es para los encabezados, son 13 columnas. el detalle es que al correrlo en un libro nuevo funciona al cien pero ya dentro de un proyecto que tengo funciona a medias…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 3.3k visitas
  21. Buenas noches, Necesito una ayudita. Tengo un archivo excel con una macro que convierte los datos introducidos en columna A y B en fechas cada vez que introduzco una fecha sin barras. Por ejemplo, si introduzco 020219(ddmmyy) me lo convierte en 02/02/2019 (dd/mm/yyyy) automaticamente. Solo lo convierte si introduzco los datos uno a uno. Necesito cambiar la configuración para que haga lo mismo pero solo si pincho en un botón de comando. Si no pulso ese botón no haga cambios Este es el código que utilizo con el metodo " Worksheet_Change" y Tarjet Private Sub Worksheet_Change(ByVal Target As Range) Dim rngData As Range Set rngData = Range("A2:…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.7k visitas
  22. Started by Pirtrafilla,

    Hola de nuevo. Siento molestar, de verdad que estoy buscando y probando y no me sale bien. Tengo un problema para calcular dos fechas de dos celdas en Excel. En una celda me aparece el formato fecha incluyendo horas y en otra celda solo fecha. Intento restarlas y mientras no cambie de mes la fecha larga no hay problema, pero como sea otro mes lo hace mal. Esta es una foto de las celdas. Y el código que he comenzado a hacer y que luego necesitaré estos cálculos es este. Sub RellenarAusencias() ApplicationOff ' Dim rng1, rng2 As Range Dim FechaF As Date Set Ws = Sheets("AusenciasPnet") uf1 = ActiveSheet.Range("A65536").End(xlUp).Row: uf2 =…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 784 visitas
  23. Started by Pirtrafilla,

    Hola a todos, necesito si podéis que echéis una mano con este código. El código funciona bien, pero es lento. Porque recorre cada celda de la fila y ejecuta una acción tantas columnas tenga el rango filtrado. No se si se puede hacer que en cuanto encuentre el valor filtrado y ejecute la acción cambie de fila. Eso aceleraría considerablemente el código. Lo copio y si podéis ayudarme os lo agradezco. Sub PegarJornadasPnetInst() ApplicationOff ' 'declaro variables Dim uf1, uf2, f1 As Long Dim IDRH, ORDEN As String Dim celda As Range, rng As Range 'asigno las hojas Set ws1 = Sheets("Instaladores"): Set ws2 = Sheets("PartePnetInst") 'ultima fila de hojas uf1 = …

    • 0

      Reacciones de usuarios

    • 11 respuestas
    • 2.6k visitas
  24. Started by Blecho,

    Al ejecutar un fichero Excel con macro me salta el "error de compilación en módulo oculto" en una computadora. En otra computadora funciona perfectamente. ¿Alguien podría aportarme alguna idea para solventarlo?. Adjunto fichero en cuestión. Gracias. Acciones formativas.xlsm

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 8.1k visitas
  25. Hola a todos, mi nombre es Maurizio Y mi problema es este: Hace unos años logré crear una especie de pronóstico del tiempo con vba y hasta ahora todo va bien. Como todo este trabajo funciona muy bien. Pero como, sin embargo, normalmente no soy una persona que se satisfaga fácilmente, me gustaría entender cómo cambiar De manera drástica, su Enlace no solo puede obtener las mismas cosas; Pero también para poder atraparlos. Primeras tres imágenes de la ubicación elegida por mí de la hoja de Excel. Hay algunos de ustedes que podrían ayudarme en esto, aunque solo sea llegando a los escritos. ¡Del lugar en cuestión y el mínimo y el máximo de los tres pr…

    • 0

      Reacciones de usuarios

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