VBA para ordenar táboas en Excel (4 métodos)

  • Comparte Isto
Hugh West

Implementar macro VBA é o método máis eficaz, rápido e seguro para executar calquera operación en Excel. Neste artigo, mostrarémosche como ordenar a táboa en Excel con VBA .

Descargar o libro de traballo

Podes descargar o libro de exercicios de Excel de práctica gratuíta desde aquí.

Ordenar táboa con VBA.xlsm

Cousas que debes saber antes de implementar VBA para Ordenar a táboa en Excel

Hai algúns parámetros que tes que usar con frecuencia mentres traballas co método Ordenar de VBA . Así que aquí comentaremos algúns dos parámetros para familiarizarte mentres escribes o código.

Parámetro Requirido/Opcional Tipo de datos Descrición
Clave Opcional Variante Especifica o rango ou a columna cuxos valores se van ordenar.
Orden Opcional XlSortOrder Especifica a orde na que se realizará a ordenación.
  • xlAscending = Ordenar en orde ascendente.
  • xlDescending = Ordenar en orde descendente.
Encabezado Opcional XlYesNoGuess Especifica se a primeira fila contén cabeceiras ou non .
  • xlNo = Cando a columna non ten cabeceiras; Valor predeterminado.
  • xlYes = Cando as columnas teñen cabeceiras.
  • xlGuess = Para deixar Exceldetermine as cabeceiras.

4 Métodos na implementación de VBA para ordenar táboas en Excel

Esta sección mostrarche como ordenar táboas de Excel considerando valor, cores, iconas e varias columnas co código VBA .

1. Incrustar VBA para ordenar a táboa por valor en Excel

Considerando o seguinte exemplo, ordenaremos esta táboa polos valores presentes no Marcar columna en orde descendente.

Pasos:

  • Preme Alt + F11 para activar o teu teclado ou vai á pestana Desenvolvedor -> Visual Basic para abrir Editor de Visual Basic .

  • Na xanela de código emerxente, desde a barra de menú , fai clic en Inserir -> Módulo .

  • Copia o seguinte código e pégao na xanela do código.
6285

O teu código agora está listo para executarse.

Aquí,

  • OrdenarTBL → Especificou o nome da táboa.
  • OrdenarTBL[Marcas] -> Especificou o nome da columna da táboa a ordenar.
  • Key1:=iColumn → Especificou o intervalo de columnas para que o código saiba que columna da táboa quere ordenar.
  • Order1:=xlDescendente → Especificou a orde como xlDescendente para ordenar a columna en orde descendente. Se desexa ordenar a columna en orde ascendente, escriba xlAscending .
  • Encabezado:= xlYes → Como a columna desta táboa ten uncabeceira polo que o especificamos coa opción xlYes .

  • Preme F5 no teu teclado ou desde na barra de menús selecciona Executar -> Executar Sub/UserForm . Tamén podes facer clic na icona de reprodución pequena da barra do submenú para executar a macro.

Verás que o A columna da túa táboa agora está ordenada en orde descendente .

Ler máis: Como ordenar datos por valor en Excel (5 métodos sinxelos) )

2. Inserir macro VBA para ordenar táboa para varias columnas

Tamén pode ordenar unha táboa para varias columnas en Excel coa macro VBA .

Na táboa anterior, ordenaremos as columnas Nome e Departamento en orde ascendente .

Pasos:

  • Do mesmo xeito que antes, abra o Editor de Visual Basic desde a pestana Desenvolvedor e Insira un Módulo na xanela do código.
  • Na xanela do código, copie o seguinte código e pégueo.
4448

O seu agora o código está listo para executarse.

Aquí,

  • TableValue → Especificou o nome da táboa.
  • Valor da táboa[Nome] -> Especificou o nome da primeira columna da táboa a ordenar.
  • TableValue[Department] -> Especificou o nome da segunda columna da táboa para ordenar.
  • Key1:=iColumn1 → Especificou o intervalo de columnas para que o código saiba que a primeira columna da táboa debe serordenado.
  • Key1:=iColumn2 → Especificou o intervalo de columnas para que o código saiba que a segunda columna da táboa debe ser ordenada.
  • Order1: =xlAscending → Especificou a orde como xlAscending para ordenar a columna en orde descendente. Se queres ordenar a columna en orde descendente, escribe xlDescending .
  • Encabezado:= xlYes → Como as columnas desta táboa teñen cabeceiras, así o especificamos coa opción xlYes .

  • Executa este código e obterás os dous columnas da táboa ordenadas en orde ascendente.

