A continuación veremos un programa en Excel VBA que muestra una vista previa de impresión de todos los posibles partidos de fútbol de una lista de equipos.
Situación:
1. Primero, declaramos un objeto de rango y cuatro variables. Llamamos al objeto Range rng. Una variable String a la que llamamos matchname, y tres variables Enteras a las que llamamos counter, i y j.
Dim rng As Range, matchname As String, counter As Integer, i As Integer, j As Integer
2. Inicializamos el rng con los nombres de los equipos. Usamos CurrentRegion porque no conocemos de antemano los límites exactos del rango (queremos que este programa funcione para 3 equipos pero también para 12 equipos). Inicializamos counter con el valor 0.
Set rng = Range(«A1»).CurrentRegion contador = 0
3. Escribimos todos los posibles partidos de fútbol en la columna C. Primero, vaciamos la columna C.
Hojas de trabajo(1).Columnas(3) = «»
4. Empezamos un Doble Bucle.
Para i = 1 a rng.Count Para j = i + 1 Para rng.Count
5. Escribimos un nombre de coincidencia a la variable nombre de coincidencia.
matchname = rng.Cells(i).Value & » vs » & rng.Cells(j).Value
Por ejemplo, para i = 1 y j = 2, Excel VBA escribe el nombre del partido Kickers vs Shooters. Para i = 1 y j = 3, Excel VBA escribe el nombre del partido Kickers vs Little Giants, etc.
6. Escribimos el nombre de la pareja en la columna C.
Celdas(contador + 1, 3).Valor = nombre de la pareja
7. El contador lleva un registro del número de nombres de partidos escritos en la columna C. El Excel VBA incrementa el contador en 1 cada vez que escribe un nombre de partido en la columna C. Para lograrlo, agregue la siguiente línea de código:
contador = contador + 1
8. No te olvides de cerrar los dos bucles.
Siguiente j Siguiente…
9. Mostramos una vista previa de todos los posibles partidos de fútbol.
ActiveSheet.Columns(3).PrintPreview
10. Pruebe el programa.
Parte del resultado:
Nota: la columna C se centra manualmente para obtener este resultado.