Option Explicit
Sub Main
   Dim FIn,Es,Ini,Clp1,Salvo50
   Dim R1,R2,P1,P2,P3,P4,P,PP,A,B,C,D,E1,E2
   Dim Dist1,Dist2,Caso,Casi
   Dim Num(3),Ruote(2),Posta(2)
   FIn = EstrazioneFin
   Ini = InputBox("Inserisci l'estrazione che vuoi iniziare",,9487)'ESTRAZIONE 9487 ESEMPIO IN SPIEGAZIONI
   Clp1 = InputBox("Per quanti colpi vuoi giocare l'ambata?",Salvo50,5)
   Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi "Per Raimbow58 - Distanza 45 - Script by Salvo50",1,,,1,3,,1
   Posta(2) = 1
   For Es = Ini To FIn
      Messaggio Es
      AvanzamentoElab Ini,FIn,Es
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = Estratto(Es,R1,P1)
               B = Estratto(Es,R1,P2)
               Dist1 = Distanza(A,B)
               If Dist1 = 45 Then
                  For R2 = R1 + 1 To 12
                     If R2 = 11 Then R2 = 12
                     For P3 = 1 To 4
                        For P4 = P3 + 1 To 5
                           C = Estratto(Es,R2,P3)
                           D = Estratto(Es,R2,P4)
                           Dist2 = Distanza(C,D)
                           If Dist2 = 45 Then
                              Num(1) = Fuori90(A + C) : Num(2) = DiametraleD(Num(1)) : Num(3) = Vert(Num(1))
                              Caso = Caso + 1
                              Casi = Casi + 1
                              ColoreTesto 2
                              Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000")
                              ColoreTesto 1
                              Scrivi String(80,"*") & " Estrazione " &(Es) & " caso " & FormattaStringa(Caso,"0000")
                              ColoreTesto 0
                              Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                              Scrivi "  " & SiglaRuota(R1) & " ",1,0
                              For P = 1 To 5
                                 E1 = Estratto(Es,R1,P)
                                 If E1 = A Or E1 = B Then
                                    ColoreTesto 2
                                 Else
                                    ColoreTesto 0
                                 End If
                                 Scrivi Format2(E1) & " ",1,0
                                 ColoreTesto 0
                              Next
                              Scrivi " <-- Evidenziati con Distanza " & Format2(Dist1),1
                              'Scrivi
                              Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                              Scrivi "  " & SiglaRuota(R2) & " ",1,0
                              For PP = 1 To 5
                                 E2 = Estratto(Es,R2,PP)
                                 If E2 = C Or E2 = D Then
                                    ColoreTesto 2
                                 Else
                                    ColoreTesto 0
                                 End If
                                 Scrivi Format2(E2) & " ",1,0
                                 ColoreTesto 0
                              Next
                              Scrivi " <-- Evidenziati con Distanza " & Format2(Dist2),1
                              Scrivi
                              Scrivi Format2(Num(1)) & " = " & Format2(A) & " + " & Format2(C),1
                              Scrivi Format2(Num(2)) & " = Diametrale in Decina di " & Format2(Num(1)),1
                              Scrivi Format2(Num(3)) & " = Vertibile di " & Format2(Num(1)),1
                              Scrivi
                              Ruote(1) = R1
                              Ruote(2) = R2
                              ImpostaGiocata 1,Num,Ruote,Posta,Clp1
                              Gioca Es
                           End If
                        Next
                     Next
                  Next
               End If
            Next
         Next
      Next
      If ScriptInterrotto Then Exit Sub
   Next
   ScriviResoconto
End Sub