[VBA] Ordenar una tabla de Excel con VBA

tzehani Mensajes publicados 11 Estado Miembro -  
 titounette -
Hola a todos, me gustaría automatizar el ordenamiento mediante un código VBA y no hacerlo manualmente

ejemplo: tengo una tabla de Excel con 3 columnas y me gustaría ordenar la tabla según la columna B manteniendo las filas
es decir, por ejemplo

rojo tomate vegetal
verde uva fruta
negro araña animal

se convierta en

negro araña animal
verde uva fruta
rojo tomate vegetal

Muchas gracias por su valiosa ayuda
Configuración: Windows XP Internet Explorer 6.0

2 respuestas

  1. Papou93 Mensajes publicados 146 Fecha de registro   Estado Miembro Última intervención   59
     
    Hola tzehani,

    Aquí tienes una macro muy sencilla, que debes ejecutar después de haber seleccionado el área a ordenar:

    Sub TriPerso() Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal End Sub


    o la misma que selecciona un área fija:

    Sub TriPerso() Range("A1:C3").Select Selection.Sort Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ DataOption1:=xlSortNormal End Sub


    Consejo: es muy fácil obtener acciones tan simples ejecutando el grabador de macros.

    Cordialmente.
    9
    1. tzehani Mensajes publicados 11 Estado Miembro
       
      Merci beaucoup pour le conseil, je prendrai ta deuxième proposition cependant j'en ai besoin de A1:ANi et c'est cette écriture que je n'arrive pas à coder, voici mon code :

      Sub TriPerso()

      Do While Range("A" & i) <> 0
      i = i + 1
      Loop

      Range("A1:AN" & i).Select =====> Problème pour l'expression AN&i


      Selection.Sort Key1:=Range("E1"), Order1:=xlAscending, Header:=xlGuess, _
      OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
      DataOption1:=xlSortNormal
      End Sub


      Merci encore de ton attention
      0
      1. Sir_DEC Mensajes publicados 143 Estado Miembro 75 > tzehani Mensajes publicados 11 Estado Miembro
         
        Hola,

        Has cometido un error tipográfico: Range("A1:AN & i") => Range("A1:AN" & i) o Range("A1:A" & i)
        0