Jump to content

Mauricio_ODN

Members
  • Content Count

    871
  • Joined

  • Last visited

  • Days Won

    57

Mauricio_ODN last won the day on July 2

Mauricio_ODN had the most liked content!

About Mauricio_ODN

  • Rank
    Advanced Member
  • Birthday 05/28/1981

Profile information

  • Gender
    Hombre
  • Localización:
    Estado de México, México

Converted

  • Campos
    ,
  • Mi versión de Excel:
    6

Recent Profile Visitors

4,076 profile views
  1. Sin lugar a dudas Maestro @Antoni, ese es un gran reconocimiento!!!
  2. Hola @Ruben_sk8 Te adjunto la solución a tu problema. Quedo atento. PD. Un Excelente es un buena Filtro_Sig 1.1.xlsbmanera de agradecer.
  3. Hola de nuevo @Maria_a.rodriguez_m Te dejo este archivo, espero sea de utilidad Me comentasrevisiones1.2.xlsb
  4. Hola de nuevo @Maria_a.rodriguez_m No hay de que agradecer, es un gusto. Podrías guardarlo en formato binario, eso reduciría algo su tamaño. El detalle es que el archivo está constituido por dos tablas, las cuales consumen muchos recursos, por que se extienden hasta el límite filas de Excel y más allá, por lo que hace muy difícil trabajar con ellas. Solucionando eso, podríamos cambiar las lineas de código que necesitas. Sigo atento.
  5. Hola de nuevo @Maria_a.rodriguez_m A mi manera de ver tu código hace lo que necesitas, de lo contrario no entendí lo que necesitas. Hice una pequeña modificación, ya que desde el formulario puedes ingresar los datos en ambas hojas para no tener la necesidad de copiar. Ya tienes hecho el código para el filtro, por lo que puedes repetirlo para ambas hojas y cambiar el orden en el que quieres que se realice. Espero sea de utilidad, Sigo atento. ->> Private Sub Guardar_Click() Dim fila As Long Dim duplicados As Boolean 'Obtener la fila disponible fila = Application.WorksheetFunction.CountA(Range("A:A")) + 1 duplicados = False 'Validar si se han ingresado datos duplicados For i = 1 To fila If Cells(i, 1).Value = UserForm1.TextBox1.Value Then If Cells(i, 2).Value = UserForm1.TextBox2.Value Then If Cells(i, 3).Value = UserForm1.TextBox3.Value Then If Cells(i, 4).Value = UserForm1.ComboBox1.Value Then If Cells(i, 5).Value = UserForm1.ComboBox2.Value Then If Cells(i, 6).Value = UserForm1.TextBox4.Value Then 'Se encontraron datos duplicados MsgBox "Datos duplicados en la fila " & i duplicados = True End If End If End If End If End If End If Next i If Not duplicados Then 'Insertar datos capturados With Sheets("Revision_TG") .Cells(fila, 1).Value = UserForm1.TextBox1.Value .Cells(fila, 2).Value = UserForm1.TextBox2.Value .Cells(fila, 3).Value = UserForm1.TextBox3.Value .Cells(fila, 4).Value = UserForm1.ComboBox1.Value .Cells(fila, 5).Value = UserForm1.ComboBox2.Value .Cells(fila, 6).Value = UserForm1.TextBox4.Value End With With Sheets("TG_Aprobados") .Cells(fila - 1, 1).Value = UserForm1.TextBox1.Value .Cells(fila - 1, 2).Value = UserForm1.TextBox2.Value .Cells(fila - 1, 3).Value = UserForm1.TextBox3.Value .Cells(fila - 1, 4).Value = UserForm1.ComboBox1.Value .Cells(fila - 1, 5).Value = UserForm1.ComboBox2.Value .Cells(fila - 1, 6).Value = UserForm1.TextBox4.Value End With 'Limpiar cajas de texto UserForm1.TextBox1.Value = "" UserForm1.TextBox2.Value = "" UserForm1.TextBox3.Value = "" UserForm1.ComboBox1.Value = "" UserForm1.ComboBox2.Value = "" UserForm1.TextBox4.Value = "" End If 'LLamar para ordenar datos Call ordenar 'LLamar para CopiarCeldas ''Call CopiarCeldas End Sub <<-- -->> Sub ordenar() Dim rangoDatos As Range Dim CampoOrden As Range Dim UltimaFila As Long UltimaFila = Sheets("Revision_TG").Range("A" & Rows.Count).End(xlUp).Row Set rangoDatos = Range("A3:U" & UltimaFila) Set CampoOrden = Range("A3") rangoDatos.Sort key1:=CampoOrden, order1:=xlDescending, Header:=xlYes UltimaFila = Sheets("TG_Aprobados").Range("A" & Rows.Count).End(xlUp).Row Set rangoDatos = Range("A2:U" & UltimaFila) Set CampoOrden = Range("A2") rangoDatos.Sort key1:=CampoOrden, order1:=xlAscending, Header:=xlYes End Sub <<--
  6. Hola @Maria_a.rodriguez_m, gracias por la respuesta, sigo atento a la espera del archivo. Saludos.
  7. Gracias por su comentario Maestro @Antoni @Ruben_sk8 dejo el siguiente archivo, me falto la parte para restaurar el filtro. Sigo atento. Filtro_Sig.xlsm
  8. Hola de nuevo @JDG, gracias a por la respuesta. Solo era una muestra del archivo, no completo, si es que te fuera posible, para poder hacer pruebas con los eventos. Pero si no es posible, no te preocupes. Lo dejamos así.
  9. Hola @manzano ¿Probaste el último archivo que te envie? Sigo atento.
  10. Hola @miguelangel Te dejo una posible solución. Sigo atento. CONSOLIDAR.zip
  11. Hola @diego208 Me sucede a menudo algo similar cuando se agotan los recursos de memoria. Por lo que podrías revisar si es posible mejorar tu procedimiento. Ahora no se si te funcione para restablecer, pero puede ser punto de partida, te dejo este código: Sub Show_Tb() 'para ocultar ExecuteExcel4Macro ("show.toolbar(""ribbon"",0)") 'para restablecer ExecuteExcel4Macro ("show.toolbar(""ribbon"",1)") End Sub Sigo atento.
  12. Hola @prax3des Te dejo un aporte que te puede servir y adecuar a tu necesidad. Espero que sea de utilidad Sigo atengo. Para Listar Carpeta y Sub Carpetas.xlsm
  13. Hola @Maria_a.rodriguez_m De verdad espero que nos comprendas que es difícil ayudarte sin un archivo, aún cuando nos compartes tu código, es complicado, hay otras alternativas para compartir el archivo, como puede ser vía Drive o alguna nube. A mi manera de ver, por lo que comentas, este link puede ayudarte: https://exceltotal.com/encontrar-ultima-fila-vba/ Sigo atento.
×
×
  • Create New...

Important Information

Privacy Policy