applicati nei pronostici delle sestine per sviluppare i soliti 2.130 e passa fogli.
Per fare questo servono dati dalle sestine integrali. Io ho già tutto l’occorrente
delle sestine integrali, per recuperare i dati, ma mancano spezzoni specifici.
Ho una macro, recuperata in rete, che è ottima e lavora molto bene ma purtroppo
non sono riuscito a modificarla per avere spezzoni specifici di sestine.
Pertanto chiedo aiuto a tutti coloro che mi possono aiutare a modificare la
macro oppure un’altra macro che dovrebbe fare i seguenti passi:
1a) scrivo manualmente in C1 la sestina in singola cella.
2b) la macro di aiuto, legge la sestina e continua a scrivere le sestine fino alla riga C1.048.575.
3c) Arrivati alla riga C1.048.575 lasciare una colonna libera e continuare dalla E1 a scrivere sestine.
4d) Arrivati alla riga E1.048.575 lasciare una colonna libera e continuare dalla G1 a scrivere sestine.
5e) così di seguito fino alla fine del completamento delle sestine oppure finché pc e memoria ram lo permettono.
In allegato un file con due fogli “Esempio1” e “Esempio2”. Entrambi in C1 c’è una sestina una delle
622.614.630 in un’unica cella e a fianco, in colonna D, la prima delle colonne che il proseguo della
macro dovrebbe fare. Ringraziando anticipatamente tutti coloro che mi possono aiutare 73 ikwae
https://www.swisstransfer.com/d/36aaeb9 ... 539d6e7144
- Codice: Seleziona tutto
Sub Generatore_Integrale_Di_Sestine_Unica_Cella()
Dim a, b, c, d, e, f, rg, Cc
rg = 1
Cc = 3 'INIZIA A SCRIVERE SEMPRE DALLA COLONNA C(c1)
contatore = 0 'CONTATORE DI COLONNE
Columns("B:XFD") = ""
diff = ""
Iniz = Time
Application.Calculation = xlCalculationManual
For a = 1 To 85
For b = a + 1 To 86
For c = b + 1 To 87
For d = c + 1 To 88
For e = d + 1 To 89
For f = e + 1 To 90
If rg > 1048575 Then
Cc = Cc + 2 '6ne in unica cella
rg = 1
contatore = contatore + 1
If contatore = 594 Then GoTo 10 'SI FERMA QUANDO HA SCRITTO (tot) COLONNE
Cells(2, 1) = contatore 'monitor quante colonne ha scritto
Cells(4, 1) = a 'monitor la 1à cifra di ogni 6na
End If
'SCRIVE LA 6na IN UN'UNICA CELLA
Cells(rg, Cc) = " " & a & " " & b & " " & c & " " & d & " " & e & " " & f
rg = rg + 1
Next
Next
Next
Next
Next
Next
10
Application.Calculation = xlCalculationAutomatic
Fine = Time
diff = Format(Fine - Iniz, "hh:mm:ss")
MsgBox ("Tempo impiegato " & diff)
End Sub