Inicio > Microsoft Excel > patanrisitas > Comor ordenar columna de rango variable

Comor ordenar columna de rango variable

Experto:
Usuario:
Fecha: 06/09/2008
Valoración: (4,00 sobre 5) Categoría: Microsoft Excel
02/09/2008
latoso2008, usuario preguntando en Microsoft Excel
Usuario
grabe una macro y no se como hacer el rango variable en al parte donde dice
SetRange range ("A1:M17")
la macro grabada es esta:
Sub Ordenar_responsable2()
'
' Ordenar_reponsable2 Macro
Columns("I:I").Select
ActiveWorkbook.Worksheets("BASEGENE").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("BASEGENE").Sort.SortFields.Add Key:=Range("I1").End(xlDown), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("BASEGENE").Sort
.SetRange Range("A1:M17")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1").Select
End Sub
04/09/2008
latoso2008, experto respondiendo en Microsoft Excel
Experto
Q+ Latoso,
Prueba cambiendo tu código por este otro:
Sub Ordenar()
'
' Ordenar Macro
' Macro grabada el 03/09/2008 por Richard Chacón
Range("A1:I2900").Sort Key1:=Range("I2"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("A1").Select
End Sub

Saludos,
RCh.
04/09/2008
latoso2008, usuario preguntando en Microsoft Excel
Usuario
antes que nada muchas gracias por tu respuesta y amplios reconocimientos a ti y a esta pagina, por otro lado
La tabla que utilizo va del rango  A1 a M1, y observo que el rango que tiene el codigo es de A1:I2900, lo que sucede que combino el codigo que te di con otras macros que tienen el mismo codigo fijo  .set range  range(A1:M17) , por lo que tu codigo me marca error y ademas se manejan varias hojas, ¿se podria modificar el codigo que te di en la parte puntualizada , y aplicar ese cambio a las demas macros?
05/09/2008
latoso2008, experto respondiendo en Microsoft Excel
Experto
Q+ Latoso,
Prueba con este código:
Sub Ordenar()
'
' Macro1 Macro
' Macro grabada el 05/09/2008 por Richard Chacón
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Sort Key1:=ActiveCell, Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub
Saludos,
RCh.
06/09/2008
latoso2008, usuario preguntando en Microsoft Excel
Usuario
GRACIAS ME AYUDO MUCHO TU CODIGO GRACIAS
Enlaces patrocinados