Novità

NUOVO AMBIENTE SCRIPT AREA TECNICA

  • Creatore Discussione Creatore Discussione LuigiB
  • Data di inizio Data di inizio
il bagno te lo farei fare io .. tenendoti la testa sott'acqua però .. finche non mi dici che hai capito le matrici...

questa è una matrice

51ZbONNB24L._AC_UL320_.jpg


pure questa

71a8eQtJYeL._AC_UL320_.jpg


e anche questa ....


Vedi l'allegato 2256531
Vai con le bacchettate Luigi.
X Tom quando è capitato a me capire le matrici sono stato super bacchettato 👳👳👳
Saluti a tutti e buon lavoro
 
Private Sub cmbOrd_Change() AlimentaLista End Sub
Prova l evento cmbOrd_click
Pulisci la listbox
Dim av() as variant
Dim idcol as long
Idcol= combord.listindex
Av= ordinamatrice(.....)
poi alimenti la listbox
prova a vedere se possa funziare.

End Sub
Nell evento chance pulisci la griglia
 
Ultima modifica:
Prova l evento cmbOrd_click
Pulisci la listbox
Dim av() as variant
Dim idcol as long
Idcol= combord.listindex
Av= ordinamatrice(.....)
poi alimenti la listbox
prova a vedere se possa funziare.

End Sub
Nell evento chance pulisci la griglia

Se vedi il code che ho postato ci sono... e li ho provati... già tutti... comunque thanks :)
 
Secondo me se luigi è così severo... nell'insegnare la sua materia... è solo colpa... delle monache della tana delle tigri di Berlino... comunque :ROFLMAO::LOL:
 
Tom è l'evento click che lancia la routine.

Si ma anche l'evento change...

Comunque, non so se può servire ad aiutarmi ad uscire da sto pantano..., ma casualmente mi sono accorto che la list box si ordina correttamente x ritardo decrescente se scelgo come parametro di ordinamento dalla combobox il ritardo massimo :eek::LOL: però questa traslazione verso destra sembra avvenire solo per questi due parametri (ra e rs) per tutti gli altri non funziona... Ad esempio se scelgo di ordinare per incmax ipotizzando che invece mi ordini per rs decrescente questo non avviene... 😵🫠

casualmentehonotatoche.jpg

ricordo il code relativo richiamato dall'evento click o change della combo:


Codice:
     Sub AlimentaLista(Optional colonnesviluppate As Long)
 
     outputform.List1.Clear
 
         Dim aV() As Variant
         Dim k3 As Long

         aV = OrdinaMatrice(matricexlistbox, outputform.cmbOrd.ListIndex, , 1)
   
         outputform.print "quantità di righe decise in modo statico, purtroppo..., per la matrice" & UBound(matricexlistbox)
  
        For k3 = 1 To UBound(matricexlistbox) 

       outputform.List1.AddItem("n:" & aV(k3, 0) & " r: " & aV(k3, 1) & " rit " & aV(k3, 2) & " ritmax " & aV(k3, 3) & " incmax " & aV(k3, 4) & " freq " & aV(k3, 5))
   
        Next
  
        End Sub
 
Ultima modifica:
I

Tom manca il verso di ordinamento

Si ma è opzionale e poi non si tratta di quello :)
Trovato l'erroreeeeee!!! :D O per meglio dire l'inghippo... strutturale della combo...
Prima che Luigi si agiti troppo.... :D ve lo posto... :D

Trova le differenze... :eek::ROFLMAO:

versione ERRATA... non compatibile con la mia matrice...

Codice:
    Sub AlimentaCombo()
        cmbOrd.AddItem "Numeri"
        cmbOrd.AddItem "Ritardo"
        cmbOrd.AddItem "Ritardo Max"
        cmbOrd.AddItem "Incmax"
        cmbOrd.AddItem "Frequenza"
        cmbOrd.AddItem "Ruota"      
 cmbOrd.ListIndex = 0
 
End Sub

versione CORRETTA compatibile con la mia matrice

Codice:
    Sub AlimentaCombo()
        cmbOrd.AddItem "Numeri"
        cmbOrd.AddItem "Ruota"
        cmbOrd.AddItem "Ritardo"
        cmbOrd.AddItem "Ritardo Max"
        cmbOrd.AddItem "Incmax"
        cmbOrd.AddItem "Frequenza"
        cmbOrd.ListIndex = 0
    End Sub

Me felice! Anche se non sono sicuro di averle comprese al 1000% un passettino verso la comprensione della gestione "matriciale" credo di averlo fatto 👣 😸🤖...

Il prossimo... credo che sarà verso la generazione dei grafici dinamici... :unsure:🤪🫠

trovatolerroresecosisipuodire.jpg

Grazie di nuovo a tutti a cominciare dal sergente maggiore SLDR (y)💪👌🤠

Good Night 😴

👋🙂
 
Ultima modifica:
Si ma è opzionale e poi non si tratta di quello :)
Trovato l'erroreeeeee!!! :D O per meglio dire l'inghippo... strutturale della combo...
Prima che Luigi si agiti troppo.... :D ve lo posto... :D

Trova le differenze... :eek::ROFLMAO:

