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

    Muy buenos días para todos Espero puedan ayudarme con un inconveniente Es bien simple, tengo un botón en excel con el que abro un UserForm, en donde tengo un ComboBox Dicho ComboBox carga su lista desde un rango de celdas en otro archivo llamado Productos Esos productos tienen un código... de 7 cifras, y ahí es donde tengo el problema algunos de esos productos comienzan con 0 y el ComboBox me los anula el código que tengo es el siguiente: Private Sub Producto_DropButtonClick() Producto.List = Workbooks("Productos.xls").Sheets("Datos").Range("A2:A3408").Value End Sub [/CODE] "Producto" es el nómbre de mi ComboBox Espero me puedan ayudar. Desde ya muchas g…

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.7k visitas
  2. Buen día y con el gusto de saludarle nuevamente expertos recurro a ustedes para solicitar su valiosa colaboración en el mejor de los sentidos ya que tengo un textbox al que le quiero poner un formato de hora HH:MM para que al momento de escribir obligue al usuario final a poner ese formato de tiempo exactamente, he intentado hacerlo pero en mi programación veo muchos errores, por ejemplo cuando le doy con las teclas direccionales para seleccionar y me posiciono en el espacio 3 y le doy una letra este la acepta; bueno de antemano el textbox no debe aceptar letras, unicamente números y en el espacio 3 el signo de dos puntos (:) pero como lo digo al hacer eso lamentablemente…

    • 0

      Reacciones de usuarios

    • 4 respuestas
    • 2.7k visitas
  3. Started by EDUARD1580,

    Hola amigos hay alquien que me colabore lo que quiero es que al momento de hacer inventario nesecito incluir las fechas de vencimiento que tiene cada prodcuto pero no e podido solucionar el problema que tiene mi planilla gracias planilla de invenatrio.rar

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 930 visitas
  4. Started by edwingaleano,

    Buenas tardes a todos Tengo un formulario de se actualiza desde una base de datos de excel, uno de los datos que sube es un valor en pesos. El detalle es que me lo actualiza el label en formato numero, aguien sabe como hago para que el label me de el valor en pesos. Ya intente asi pero no me da: Label37 = FormatCurrency(0) Aguien que me ayude por fa Edwin Alexander Galeano.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.9k visitas
  5. Started by Juangiraud,

    en el forms que hice tengo un texbox que se llama txtlockers y carga datos en la planilla excel en la columna 5 pero me lo carga como si fuera texto y quiero que sea pesos. No me deja subir el archivo porque me dice que es muy grande que alguien me ayude, muchisimas gracias Juan

    • 0

      Reacciones de usuarios

    • 8 respuestas
    • 877 visitas
  6. Started by sprit36,

    Buenos días, tengo una formula que quería hacer que fuera una macro ya que tengo muchos registros y al aplicarla quedan 0 o N/A. =SI(B2=Hoja2!A2;Hoja2!B2) Gracias.

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 573 visitas
  7. Started by Ben10,

    Estimados, tengo una fórmula y me gustaría pasarla a macro para aplicarla cada vez que lo deseo a distintos libros, pero estoy super nublado, su ayuda es agradecido desde ya {=SI(Y((MIN(SI($A$2:$A$4235=A2;$I$2:$I$4235))<>MAX(SI($A$2:$A$4235=A2;$I$2:$I$4235)));I2=MIN(SI($A$2:$A$4235=A2;$I$2:$I$4235)));I2;"")}[/PHP] Saludos!

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  8. hola amigos tengo la siguiente pregunta que a lo mejor ala mayoría de ustedes ya les ha pasado. tengo una formula matricial mayor a 255 caracteres al utilizar la formula manualmente y presionar las teclas control+shift+enter funciona sin problemas, al grabar la macro y ejecutarla me da un mensaje de error 1004. como puedo hacer para poner esta formula dentro de la macro y que esta la ejecute? copie este ejemplo pero no me ha funcionado para probar y hacer cambios pero no me ha funcionado Sub Macro2() Dim celda As Range ForEach celda In Range("B2:B12") celda.Select SendKeys "{F2}+{ENTER}", True Next celda EndSub[/CODE] mi formula es así de larga, favor su a…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.4k visitas
  9. Started by EDUARD1580,

    Buen dia amigos del foro amigos para que si me pueden colaborar en la siguiente formula de busqueda por nombre y codigo de empleados, lo que pretendo es que cuando realizo la busqueda por el codigo me salga el nombre del empleado y que se registre la entrada y salida y que automaticamente se registre en la planilla matriz y asi sucesivamente con las demas hojas de cada nombre de empleados Amigos gracias por su colaboracion ejemplo.rar

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 782 visitas
  10. Started by josegomez,

    Hola a todos y feliz año nuevo. con la siguiente cuestión, En al archivo adjunto trato de explicar, ya que el asunto es medio complicado De antemano muchas gracias. formula_dinamica.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 836 visitas
  11. Started by jesus miguel,

    Hola amig@s: Estoy trabajando con una tabla para hacer mi libro bancario, esta funcionando bien, solo que en la columan I tengo la formula = I30 , pero cuando ingreso una nueva fila en la tabla la formula no baja a la siguiente celda como puedo hacer para que la formula baje? gracias por su tiempo. Saludos Jesús Bancos.rar

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 562 visitas
  12. Started by lphant,

    Buenas tardes chic@s; Tengo una macro que pone diferentes fórmulas en varias hojas diferentes y para poder ponerlas tengo que antes seleccionar la hoja donde quiero que se ponga. Hay alguna forma de poner la fórmula en la hoja que necesite sin antes seleccionar/activar dicha hoja??. Las fórmulas las pongo de la siguiente forma: Worksheets("Hoja2").Range("A2:A30").FormulaR1C1= "aquí la fórmula" Pd: ahora mismo no tengo aquí el Excel, estoy escribiendo desde el móvil, si es necesario mañana le adjunto. Muchísimas gracias.

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 945 visitas
  13. Buenos días de nuevo. Siguiendo con el formulario de la orden de trabajo, se me presenta otro tema que he buscado en el foro y he visto algunos parecidos, pero tampoco he conseguido adaptarlo a mi caso. Me explico; necesito calcular las horas transcurridas entre dos fechas y horas distintas. y que vuelque el valor en un textbox. Subo un fichero con un pequeño ejemplo de lo que necesito. Un saludo y muchas gracias de antemano. Prueba calculo horas transcurridas.rar

    • 0

      Reacciones de usuarios

    • 6 respuestas
    • 4.6k visitas
  14. Buenos días, espero se encuentren bien de salud compañeros, Favor me podrían ayuda con lo siguientes como se podría hacer cuando tengo una tabla dinámica que amedida que se aumente las columnas fechas con data un formula que se coloco al final busque o analice siempre la ultima fila y columna de la fecha. Coloco un ejemplo

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 528 visitas
    • 2 seguidores
  15. Started by fabirana,

    Formula muy larga. VBA me da error. Hola, no me deja adjuntar el archivo, ¿cómo puedo poner mediante VBA en BU10 (marcada en amarillo) la siguiente fórmula? =SI(O($C10="066";$C10="067";$C10="069";IZQUIERDA($C10;2)="66");SI(ESERROR(COINCIDIR(BU$9;'HISTOGRAMA-ITG'!$15:$15;0));0;SI(ESNUMERO(((SUMAPRODUCTO(('HISTOGRAMA-ITG'!$A$16:$A$99=CONSULTAV(IZQUIERDA($B10;5);'[PRUEBA_MACROFABI_Rev4-16R.xlsm]DATOS_BASICOS'!$A:$B;2;0))*('HISTOGRAMA-ITG'!$B$16:$B$99="CONS")*('HISTOGRAMA-ITG'!C$16:C$99)))/100)-((SUMAPRODUCTO(('HISTOGRAMA-ITG'!$A$16:$A$99=CONSULTAV(IZQUIERDA($B10;5);'[PRUEBA_MACROFABI_Rev4-16R.xlsm]DATOS_BASICOS'!$A:$B;2;0))*('HISTOGRAMA-ITG'!$B$16:$B$99="CONS")*('HISTOGRAM…

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 2.3k visitas
  16. Bueno días señores del foro...tengo una consulta.. tengo esta formula =SI(Y(H15<41;H15<>38);G15;0); la columna "H", es donde ingreso unos códigos a través de macro, pero no me admite, cuando sobre escribo a través del teclado, ahi recién se genera lo que dice la formula..alguien puede decirme cual es el motivo? ActiveCell.Offset(0, 1).Select ActiveCell = ComboBox2 Con estas líneas es que arrojo en la columna "H" los datos..les dejo el Link https://onedrive.live.com/?id=E55EF42198BD63DF!3096&cid=E55EF42198BD63DF

    • 0

      Reacciones de usuarios

    • 10 respuestas
    • 984 visitas
  17. Señores del Foro disculpen la molestia, pero tengo la siguiente situacion y requiero de Uds para solucionarla: Necesito una formula en excel o una macro que cuando yo digite en un cuadro de control de fomulario, el codigo del cliente, el codigo de la mercancias vendidas y la cantidad, me vaya acumulando las cantida por cliente, al frente del mismos y en la respectiva columna del articulo vendido. Adjunto Archivo de mjuestra. Cordial Saludo ARCHIVO PARA ENVIAR.xls

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 1.3k visitas
  18. tengo una pregunta de como automatizar la funcion de buscar objetivo con fomrula o alguna forma mas comoda pero sin botones tengo esto epro no funciona aver si alguein me ayuda Option Explicit Private Sub Worksheet_Calculate() automatizar End Sub Private Sub automatizar() Static tb As Boolean Dim i As Long With hoja 1 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row If Round(.Cells(i, 3).Value, 6) <> 0 And Not tb Then tb= True .Cells(i, 2).Value = 0 .Cells(i, 3).GoalSeek Cells(i, 4).Value, ChangingCell:=.Cells(i, 2) tb = False End If next i End With End Sub

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 1.8k visitas
  19. Hola intento general este resultado. Según la imagen la diferencia de tiempo es 02:16:26 . HH:mm:ss. El problema es que no sé como generar ese resultado sin separar las horas de la fecha. Aquí los problemas, no puedo separar o dividir las horas en una columna y las fechas en otra columna. También la fórmula debería expresar si la diferencia es en días.. cuántos días son más horas y minutos... Alguien sabe como expresarlo de esa forma?

    • 0

      Reacciones de usuarios

    • 1 respuesta
    • 852 visitas
  20. hola quisiera saber si mediante este ejemplo de datos adjuntos en esta hoja excel se puede reemplazar los datos en forma masiva mediante alguna formula por ejemplo: carpeta cualquiera que contiene archivos de fotos enumeradas asi, (101.JPG, 102.jpg, 103.jpg, 105.jpg. etc ) y que mediante una accion se pueda cambiar quede asi 7.991.437-k.jpg en el fondo quiero renombrar una gran cantidad de archivos cambiandole el numero por el rut (numero unico de carne para los chilenos). la esencia de mi consulta es poderle poner el rut a cada foto que se encuentra en una carpeta mediante una formula que me permita llevarme los datos que se encuentra en una hoja excel. gracias por …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 3.1k visitas
  21. Started by nixonlyo,

    Tengo unas columnas con una formula para contar datos repetidos en los rangos pero no me los cuenta. por favor podrían decirme que es lo que tengo mal, la formula antes la he usado pero ahora no se por qué no lo hace. prueba.xls

    • 0

      Reacciones de usuarios

    • 5 respuestas
    • 937 visitas
  22. Saludos a todos La duda que se me platea es que en la hoja Pedidos tengo registrados todos los pedidos de los clientes. Cada Nº de pedido puede incluir hasta 4 productos diferentes. En otra hoja quiero que se reflejen las fichas de los clientes. Para ello, mediante una lista (con validación de datos) selecciono el nombre del cliente en la celda B2 y la información de ese cliente, se debe volcar en dicha hoja a partir de la fila 17. Me podrías indicar una fórmula para ello? Gracias de antemano copiar.zip

    • 0

      Reacciones de usuarios

    • 0 respuestas
    • 538 visitas
  23. Buenas Noches a todos, Deseo solicitar su valiosa colaboración, ya que no se como programar en Visual para que una celda determinada en Excel le pida al usuario que confirme lo que haya digitado, esto con el fin de validar que no hubo error en la digitación. Pido disculpas por no anexar ningún archivo pero este lo tengo en la oficina y no lo puedo extraer. Quedo atento a sus comentarios y cualquier ayuda en este tema lo agradeceria mucho. Gracias, Jairo Anibal Segura

    • 0

      Reacciones de usuarios

    • 3 respuestas
    • 1.4k visitas
  24. Buenas tardes; tengo algunos problemas tratando de diseñar esta formula, necesito que de un rango especifico, ejemplo a2:a100 me indique cuantas palabras ABIERTA, CERRADA y P.O. encuentre, pero por colores, dentro de ese mismo rango, tengo 20 celdas de color rojo, 30 de color verde, etc, y las palabras esparcidas aleatoriamente, y el problema es cuando necesito saber cuantas abierta, cerrada y po se encuentran en cada color, quizá por separado? indicar el rango total, pero que solamente que me filtre un color? estoy completamente confundido con que función usar..

    • 0

      Reacciones de usuarios

    • 7 respuestas
    • 1.1k visitas
  25. Started by michela,

    Hola! cómo estáis? Me está sucediendo algo que no comprendo: Cuando en una macro se ejecuta la siguiente línea: Hoja2.Range("b7").Formula = "=iferror(index(Tabla1[nombre],match(1,((Tabla1[F. Entrada]<=$G$1)*(Tabla1[F. Salida]>=$G$1)*(Tabla1[Nº hab]=A5)),)),"""")" Hoja2.Range("b7").Formula = "=iferror(index(Tabla1[nombre],match(1,((Tabla1[F. Entrada]<=$G$1)*(Tabla1[F. Salida]>=$G$1)*(Tabla1[Nº hab]=A5)),)),"""")" en la celda en cuestión aparece esta fórmula: =SI.ERROR(INDICE(Tabla1[nombre];COINCIDIR(1;((Tabla1[@[F. Entrada]]<=$G$1)*(Tabla1[@[F. Salida]]>=$G$1)*(Tabla1[@[Nº hab]]=A5));));"") Es prácticamente igual que la que aparece e…

    • 0

      Reacciones de usuarios

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