Novità

aiuto script

alipante

Junior Member
buonasera a tutti,
mi potete aiutare a capire xche' il seguente codice script x spaziometria mi da i seguenti errori?
grazie mille....
errore.jpg
Codice:
Option Explicit

Sub TrovaFrequenzaAmbi()
    Dim ws As Worksheet
    Dim outputWs As Worksheet
    Dim dataRange As Range
    Dim cell As Range
    Dim ambiDict As Object
    Dim ambi As String
    Dim nMesi As Long
    Dim startDate As Date
    Dim endDate As Date
    Dim outputRow As Long
    Dim arrNumeri() As String
    Dim i As Long

    ' Imposta il foglio di lavoro e il dizionario per gli ambi
    Set ws = ThisWorkbook.Sheets("Estrazioni") ' Cambia il nome del foglio se necessario
    Set ambiDict = CreateObject("Scripting.Dictionary")
    
    ' Imposta la gamma delle estrazioni
    Set dataRange = ws.Range("A2:B" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
    
    ' Input per il numero di mesi
    nMesi = InputBox("Inserisci il numero di mesi per analizzare le estrazioni:", "Frequenza Ambi", 6)
    
    ' Calcola le date di inizio e fine
    endDate = Date
    startDate = DateAdd("m", -nMesi, endDate)

    ' Cicla attraverso le righe delle estrazioni
    For Each cell In dataRange.Rows
        If cell.Cells(1, 1).Value >= startDate And cell.Cells(1, 1).Value <= endDate Then
            arrNumeri = Split(cell.Cells(1, 2).Value, ",") ' Supponendo che i numeri siano separati da virgole
            
            ' Trova tutti gli ambi
            For i = LBound(arrNumeri) To UBound(arrNumeri) - 1
                ambi = Trim(arrNumeri(i)) & "-" & Trim(arrNumeri(i + 1))
                If ambiDict.Exists(ambi) Then
                    ambiDict(ambi) = ambiDict(ambi) + 1
                Else
                    ambiDict.Add ambi, 1
                End If
            Next i
        End If
    Next cell

    ' Crea un nuovo foglio per il resoconto
    Set outputWs = ThisWorkbook.Sheets.Add
    outputWs.Name = "Frequenza Ambi"
    outputWs.Cells(1, 1).Value = "Ambo"
    outputWs.Cells(1, 2).Value = "Frequenza"
    
    ' Scrivi i risultati nel foglio di output
    outputRow = 2
    For Each ambi In ambiDict.Keys
        outputWs.Cells(outputRow, 1).Value = ambi
        outputWs.Cells(outputRow, 2).Value = ambiDict(ambi)
        outputRow = outputRow + 1
    Next ambi

    MsgBox "Frequenza degli ambi calcolata con successo!", vbInformation
End Sub
 
Ciao probabilmente, tiro solo ad indovinare :), hai provato a realizzare uno script .ls con AI o con tool similare ma spaziometria non vuole la definizione delle variabili con As come vbs o vba ad esempio e quindi ti da errore. Le AI se non specificatamente istruite sul nuovo linguaggio (x loro) spazioscript tendono a dare molte volte questo tipo di errore.
 
si ho provato con chat gpt😅:giggle:

Hai fatto bene, le AI ad oggi sono in grado di imparare nuovi linguaggi come spazioscript appunto quindi si apre un mondo di nuove possibilità in tal senso :) Io ho fatto così: prima ho detto a notebook google lm (altra ai free) di farmi un riassunto del file pdf spazioscript e in particolare delle funzioni e logica di quel linguaggio specificatamente per il lotto e poi ho dato in pasto il suo sunto a chatgpt e a claude e a notdiamond (piattaforma free multi AI). E qualcosa sono riuscito a creare... :) Prossimamente forse aprirò un thread dedicato agli script .ls creati by AI. Ciao
 
Benissimo: questa AI dove la trovo ? :unsure: 🤣

