Promedio Móvil Autorregresivo Excel
ARMA Unplugged Esta es la primera entrada de nuestra serie de tutoriales Unplugged, en la que profundizamos en los detalles de cada uno de los modelos de series de tiempo con los que ya está familiarizado, destacando los supuestos subyacentes y conduciendo a casa las intuiciones detrás de ellos. En este número, abordamos el modelo ARMA como una piedra angular en el modelado de series temporales. A diferencia de los problemas de análisis anteriores, comenzaremos aquí con la definición del proceso ARMA, declararemos las entradas, salidas, parámetros, restricciones de estabilidad, supuestos y, finalmente, dibujaremos algunas pautas para el proceso de modelado. Antecedentes Por definición, el promedio móvil auto-regresivo (ARMA) es un proceso estocástico estacionario compuesto de sumas de Excel autorregresivo y componentes de media móvil. Alternativamente, en una formulación simple: Hipótesis Veamos más de cerca la formulación. El proceso ARMA es simplemente una suma ponderada de las observaciones de salida y choques pasados, con pocas hipótesis clave: ¿Qué significan estas suposiciones? Un proceso estocástico es una contrapartida de un proceso determinista que describe la evolución de una variable aleatoria a lo largo del tiempo. En nuestro caso, la variable aleatoria es El proceso ARMA sólo captura la correlación serial (es decir, autocorrelación) entre las observaciones. En términos simples, el proceso ARMA resume los valores de observaciones pasadas, no sus valores cuadrados o sus logaritmos, etc. Dependencia de orden superior requiere un proceso diferente (por ejemplo, ARCH / GARCH, modelos no lineales, etc.). Existen numerosos ejemplos de un proceso estocástico en el que los valores pasados afectan a los actuales. Por ejemplo, en una oficina de ventas que recibe RFQs en forma continua, algunas se realizan como ventas ganadas, algunas como ventas perdidas, y algunas se derramaron en el próximo mes. Como resultado, en un mes dado, algunos de los casos de ventas ganadas se originan como RFQs o son ventas repetidas de los meses anteriores. ¿Cuáles son los choques, las innovaciones o los términos de error Esta es una pregunta difícil, y la respuesta no es menos confusa. Sin embargo, vamos a darle una oportunidad: En palabras simples, el término de error en un modelo dado es un cubo todo para todas las variaciones que el modelo no explica. Todavía perdemos Vamos a usar un ejemplo. Para un proceso de cotización de acciones, hay posiblemente cientos de factores que impulsan el nivel de precios hacia arriba / hacia abajo, incluyendo: Dividendos y anuncios divididos Informes de ganancias trimestrales Actividades de fusión y adquisición (MampA) Eventos legales, p. La amenaza de demandas colectivas. Otros Un modelo, por diseño, es una simplificación de una realidad compleja, de modo que lo que dejemos fuera del modelo se agrupa automáticamente en el término de error. El proceso ARMA supone que el efecto colectivo de todos esos factores actúa más o menos como el ruido gaussiano. ¿Por qué nos preocupamos por los shocks pasados? A diferencia de un modelo de regresión, la ocurrencia de un estímulo (por ejemplo, shock) puede tener un efecto en el nivel actual, y posiblemente en los niveles futuros. Por ejemplo, un evento corporativo (por ejemplo, la actividad de MampA) afecta el precio de las acciones de la empresa subalterna, pero el cambio puede tomar algún tiempo para tener su impacto completo, ya que los participantes del mercado absorben / analizan la información disponible y reaccionan en consecuencia. Esto plantea la pregunta: ¿no los valores anteriores de la salida ya tienen los shocks pasado información SÍ, la historia de los shocks ya está contabilizado en los niveles de salida pasados. Un modelo ARMA puede ser representado solamente como un modelo auto-regresivo puro (AR), pero el requisito de almacenamiento de tal sistema en infinito. Esta es la única razón para incluir el componente MA: ahorrar en almacenamiento y simplificar la formulación. Una vez más, el proceso ARMA debe ser estacionario para que exista la varianza marginal (incondicional). Nota: En mi discusión anterior, no estoy haciendo una distinción entre meramente la ausencia de una raíz unitaria en la ecuación característica y la estacionariedad del proceso. Están relacionados, pero la ausencia de una raíz unitaria no es una garantía de estacionariedad. Aún así, la raíz unitaria debe estar situada dentro del círculo unitario para ser precisa. Conclusión Vamos a recapitular lo que hemos hecho hasta ahora. Primero examinamos un proceso estacionario ARMA, junto con su formulación, entradas, suposiciones y requisitos de almacenamiento. A continuación, mostramos que un proceso ARMA incorpora sus valores de salida (autocorrelación) y los choques que experimentó anteriormente en la salida de corriente. Finalmente, se mostró que el proceso estacionario ARMA produce una serie de tiempo con una media y una varianza estable a largo plazo. En nuestro análisis de datos, antes de proponer un modelo ARMA, debemos verificar el supuesto de estacionariedad y los requisitos de memoria finita. En el caso de que la serie de datos presente una tendencia determinista, necesitamos eliminarla (destensarla) primero y luego usar los residuos para ARMA. En el caso de que el conjunto de datos exhiba una tendencia estocástica (por ejemplo, caminata aleatoria) o la estacionalidad, necesitamos entretener a ARIMA / SARIMA. Por último, el correlograma (es decir, ACF / PACF) se puede utilizar para medir el requisito de memoria del modelo que deberíamos esperar ACF o PACF para decaer rápidamente después de unos pocos retrasos. Si no es así, esto puede ser un signo de no estacionariedad o un patrón a largo plazo (por ejemplo, ARFIMA). Un RIMA significa Autoregressive Integrated Moving Average. Univariante (vector único) ARIMA es una técnica de previsión que proyecta los valores futuros de una serie basada enteramente en su propia inercia. Su aplicación principal es en el área de pronósticos a corto plazo que requieren al menos 40 puntos de datos históricos. Funciona mejor cuando los datos muestran un patrón estable o consistente en el tiempo con una cantidad mínima de valores atípicos. A veces llamado Box-Jenkins (después de los autores originales), ARIMA suele ser superior a las técnicas de suavización exponencial cuando los datos son razonablemente largos y la correlación entre las observaciones pasadas es estable. Si los datos son cortos o muy volátiles, entonces algún método de suavizado puede funcionar mejor. Si usted no tiene por lo menos 38 puntos de datos, debe considerar algún otro método que ARIMA. El primer paso para aplicar la metodología ARIMA es verificar la estacionariedad. La estacionariedad implica que la serie permanece a un nivel bastante constante a lo largo del tiempo. Si existe una tendencia, como en la mayoría de las aplicaciones económicas o de negocios, sus datos NO son estacionarios. Los datos también deben mostrar una variación constante en sus fluctuaciones en el tiempo. Esto se ve fácilmente con una serie que es muy estacional y que crece a un ritmo más rápido. En tal caso, los altibajos en la estacionalidad se harán más dramáticos con el tiempo. Si no se cumplen estas condiciones de estacionariedad, no se pueden calcular muchos de los cálculos asociados con el proceso. Si un gráfico gráfico de los datos indica nonstationarity, entonces usted debe diferenciar la serie. La diferenciación es una excelente forma de transformar una serie no estacionaria en una serie estacionaria. Esto se hace restando la observación en el período actual a la anterior. Si esta transformación se realiza sólo una vez en una serie, se dice que los datos se han diferenciado primero. Este proceso esencialmente elimina la tendencia si su serie está creciendo a una tasa bastante constante. Si está creciendo a un ritmo creciente, puede aplicar el mismo procedimiento y diferenciar los datos de nuevo. Sus datos entonces serían segundos diferenciados. Las autocorrelaciones son valores numéricos que indican cómo una serie de datos se relaciona a sí misma con el tiempo. Más precisamente, mide cuán fuertemente los valores de datos en un número específico de períodos separados están correlacionados entre sí a lo largo del tiempo. El número de períodos separados se llama generalmente el retraso. Por ejemplo, una autocorrelación en el retardo 1 mide cómo los valores 1 período aparte están correlacionados entre sí a lo largo de la serie. Una autocorrelación en el retraso 2 mide cómo los datos dos períodos aparte están correlacionados a lo largo de la serie. Las autocorrelaciones pueden variar de 1 a -1. Un valor próximo a 1 indica una alta correlación positiva, mientras que un valor cercano a -1 implica una correlación negativa alta. Estas medidas se evalúan con mayor frecuencia a través de tramas gráficas llamadas correlagramas. Un correlagrama traza los valores de autocorrelación para una serie dada con diferentes retardos. Esto se conoce como la función de autocorrelación y es muy importante en el método ARIMA. La metodología ARIMA intenta describir los movimientos en una serie temporal estacionaria como una función de lo que se llaman parámetros de media móvil y autorregresiva. Estos parámetros se denominan parámetros AR (autoregessivos) y MA (medias móviles). Un modelo de AR con un solo parámetro se puede escribir como. X (t) A (1) X (t-1) E (t) donde X (t) serie temporal bajo investigación A (1) el parámetro autorregresivo de orden 1 X (t-1) (t) el término de error del modelo Esto simplemente significa que cualquier valor dado de X (t) puede explicarse por alguna función de su valor anterior, X (t-1), además de algunos errores aleatorios inexplicable, E (t). Si el valor estimado de A (1) fue de 0,30, entonces el valor actual de la serie estaría relacionado con 30 de su valor hace 1 período. Por supuesto, la serie podría estar relacionada con más de un valor pasado. Por ejemplo, X (t) A (1) X (t-1) A (2) X (t-2) E (t) Esto indica que el valor actual de la serie es una combinación de los dos valores inmediatamente anteriores, X (t-1) y X (t-2), más algún error aleatorio E (t). Nuestro modelo es ahora un modelo autorregresivo de orden 2. Modelos de media móvil: Un segundo tipo de modelo de Box-Jenkins se denomina modelo de media móvil. Aunque estos modelos parecen muy similares al modelo de AR, el concepto detrás de ellos es muy diferente. Los parámetros de la media móvil relacionan lo que sucede en el período t sólo con los errores aleatorios que ocurrieron en períodos de tiempo pasados, es decir, E (t-1), E (t-2), etc., en lugar de X (t-1), X T-2), (Xt-3) como en los enfoques autorregresivos. Un modelo de media móvil con un término MA puede escribirse como sigue. El término B (1) se denomina MA de orden 1. El signo negativo frente al parámetro se utiliza para convención solamente y normalmente se imprime La mayoría de los programas de ordenador. El modelo anterior simplemente dice que cualquier valor dado de X (t) está directamente relacionado solamente al error aleatorio en el período anterior, E (t-1), y al término de error actual, E (t). Como en el caso de los modelos autorregresivos, los modelos de media móvil pueden extenderse a estructuras de orden superior que abarcan diferentes combinaciones y longitudes móviles. La metodología ARIMA también permite la construcción de modelos que incorporen parámetros tanto de autorregresión como de media móvil. Estos modelos se refieren a menudo como modelos mixtos. Aunque esto hace que sea una herramienta de pronóstico más complicada, la estructura puede simular mejor la serie y producir un pronóstico más preciso. Los modelos puros implican que la estructura consiste solamente en los parámetros AR o MA - no ambos. Los modelos desarrollados por este enfoque generalmente se llaman los modelos ARIMA, ya que utilizan una combinación de autorregresivo (AR), la integración (I) - refiriéndose al proceso de diferenciación inversa para producir el pronóstico, y moviendo las operaciones promedio (MA). Un modelo de ARIMA se indica generalmente como ARIMA (p, d, q). Esto representa el orden de los componentes autorregresivos (p), el número de operadores de diferenciación (d) y el orden más alto del término medio móvil. Por ejemplo, ARIMA (2,1,1) significa que usted tiene un modelo autorregresivo de segundo orden con un componente de media móvil de primer orden cuya serie se ha diferenciado una vez para inducir la estacionariedad. Elegir la especificación correcta: El principal problema en el clásico Box-Jenkins es tratar de decidir qué especificación ARIMA utilizar-i. e. Cuántos AR y / o MA parámetros para incluir. Esto es lo que gran parte de Box-Jenkings 1976 se dedicó al proceso de identificación. Dependía de la eva - luación gráfica y numérica de las funciones de autocorrelación de la muestra y de autocorrelación parcial. Bueno, para sus modelos básicos, la tarea no es demasiado difícil. Cada uno tiene funciones de autocorrelación que se ven de cierta manera. Sin embargo, cuando se sube en complejidad, los patrones no se detectan tan fácilmente. Para hacer las cosas más difíciles, sus datos representan sólo una muestra del proceso subyacente. Esto significa que los errores de muestreo (valores atípicos, errores de medición, etc.) pueden distorsionar el proceso teórico de identificación. Es por eso que el modelado ARIMA tradicional es un arte más que una ciencia. Previsión de ARIMA con Excel y R Hola Hoy te voy a guiar a través de una introducción al modelo ARIMA y sus componentes, así como una breve explicación del Box-Jenkins Método de cómo se especifican los modelos ARIMA. Por último, he creado una implementación de Excel con R, que I8217ll mostrarle cómo configurar y utilizar. Modelos de media móvil automática (ARMA) El modelo de media móvil autoregresiva se utiliza para modelar y pronosticar procesos de series de tiempo estacionarios y estocásticos. Es la combinación de dos técnicas estadísticas previamente desarrolladas, el Autoregressive (AR) y el Moving Average (MA) y fue descrito originalmente por Peter Whittle en 1951. George E. P. Box y Gwilym Jenkins popularizaron el modelo en 1971 especificando pasos discretos para modelar la identificación, la estimación y la verificación. Este proceso se describirá más adelante como referencia. Comenzaremos por introducir el modelo ARMA por sus diversos componentes, los modelos AR y MA y luego presentaremos una popular generalización del modelo ARMA, ARIMA (Media Automática Movible Integrada Autoregrada) y los pasos de predicción y especificación del modelo. Por último, explicaré una implementación de Excel que creé y cómo usarla para hacer sus previsiones de series de tiempo. Modelos Autoregresivos El modelo Autoregresivo se utiliza para describir procesos aleatorios y procesos que varían en el tiempo y especifica que la variable de salida depende linealmente de sus valores anteriores. El modelo se describe como: Donde están los parámetros del modelo, C es constante, y es un término de ruido blanco. Esencialmente, lo que el modelo describe es para cualquier valor dado. Puede explicarse por funciones de su valor anterior. Para un modelo con un parámetro. Se explica por su valor pasado y error aleatorio. Para un modelo con más de un parámetro, por ejemplo. es dado por. Y error aleatorio. Modelo de media móvil El modelo de media móvil (EM) se utiliza a menudo para modelar series temporales univariadas y se define como: es la media de la serie temporal. Son los parámetros del modelo. Son los términos de error de ruido blanco. Es el orden del modelo de media móvil. El modelo de media móvil es una regresión lineal del valor actual de la serie comparado con los términos del período anterior. Por ejemplo, un modelo de MA de. Se explica por el error actual en el mismo período y el valor del error pasado. Para un modelo de orden 2 (), se explica por los últimos dos valores de error, y. Los términos AR () y MA () se utilizan en el modelo ARMA, que ahora se introducirá. Modelo de media móvil autorregresiva Los modelos de media móvil autorregressiva utilizan dos polinomios, AR () y MA () y describen un proceso estocástico estacionario. Un proceso estacionario no cambia cuando se desplaza en tiempo o espacio, por lo tanto, un proceso estacionario tiene media constante y varianza. El modelo ARMA se refiere a menudo en términos de sus polinomios, ARMA (). La notación del modelo se escribe: La selección, estimación y verificación del modelo se describe por el proceso de Box-Jenkins. El método de Box-Jenkins para la identificación del modelo A continuación se presenta más un esquema del método Box-Jenkins, ya que el proceso real de encontrar estos valores puede ser bastante abrumador sin un paquete estadístico. La hoja de Excel incluida en esta página determina automáticamente el modelo que mejor se adapte. El primer paso del método Box-Jenkins es la identificación del modelo. La etapa incluye identificar la estacionalidad, diferenciar si es necesario y determinar el orden de y por trazar las funciones de autocorrelación y autocorrelación parcial. Después de identificar el modelo, el siguiente paso es estimar los parámetros. La estimación de parámetros utiliza paquetes estadísticos y algoritmos de cálculo para encontrar los mejores parámetros de ajuste. Una vez elegidos los parámetros, el último paso es comprobar el modelo. La comprobación del modelo se realiza comprobando si el modelo se ajusta a una serie cronológica univariada estacionaria. También se debe confirmar que los residuos son independientes entre sí y presentan una media y una varianza constante en el tiempo, lo que se puede hacer realizando una prueba de Ljung-Box o trazando nuevamente la autocorrelación y la autocorrelación parcial de los residuos. Observe que el primer paso consiste en verificar la estacionalidad. Si los datos con los que está trabajando contienen tendencias estacionales, para que los datos sean estacionarios. Este paso de diferenciación generaliza el modelo ARMA en un modelo ARIMA, o Media Automática Movible Integrada, donde 8216Integrated8217 corresponde al paso de diferenciación. Modelos de media móvil integrada autoregresiva El modelo ARIMA tiene tres parámetros. Para definir el modelo ARMA para incluir el término de diferenciación, comenzamos por reordenar el modelo ARMA estándar para separarlo de la suma. ¿Dónde está el operador de. Son parámetros autorregresivos y de media móvil, y los términos de error, respectivamente. Hacemos ahora la suposición de primer polinomio de la función, tiene una raíz unitaria de multiplicidad. Podemos entonces reescribirlo a lo siguiente: El modelo ARIMA expresa la factorización polinómica con y nos da: Por último, generalizamos el modelo añadiendo un término de deriva, que define el modelo ARIMA como ARIMA () con deriva. Con el modelo ahora definido, podemos ver el modelo ARIMA como dos partes separadas, una no estacionaria y la otra de sentido amplio estacionaria (la distribución de probabilidad conjunta no cambia cuando se desplaza en el tiempo o el espacio). El modelo no estacionario: El modelo estacionario de sentido amplio: ahora se pueden hacer pronósticos sobre el uso de un método de pronóstico autorregresivo generalizado. Ahora que hemos hablado de los modelos ARMA y ARIMA, ahora nos referimos a cómo podemos usarlos en aplicaciones prácticas para proporcionar previsiones. Ive construido una implementación con Excel utilizando R para hacer ARIMA pronósticos, así como una opción para ejecutar Monte Carlo simulación en el modelo para determinar la probabilidad de los pronósticos. Implementación de Excel y cómo usar Antes de usar la hoja, debe descargar R y RExcel desde el sitio web de Statconn. Si ya tienes instalado R, solo puedes descargar RExcel. Si no tienes R instalado, puedes descargar RAndFriends que contiene la última versión de R y RExcel. Tenga en cuenta, RExcel sólo funciona en 32 bits Excel para su licencia no comercial. Si tiene instalado 64 bits de Excel, tendrá que obtener una licencia comercial de Statconn. Se recomienda descargar RAndFriends ya que facilita la instalación más rápida y sencilla sin embargo, si ya tiene R y desea instalarla manualmente, siga estos pasos. Instalación manual de RExcel Para instalar RExcel y los otros paquetes para que R funcione en Excel, primero abra R como administrador haciendo clic con el botón derecho en el archivo. exe. En la consola R, instale RExcel escribiendo las siguientes instrucciones: Los comandos anteriores instalarán RExcel en su máquina. El siguiente paso es instalar rcom, que es otro paquete de Statconn para el paquete RExcel. Para instalar esto, escriba los siguientes comandos, que también instalarán automáticamente rscproxy a partir de la versión R 2.8.0. Con estos paquetes instalados, puede pasar a configurar la conexión entre R y Excel. Aunque no es necesario para la instalación, un paquete práctico para descargar es Rcmdr, desarrollado por John Fox. Rcmdr crea R menús que pueden convertirse en menús en Excel. Esta característica viene por defecto con la instalación de RAndFriends y hace que varios comandos R estén disponibles en Excel. Escriba los siguientes comandos en R para instalar Rcmdr. Podemos crear el enlace a R y Excel. Nota en las versiones recientes de RExcel esta conexión se realiza con un simple clic doble del archivo. bat proporcionado. ActivateRExcel2010, por lo que sólo debe seguir estos pasos si ha instalado manualmente R y RExcel o si por alguna razón la conexión no se hace durante La instalación de RAndFriends. Crear la conexión entre R y Excel Abra un libro nuevo en Excel y navegue hasta la pantalla de opciones. Haga clic en Opciones y, a continuación, en Complementos. Debería ver una lista de todos los complementos activos e inactivos que tiene actualmente. Haga clic en el botón Ir en la parte inferior. En el cuadro de diálogo Complementos, verá todas las referencias de complemento que ha realizado. Haga clic en Examinar. Vaya a la carpeta RExcel, normalmente ubicada en C: Program FilesRExcelxls o algo similar. Busque el complemento RExcel. xla y haga clic en él. El siguiente paso es crear una referencia para que macros utilizando R funcione correctamente. En su documento de Excel, introduzca Alt F11. Esto abrirá Excels VBA editor. Vaya a Tools - gt References y encuentre la referencia RExcel, RExcelVBAlib. RExcel ahora debe estar listo para usar Usando la Hoja de Excel Ahora que R y RExcel están configurados correctamente, es hora de hacer alguna previsión Abra la hoja de pronóstico y haga clic en Cargar Servidor. Esto es para iniciar el servidor RCom y también cargar las funciones necesarias para realizar la previsión. Se abrirá un cuadro de diálogo. Seleccione el archivo itall. R incluido con la hoja. Este archivo contiene las funciones que utiliza la herramienta de pronóstico. La mayoría de las funciones contenidas fueron desarrolladas por el profesor Stoffer en la Universidad de Pittsburgh. Extienden las capacidades de R y nos dan algunos gráficos útiles de diagnóstico junto con nuestra producción de pronóstico. También existe una función para determinar automáticamente los mejores parámetros de ajuste del modelo ARIMA. Después de cargar el servidor, ingrese sus datos en la columna Datos. Seleccione el rango de los datos, haga clic con el botón derecho y seleccione Rango de nombres. Asigne un nombre al rango como Datos. A continuación, establezca la frecuencia de sus datos en la celda C6. Frecuencia se refiere a los períodos de tiempo de sus datos. Si es semanal, la frecuencia sería 7. Mensual sería 12, mientras que trimestral sería 4, y así sucesivamente. Ingrese los períodos de anticipación para pronosticar. Tenga en cuenta que los modelos ARIMA se vuelven bastante imprecisos después de varias predicciones de frecuencia sucesivas. Una buena regla de oro es no exceder 30 pasos como cualquier cosa pasado que podría ser bastante poco fiable. Esto también depende del tamaño de su conjunto de datos. Si tiene datos limitados disponibles, se recomienda elegir un número de pasos más pequeños. Después de ingresar sus datos, nombrarlos y establecer la frecuencia deseada y los pasos a seguir para pronosticar, haga clic en Ejecutar. Puede tardar un tiempo en procesar el pronóstico. Una vez completado, obtendrá los valores predichos con el número especificado, el error estándar de los resultados y dos gráficos. La izquierda es los valores previstos con los datos, mientras que la derecha contiene diagnósticos prácticos con residuos estandarizados, la autocorrelación de los residuos, un gráfico gg de los residuos y un gráfico estadístico de Ljung-Box para determinar si el modelo está bien ajustado. No voy a entrar en demasiados detalles sobre cómo buscar un modelo bien equipado, pero en el gráfico de ACF usted no quiere cualquiera (o mucho) de los picos de lag cruce sobre la línea azul punteada. En la gráfica gg, cuanto más círculos pasan por la línea, más normalizado y mejor ajustado está el modelo. Para conjuntos de datos más grandes esto podría cruzar muchos círculos. Por último, la prueba de Ljung-Box es un artículo en sí mismo, sin embargo, cuanto más círculos están por encima de la línea azul punteada, mejor es el modelo. Si el resultado del diagnóstico no se ve bien, puede intentar agregar más datos o comenzar en un punto diferente más cercano al rango que desea pronosticar. Puede borrar fácilmente los resultados generados haciendo clic en los botones Borrar valores pronosticados. Y thats it Actualmente, la columna de la fecha no hace nada más que para su referencia, pero no es necesario para la herramienta. Si encuentro tiempo, volveré y añadiré que para que el gráfico mostrado muestre la hora correcta. También puede recibir un error al ejecutar el pronóstico. Esto se debe generalmente a la función que encuentra los mejores parámetros es incapaz de determinar el orden adecuado. Puede seguir los pasos anteriores para tratar de organizar mejor sus datos para que la función funcione. Espero que consigas uso de la herramienta Me ha ahorrado mucho tiempo en el trabajo, como ahora todo lo que tengo que hacer es introducir los datos, cargar el servidor y ejecutarlo. También espero que esto le muestra cómo R impresionante puede ser, especialmente cuando se utiliza con un front-end como Excel. Código, hoja de cálculo de Excel y archivo. bas también están en GitHub aquí.
Comments
Post a Comment