Macro en Word para numerar y resaltar preguntas automáticamente

Imagen
 ¿Tienes un cuestionario lleno de preguntas y quieres darles un formato profesional sin hacerlo a mano? En esta publicación te comparto una macro en Word que detecta automáticamente las preguntas , las numera y además las resalta en negrita . Esta herramienta es especialmente útil si trabajas en educación o si necesitas generar evaluaciones, encuestas o formularios con frecuencia. 💡 ¿Qué hace esta macro? Detecta cualquier párrafo que contenga un signo de pregunta ( ¿ o ? ). Añade un número al inicio del párrafo. Aplica negrita a toda la pregunta. Evita numerar dos veces si ya habías corrido la macro antes. Sub NumerarYFormatearPreguntas()     Dim parrafo As Paragraph     Dim texto As String     Dim contador As Integer     contador = 1     For Each parrafo In ActiveDocument.Paragraphs         texto = Trim(parrafo.Range.Text)         ' Verifica si contiene "¿" o "?" y que aún no...

Guía Completa: API para Leer Datos de la Fórmula 1 (F1) con Ejemplos y Tutorial

 A mí gusta la formula 1 y hay veces que quiero ver los resultados y tengo que buscar en páginas de Instagram o en la Web y pensé porque no hacer mi propia página para ver los resultados de la última carrera lo cual les explicaré en esta publicación como hacerlo.

Primero hay que encontrar un API de formula 1 . Si sabes que es una Api saltaste este párrafo. Una Api es una conexión que podemos utilizar desde otra página para leer datos de otra página , es decir es un requerimiento o solicitud de información que se envía desde un sitio WEB indicando la URL de la cual quieres obtener la información y esta te regresa una respuesta con la un archivo JSON casi siempre o pude ser un XML. A manera de hacer una referencia del día a día, imagina que vas al supermercado (Walmart por ejemplo) y tu quieres saber el precio de un articulo, entonces vas al scanner de precios y lees tu producto y te da el precio, la API es el escáner, tu eres la pagina que solicita la información y el precio en pantalla del escáner es la respuesta del API.

En esta API de F1 que encontré en la pagina de https://rapidapi.com/hub debemos identificar cuáles son los datos de entrada que debemos enviar (o los datos de invocación para programadores de la vieja escuela ) y saber que datos nos va a regresar la API y en qué formato. 

Dos saber que datos nos va a regresar , en este caso vamos a buscar obtener datos JSON.

Ejemplo de código para consumir la API de F1 en JavaScript

La API que vamos a utilizar es https://rapidapi.com/api-sports/api/api-formula-1/details

y vamos a obtener los valores de ranking para la temporada 2023, les comparto como se ve el código

<!DOCTYPE html>

<html>

<body>


<h2>Using the XMLHttpRequest Object</h2>


<div id="demo">

<button type="button" onclick="loadXMLDoc()">Ranking Drivers F1 Season 2023</button>

</div>


<script>

function loadXMLDoc() {

  var xhttp = new XMLHttpRequest();

  xhttp.onreadystatechange = function() {

    if (this.readyState == 4 && this.status == 200) {

      document.getElementById("demo").innerHTML =

      this.responseText;

    }

  };

  

        xhttp.open("GET", "https://api-formula-1.p.rapidapi.com/rankings/drivers?season=2023",true);

xhttp.setRequestHeader("X-RapidAPI-Key", "yourkey");

xhttp.setRequestHeader("X-RapidAPI-Host", "api-formula-1.p.rapidapi.com");

  xhttp.send();

}

</script>


</body>

</html>



El resultado final es que nos da la información en modo JSON, falta darle formato y poner un campo de entrada para poder ingresar el año de la temporada, pero eso lo veremos mas adelante conforme mejoremos el código.

Si quieren probar la pagina la URL es https://www.programacionparatodos.com/p/api-de-f1-racking-drivers.html

si quieres ver la explicación del programa, te comparto la liga de nuestro canal de YouTube

                                https://youtu.be/ghO3eOwKpX0

Lo que mas me interesa compartir es que es muy fácil poder obtener información por medio de API, en este caso utilizamos HMTL , JAVASCRIPT para invocar a la API, donde solo le pasamos la URL y nos regreso información en formato JSON. 


NOTA 4 DE AGOSTO 2024

Hemos visto que ya con XMLHttpRequest marca un error de CORS con esta API, por lo que colocamos la actualización con fecth y la temporada 2024

<!DOCTYPE html>

<html lang="es">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Fetch API Example</title>

    <style>

        pre {

            background-color: #f4f4f4;

            padding: 10px;

            border-radius: 5px;

        }

    </style>

</head>

<body>

    <h1>Ranking de pilotos de Fórmula 1</h1>

    <pre id="result">Cargando datos...</pre>


    <script>

        // Función asíncrona para obtener los datos de la API

        async function fetchData() {

            const url = 'https://api-formula-1.p.rapidapi.com/rankings/drivers?season=2021';

            const options = {

                method: 'GET',

                headers: {

                    'x-rapidapi-key': 'YOURKEY',

                    'x-rapidapi-host': 'api-formula-1.p.rapidapi.com'

                }

            };


            try {

                const response = await fetch(url, options);

                if (!response.ok) {

                    throw new Error(`Error: ${response.status} ${response.statusText}`);

                }

                const result = await response.json();

                console.log(result);


                // Mostrar los datos en el documento HTML

                const resultElement = document.getElementById('result');

                resultElement.textContent = JSON.stringify(result, null, 2);

            } catch (error) {

                console.error(error);

                const resultElement = document.getElementById('result');

                resultElement.textContent = 'Error al obtener los datos. Verifica la consola para más detalles.';

            }

        }


        // Llamar a la función para obtener los datos cuando se cargue la página

        fetchData();

    </script>

</body>

</html>


Espero les sea de utilidad y nos compartan.

Otro ejemplo para leer un API y pasear json 

https://www.programacionparatodos.com/2024/08/api-de-banxico-para-obtener-tipo-de.html


Comentarios

🚀 Mantener este blog funcionando requiere tiempo y café. ¡Puedes contribuir con uno aquí!

Entradas más populares de este blog

Guía Práctica: Ejemplo Completo de ASPX para Desarrolladores Web

📊 Automatiza tu trabajo: Convierte tablas de Word a Excel con una macro

Macro de Excel para abrir archivo csv