versione ERRATA... non compatibile con la mia matrice...

Codice:
    Sub AlimentaCombo()
        cmbOrd.AddItem "Numeri"
        cmbOrd.AddItem "Ritardo"
        cmbOrd.AddItem "Ritardo Max"
        cmbOrd.AddItem "Incmax"
        cmbOrd.AddItem "Frequenza"
        cmbOrd.AddItem "Ruota"     
 cmbOrd.ListIndex = 0
 
End Sub

versione CORRETTA compatibile con la mia matrice

Codice:
    Sub AlimentaCombo()
        cmbOrd.AddItem "Numeri"
        cmbOrd.AddItem "Ruota"
        cmbOrd.AddItem "Ritardo"
        cmbOrd.AddItem "Ritardo Max"
        cmbOrd.AddItem "Incmax"
        cmbOrd.AddItem "Frequenza"
        cmbOrd.ListIndex = 0
    End Sub

Me felice! Anche se non sono sicuro di averle comprese al 1000% un passettino verso la comprensione della gestione "matriciale" credo di averlo fatto 👣 😸🤖...

Il prossimo... credo che sarà verso la generazione dei grafici dinamici... :unsure:🤪🫠

Vedi l'allegato 2256639

Grazie di nuovo a tutti a cominciare dal sergente maggiore SLDR (y)💪👌🤠

Good Night 😴

👋🙂


Benissimo oltre al dolce ora nel tuo bistrot puoi offrire pure pietanze salate visto che ormai possiedi la ricetta ...della pasta alla a Matrici ana ..




images
 
chi mi conferma se è giusto

devo cancellare due file, ad inizio elaborazione di un programmino, che poi li creerà nuovi

devo usare killfile(nomedelfile)

dopo averlo cancellato, verifico se
non c'è piu, e lo ricreo con i dati nuovi aggiornati?


If KillFile(nome del file) Then
f = FreeFile
Open sFileIni For Append As f
For Each sRecord In coll
Print #f, sRecord
Next

Close f
End If


in altre parole, si usava eliminafile con tb è killfile?


grazie
 
chi mi conferma se è giusto

devo cancellare due file, ad inizio elaborazione di un programmino, che poi li creerà nuovi

devo usare killfile(nomedelfile)

dopo averlo cancellato, verifico se
non c'è piu, e lo ricreo con i dati nuovi aggiornati?


If KillFile(nome del file) Then
f = FreeFile
Open sFileIni For Append As f
For Each sRecord In coll
Print #f, sRecord
Next

Close f
End If


in altre parole, si usava eliminafile con tb è killfile?


grazie
1680364175809.png
 
Il classico esempio del bastone(prima) e la pasta( dopo). 🤣🤣🤣🤣🤣🤣

pasta al sugo di carota 😆

Dei due problemini elencati riguardo la matrici_ana... però ne ho risolto solo uno... :unsure:😌
Mi resta ancora quello di poter ridimensionare dinamicamente la stessa matrice durante l'elaborazione....
Ovvero non so a priori quante righe la matrice dovrà contenere quindi è inutile o perlomeno non ottimale mettere una cifra a caso.. tipo 100 o 1000 nel primo parametro della stessa... Ho provato ereticamente... a fare con redim... ma visto i risultati penso che non si applichi alle matrici multidimensionali... 😝 👋:)
 
Ultima modifica:
Se non ricordo male il redim si applica alle colonne non alle righe.
Per risolvere il problema è un passaggio in più una volta avevo messo tutto in un vettore
Redim a vett( 0)
Anziccche memorizzare tutto nelle colonne ho costruito una stringa unica con un carattere separatore.
Quindi diventava
Se condizione rispettata allora m=m+1
Redim preserve avett(m)
avett(m)= a&","&b&","&c&","&d

Così sai quante righe ci sono.
Le scorri le splitti e le metti nella grid . Poi ordini da tabella.
Oppure le trasferisci in una matrice e poi la ordini.
Io ho fatto così in modo maccheronico
Oppure fai tanti vettori quante colonne e poi ordini tutte le colonne in base alla colonna che decidi da ordinare.
In rete sicuramente ci sono soluzioni migliori.
 
malauguratamente gli array multidimensionali si possono dimensionare dinamicamente solo nell'ultima dimensione ..la soluzione piu semplice per te è sovradimensionarlo e applicare l'ordinamento dal primo indice all'ultimo che dopo che avrai alimentato la matrice sarà noto.
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 18 febbraio 2025
    Bari
    72
    83
    64
    59
    43
    Cagliari
    60
    55
    49
    07
    14
    Firenze
    11
    68
    62
    04
    21
    Genova
    86
    23
    44
    85
    71
    Milano
    11
    82
    42
    09
    14
    Napoli
    89
    86
    65
    49
    14
    Palermo
    79
    34
    80
    78
    20
    Roma
    26
    21
    13
    64
    57
    Torino
    64
    11
    17
    02
    58
    Venezia
    64
    82
    30
    04
    19
    Nazionale
    26
    37
    68
    54
    87
    Estrazione Simbolotto
    Cagliari
    39
    30
    04
    11
    14
Indietro
Alto