continuo con el ordenamiento

jorgeg_14

New Member
Joined
Apr 7, 2002
Messages
15
Juan Pablo, muchas gracias por tu ayuda, de verdad me ha servido de mucho, solo te quisiera preguntar por ultimo, cual es el formato que tengo que poner si quiero ordenar algo

por ejemplo


Nombre Edad Sueldo
Jorge 25 $458
Pedro 65 $125
Juan 12 $478
Pablo 78 $100

si tengo esa tabla y quiero ordenar la tabla ya sea ascendente o descendente pero basandome como primer criterio en la columna C y despues en la columna B

como cabiaria esto el formato que me diste
del codigo del change

Gracias de antemano
 

Excel Facts

Quick Sum
Select a range of cells. The total appears in bottom right of Excel screen. Right-click total to add Max, Min, Count, Average.
Es cambiar el rango Rng por A1:C10 o lo que sea. Después, (La ayuda de VBA sirve mucho para esto) hay que poner el Key1 como Range("B1") y Key2 como Range("C1") si se quiere que ordene primero por la columna 2 y después por la 3. Con Order1 y Order2 se le da la opción de que sea ascendente o descendente.
 
Upvote 0
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range

Set Rng = Range("A8:F12")

If Not Intersect(Target, Rng) Is Nothing Then _ Rng.Sort Key1:=Rng.Range("F8"), Order1:=xlDescending, Key2:=("C8"), Order2:=x1Descending

End Sub

Juan Pablo, asi es como puse el formato para poder ordenar como te habia dicho, pero al efectuar cambios en mi tabla ,me manda a la pagina de visual y me marca el error 1004 en tiempo de ejecución , que es lo que esta mal o que me esta formato

Gracias de antemano
 
Upvote 0
hay varios detallitos:

If Not Intersect(Target, Rng) Is Nothing Then _ Rng.Sort Key1:=Rng.Range("F8"), Order1:=xlDescending, Key2:=("C8"), Order2:=x1Descending

Order2:=x1Descending --> Order2:=xlDescending
Key1:=Rng.Range("F8") --> Key1:=Rng.Range("F8")
Key2:=("C8") --> Key2:=Rng.Range("C1")

Creo que con esos cambios debería funcionar.
 
Upvote 0
oye disculpame mucho la molestia que te causo, lo que pasa es que no he manejado mucho VBA entonces me crea mucho errores

Lo puse exactamente como me lo pusiste y me crea errores, de que me dice que no existe sub o funcion y tambien me marca varios errores y por ejemplo Key1:=Rng.Range ("F8") me marca amarillo los 2 puntos y el igual, y varios errores asi, me puedes decir en definitivo somo debo de poner el formato para que ya no me cree tantos errores ,porfavor, con lo que me dices le he estado investigando pero la verdad no me resulta nada de lo que hago, como debo de poner exactamente en el codigo de la hoja para que me haga lo que quiero, y aveces tambien me marca en amarillo el

Private Sub Worksheet_Change(ByVal Target As Range)

y varios errores como esos, porfavor te pido tu ayuda en esto, muchas gracias
 
Upvote 0
Lamentablemente no dispongo de mucho tiempo para hacer esto, como me gustaría.

Creo que la mejor forma es grabar un macro y mirar la escritura correcta.
 
Upvote 0

Forum statistics

Threads
1,214,551
Messages
6,120,156
Members
448,948
Latest member
spamiki

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top