Alien l'ho appena detto nella mia risposta.. ma ci riprovo.. : chatgpt famosissima di openai , claude famosissimo di anthropic , copilot su bing e su whatsapp , notdiamod (le riassume tutte... o quasi..) , phind , perplexity e molte altre :) Sull'altro forum poi ti ho messo anche come chattare con i loro avatar "personificati" 😄
 
buonasera a tutti,
mi potete aiutare a capire xche' il seguente codice script x spaziometria mi da i seguenti errori?
grazie mille....
Vedi l'allegato 2292283
Codice:
Option Explicit

Sub TrovaFrequenzaAmbi()
    Dim ws As Worksheet
    Dim outputWs As Worksheet
    Dim dataRange As Range
    Dim cell As Range
    Dim ambiDict As Object
    Dim ambi As String
    Dim nMesi As Long
    Dim startDate As Date
    Dim endDate As Date
    Dim outputRow As Long
    Dim arrNumeri() As String
    Dim i As Long

    ' Imposta il foglio di lavoro e il dizionario per gli ambi
    Set ws = ThisWorkbook.Sheets("Estrazioni") ' Cambia il nome del foglio se necessario
    Set ambiDict = CreateObject("Scripting.Dictionary")
  
    ' Imposta la gamma delle estrazioni
    Set dataRange = ws.Range("A2:B" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
  
    ' Input per il numero di mesi
    nMesi = InputBox("Inserisci il numero di mesi per analizzare le estrazioni:", "Frequenza Ambi", 6)
  
    ' Calcola le date di inizio e fine
    endDate = Date
    startDate = DateAdd("m", -nMesi, endDate)

    ' Cicla attraverso le righe delle estrazioni
    For Each cell In dataRange.Rows
        If cell.Cells(1, 1).Value >= startDate And cell.Cells(1, 1).Value <= endDate Then
            arrNumeri = Split(cell.Cells(1, 2).Value, ",") ' Supponendo che i numeri siano separati da virgole
          
            ' Trova tutti gli ambi
            For i = LBound(arrNumeri) To UBound(arrNumeri) - 1
                ambi = Trim(arrNumeri(i)) & "-" & Trim(arrNumeri(i + 1))
                If ambiDict.Exists(ambi) Then
                    ambiDict(ambi) = ambiDict(ambi) + 1
                Else
                    ambiDict.Add ambi, 1
                End If
            Next i
        End If
    Next cell

    ' Crea un nuovo foglio per il resoconto
    Set outputWs = ThisWorkbook.Sheets.Add
    outputWs.Name = "Frequenza Ambi"
    outputWs.Cells(1, 1).Value = "Ambo"
    outputWs.Cells(1, 2).Value = "Frequenza"
  
    ' Scrivi i risultati nel foglio di output
    outputRow = 2
    For Each ambi In ambiDict.Keys
        outputWs.Cells(outputRow, 1).Value = ambi
        outputWs.Cells(outputRow, 2).Value = ambiDict(ambi)
        outputRow = outputRow + 1
    Next ambi

    MsgBox "Frequenza degli ambi calcolata con successo!", vbInformation
End Sub
questo non è codice per Spaziometria, questo è codice vba per ecxel

Ps: se aspetti meno di 24 ore vedrai apparire la mia ombra che ti spiegherà tutto.
 
Ultima modifica:

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 16 dicembre 2025
    Bari
    78
    53
    62
    77
    16
    Cagliari
    15
    58
    32
    39
    24
    Firenze
    85
    20
    39
    32
    29
    Genova
    17
    60
    15
    33
    43
    Milano
    13
    39
    14
    15
    34
    Napoli
    82
    76
    15
    24
    73
    Palermo
    40
    55
    78
    26
    08
    Roma
    23
    41
    17
    53
    76
    Torino
    52
    20
    70
    59
    65
    Venezia
    43
    58
    19
    08
    09
    Nazionale
    71
    55
    60
    04
    35
    Estrazione Simbolotto
    Venezia
    28
    37
    27
    40
    10
Indietro
Alto