Tienes una alternativa adicional... en Excel 2016 (si es que dispones de él)... completamente diferente... demora en implementar aproximadamente 3-4 minutos y no usa ninguna macro.
Te lo planteo por ti se sirve...
1) Haz clic en tu base de datos:
En la cinta Datos pones Insertar/Tabla
En lo que salga pon aceptar... ya tienes una tabla de Excel
2) Ve a la cinta Datos y la zona Obtener y transformar, elige el icono "Desde tabla"... entrarás a la interfaz de Query (en Excel2016 se llama obtener y transformar)
3) Hacia la derecha aparecerá un lista que dice "Pasos aplicados"... haz clic en la X que hay al lado de "Tipo cambiado" (el segundo paso), esto es para que la primera columna no se convierta a números... Query de buena intención reconoce números... e intenta arreglarlos por ti... si no te apareció este paso, ignóralo.
4) Presionando la tecla Shift haz clic en ID y Nivel (1ra y 4ta columna)... te las marcará... luego clic en el triangulo negro que hay (tipo combo box) del icono "Quitar columnas", alli elige "Quitar otras columnas"... Te quedarán visibles solo la cuatro columnas que te interesan
5) Haz clic en el encabezado Orden para que te seleccione esa columna.
6) Clic en la cinta Transformar, y alli en el ícono de "Columna dinámica"
7) En la interfaz que aparezca, cambia en Columna de Valores: "ID" por "NIVEL"
8) Haz clic en el triangulo que aparece al lado de Opciones Avanzadas y en el combobox que aparezca de Función de valor agregado cambia "Recuento (todo)" por "No agregar".
9) Pon aceptar... veras tu tabla ya hecha... cierra la interfaz con la X como si estuvieras cerrando el Excel... Elige "Mantener"... Excel crerá una tabla con los resultados... Cuando quieras actualizar tu macro simplemente posiciónate en esta tabla y presiona Alt+F5
Listo... Query al rescate!... y lo hiciste tu mismo!