Condividi:        

ritardo cadenze

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

ritardo cadenze

Postdi raimea » 09/02/14 10:21

ciao

tramite macro vorrei calcolare il ritardo attuale di ogni cadenza
riportata nello specchietto BA11:BE20 e scriverlo in col BJ11:BJ20.

quindi partendo dall'ultima estraz del fgl archivio cercare in quante estraz precedenti ci sono
almeno 2 numeri di ogni cadenza.

ES la cad 8 ha un rit di 5 estraz e l'ultima e' del 06/02/2014 44-4-2-48-13-49-8
tale analisi la vorrei fare x ogni cadenza dallo 0 al 9

il num jolly e' da considerare

vi allego il file
https://db.tt/tlM6MYhO

grazie
ciao
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Sponsor
 

Re: ritardo cadenze

Postdi ricky53 » 10/02/14 01:19

Ciao Raimea,
nel nostro forum non è vietato il CROSSPOSTING però è buona norma comunicare di aver inserito lo stesso quesito in altri forum e, a soluzione ottenuta, comunicarla a tutti i forum nei quali si è chiesto aiuto.

Grazie per la collaborazione
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ritardo cadenze

Postdi raimea » 10/02/14 02:00

Ciao
riky53 ha ragione, ho inserito la richiesta di ottenere il ritardo attuale, e il ritardo massimo anche in un altro forum.
Al momento però non ho ancora ottenuto il risultato, se ci arriverò sicuramente pubblicato il modo, come ho sempre fatto.
Grazie
ciao
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi Anthony47 » 10/02/14 03:02

So che hai gia' una risposta per compilare BF11:BI20, tuttavia propongo questa soluzione che integra il calcolo di BF11:BI20 e il calcolo dei ritardi correnti e Max, visto che il ciclo e' lo stesso.
Il Max viene riportato in colonne BK (il ritardo) e BL (l' estrazione in cui si e' verificato; così ti e' piu' facile trovare gli errori :D )
Codice: Seleziona tutto
Sub cadenz()
Dim Varr, LastA As Long, Estraz As Long, AOcc(0 To 9) As Long, Num As Long
Dim AFreq(0 To 9, 1 To 4) As Long
Dim AMax(0 To 9, 1 To 2) As Long, ACurr(0 To 9) As Long

mytim = Timer
LastA = Sheets("Archivio_UK49s").Cells(Rows.Count, 2).End(xlUp).Row
Varr = Sheets("Archivio_UK49s").Range("C3").Resize(LastA - 2, 7).Value

For Estraz = LBound(Varr, 1) To UBound(Varr, 1)
    Erase AOcc
    'calcola occorrenza ogni numero sull' estrazione:
    For Num = LBound(Varr, 2) To UBound(Varr, 2)
        AOcc(Varr(Estraz, Num) Mod 10) = AOcc(Varr(Estraz, Num) Mod 10) + 1
    Next Num
    'Accumula nel totalizzatore:
    For I = 0 To 9
        If AOcc(I) > 1 And AOcc(I) < 6 Then
            AFreq(I, AOcc(I) - 1) = AFreq(I, AOcc(I) - 1) + 1
        End If
        'Calcoli per ritardo corrente e massimo:
        If AOcc(I) > 1 Then
            If ACurr(I) > AMax(I, 1) Then
                AMax(I, 1) = ACurr(I)
                AMax(I, 2) = Estraz
            End If
            ACurr(I) = 0
        Else
            ACurr(I) = ACurr(I) + 1
        End If
    Next I
    DoEvents
Next Estraz
With Sheets("Foglio1")
    .Range("BF11").Resize(10, 4).Value = AFreq
    .Range("BJ11").Resize(10, 1).Value = Application.WorksheetFunction.Transpose(ACurr)
    .Range("BK11").Resize(10, 2).Value = AMax
End With
MsgBox ("Completato in sec: " & Timer - mytim)
End Sub

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: ritardo cadenze

Postdi raimea » 10/02/14 07:26

ciao
tutto ok
e' perfetta, :D
inoltre mette anche il num di estraz in cui si e' verif il ritardo massimo.

PS
come mi e' stato suggerito da riky53,
x correttezza avvisero' l'altro forum del risultato ottenuto.

grazie
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi Anthony47 » 10/02/14 09:09

Per evitare equivoci, la macro calcola e compila sia le cadenze (area BF11:BI20), che i ritardi correnti (BJ11:BJ20) che i ritardi max (BK11:BL20; cadenza e giornata)

Alla prossima...
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: ritardo cadenze

Postdi raimea » 10/02/14 09:42