Ler máis: Como ordenar automaticamente varias columnas en Excel (3 xeitos)

Lecturas similares

  • Como ordenar unha lista única en Excel (10 métodos útiles)
  • Ordenar matriz con Excel VBA (orden ascendente e descendente)
  • Como ordenar e filtrar datos en Excel (unha directriz completa)
  • Ordenación automática de Excel cando os datos cambian (9 exemplos)
  • Ordenación aleatoria en Excel (fórmulas + VBA)

3. Implementar macro para ordenar a táboa por cor da cela en Excel

Tamén pode ordenar unha táboa segundo a cor da cela que contén.

Coa táboa anterior como exemplo, mostrarémosche como clasificala en función das cores que contén esta táboa.

Pasos:

  • Como se mostrou anteriormente, abra Visual BasicEditor desde a pestana Desenvolvedor e Insire un Módulo na xanela do código.
  • Na xanela do código, copie o seguinte código e pégao.
3813

O teu código xa está listo para executarse.

Aquí os códigos RGB que proporcionamos , podes atopalo ou calquera outro código RGB que desexes seguindo o gif que se indica a continuación.

  • Só tes que facer clic na cela de cor .
  • Na pestana Inicio , faga clic na frecha situada a carón de Cor de recheo e seleccione Máis cores . Verás os códigos RGB na pestana Personalizado da caixa emerxente Cores que aparece.

  • Executa este código e a túa táboa ordenarase en función das cores .

Ler máis: Como ordenar por cor en Excel (4 criterios)

4. Aplique VBA para ordenar a táboa de Excel por icona

Supoñamos que a táboa do conxunto de datos ten iconas para unha mellor lexibilidade. Podes ordenar a táboa en función das iconas en Excel coa macro VBA .

Mira o conxunto de datos anterior. Aquí a táboa ten iconas xunto aos valores numéricos nas columnas Marcas para que poidamos entender que alumno ten resultados bos, malos ou medios.

Ten en conta que, se non sabes como inserir unha icona dentro dunha cela, simplemente podes facelo coa función Formato condicional en Excel.

  • Selecciona toda a gama oucolumna.
  • Vaia a Formato condicional -> Conxuntos de iconas . A continuación, escolle os conxuntos de iconas que desexes da opción.

A continuación indícanse os pasos para ordenar unha táboa en función das iconas .

Pasos:

  • Abre Editor de Visual Basic desde a pestana Desenvolvedor e Insire un Módulo na xanela do código.
  • Na xanela do código, copie o seguinte código e pégueo.
9237

O seu código xa está listo para executarse.

Aquí,

  • xl5Arrows -> Escollemos o conxunto de 5 frechas da opción do Formato condicional .
  • Elemento (1) -> Especificou o primeiro tipo de icona de frecha.
  • Elemento (2) -> Especificou o segundo tipo de icona de frecha.
  • Elemento (3) -> Especificou o terceiro tipo de icona de frecha.
  • Elemento (4) -> Especificou o cuarto tipo de icona de frecha.
  • Elemento (5) -> Especificou o quinto tipo de icona de frecha.

  • Executa este código e a táboa será ordenado en función das iconas .

Ler máis: Como ordenar automaticamente a táboa en Excel (5 métodos)

Conclusión

Este artigo mostrouche como ordenar a táboa en Excel VBA . Espero que este artigo che resultou moi beneficioso. Non dubides en preguntar se tes algunha dúbida sobre o tema.

Hugh West é un adestrador e analista de Excel altamente experimentado con máis de 10 anos de experiencia na industria. É Licenciado en Contabilidade e Finanzas e Máster en Administración de Empresas. Hugh ten unha paixón polo ensino e desenvolveu un enfoque docente único que é fácil de seguir e comprender. O seu coñecemento experto de Excel axudou a miles de estudantes e profesionais de todo o mundo a mellorar as súas habilidades e a destacar nas súas carreiras. A través do seu blog, Hugh comparte os seus coñecementos co mundo, ofrecendo titoriais de Excel gratuítos e formación en liña para axudar ás persoas e ás empresas a alcanzar todo o seu potencial.