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
    sabato 18 gennaio 2025
    Bari
    24
    76
    02
    72
    12
    Cagliari
    21
    08
    77
    04
    17
    Firenze
    74
    84
    07
    12
    72
    Genova
    13
    07
    33
    47
    18
    Milano
    01
    34
    09
    55
    48
    Napoli
    46
    23
    25
    03
    06
    Palermo
    44
    07
    01
    46
    84
    Roma
    88
    78
    64
    74
    04
    Torino
    07
    87
    67
    38
    53
    Venezia
    31
    25
    04
    18
    02
    Nazionale
    49
    82
    59
    65
    67
    Estrazione Simbolotto
    Bari
    03
    13
    31
    23
    35

Ultimi Messaggi

Indietro
Alto