ciao
si', confermo tutto
ho notato quanto da te descritto.
ancora grazie
ciao
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

ritardo cadenze

Postdi raimea » 13/06/14 10:48

ciao
un informazione.

da quando ho convertito il file in office 2010
queste 2 macro, pur funzionando correttamente,
sono diventate molto piu lente.

c'e' un motivo ?

si tratta delle macro scandenz & decine (in modulo1)
entrambe nel fgl ritardi.

in office 2003 impiegavano 3/4 sec
ora da 60/ ai 120 sec.

ciao
https://db.tt/tsmd8sf3
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi ricky53 » 13/06/14 11:23

Ciao,
che il 2010 sia più lento del 2003 è cosa vera ma questa differenza così grande ... anche se il file che hai inviato è grande.

Hai utilizzato questo file con il 2003 ed il 2010 per le due prove?
Il file ha estensione xlsm quindi l'hai creato con il 2010, aprendolo con il 2003 viene convertito ... al momento non posso fare le prove ... a questa sera
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ritardo cadenze

Postdi Statix » 13/06/14 12:46

Ciao raimea,
se salvi il file in binario, vedrai dimezzato il peso del file da 19Mb a circa 9Mb e sarà più veloce in apertura.
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: ritardo cadenze

Postdi ricky53 » 13/06/14 13:26

Ciao,
per la verifica della lentezza quale macro va eseguita?

Sei sicuro che il file in versione 2010 lo hai fatto girare nella versione 2003?
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: ritardo cadenze

Postdi raimea » 13/06/14 15:08

ciao
da quando ho convertito il file in office 2010

in office 2003 (originario), e' veloce,
in office 2010 e' piu lento.

si tratta delle macro scandenz & decine (in modulo1)
entrambe nel fgl ritardi


se salvi il file in binario, vedrai dimezzato il peso del file da 19Mb a circa 9Mb e sarà più veloce in apertura.

coso significa in binario ? :-?
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi Statix » 13/06/14 15:14

Dopo aver aperto il file normalmente ,poi salva con nome e scegli tipo di file
cartella di lavoro binaria di excel
e salvi,
vedrai che il file si dimezza e all'apertura è molto più veloce.
Statix
Windows 10,
Office 2013,
Statix
Utente Senior
 
Post: 1287
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: ritardo cadenze

Postdi Anthony47 » 13/06/14 15:18

In aggiunta al messaggio di Statix (vedi sopra).
Nelle macro ci sono dei "DoEvents" che servono a far procedere anche gli altri processi di sistema; se li elimini avrai tempi decorosissimi.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: ritardo cadenze

Postdi raimea » 13/06/14 15:36

ciao
ho scoperto cosa significhi "in binario".

ho tolto "DoEvents", e la macro ci impiega circa 60sec
contro i 3/4 di prima in off.2003.

ho tolto TUTTI i "doevents" (30) e la macro e' stata velocissima

quindi presumo fosse quello il problema.

ma senza "doevents" non visualizzo la user mentre girano le varie macro.

non c'e alro modo x visualizzare userform1 mentre girano le macro ?

ciao
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi Anthony47 » 14/06/14 01:09

Devi togliere solo i DoEvents all' interno dei loop; sono loro che mangiano poco tempo ma tante volte.

Io parlo delle macro candenz e decine (in modulo1):
Codice: Seleziona tutto
    DoEvents   'ELIMINARE QUESTO
Next Estraz


Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: ritardo cadenze

Postdi raimea » 14/06/14 06:06

ciao
:D risolto
non avevo visto QUEL "doevents" subito dopo il next
io continuavo a mettere /togliere "doevents" sotto useform1:
Codice: Seleziona tutto
'---avviso avvio macro-----------------
userform1.Show vbModeless  '1
DoEvents
'--------------------------


a cosa sara' servito quel doevents subito dopo next ?
un errore di scrittura ?

comunque ora tutto ok
grazie
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: ritardo cadenze

Postdi Anthony47 » 14/06/14 13:21

Quel DoEvents non e' un errore di battitura, ma una normale precauzione per consentire al sistema di gestire altre situazioni che debbano essere gestite.
Il problema e' che in XL2003 questo veniva fatto in 0.5-1 millisecondo, in XL2010 la cosa richiede circa 20 volte tanto (se non c'e' niene da fare...).
Vista la durata della macro (pochi secondi) si puo' fare a meno di questa prestazione, anche perche' invece di agevolare gli altri processi in realta' (in XL2010) si penalizza solo Excel.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "ritardo cadenze":


Chi c’è in linea

Visitano il forum: Gianca532011 e 65 ospiti