È soltanto un Pokémon con le armi o è un qualcosa di più? Vieni a parlarne su Award & Oscar!
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Come contare quante volte un elemento si ripete relativamente ad un determinato intervallo di date?

Ultimo Aggiornamento: 07/09/2019 10:31
Post: 5.751
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
07/09/2019 08:14

Convegni
Ciao Melissa, visto che l'aggiornamento dei dati lo fai mensilmente, anche perche inserendo le formule la gestione, per i tempi diventerebbe proibitiva.

Ho lasciato la macro del doppioclick in quanto potrai avere bisogno di un aggiornamento di un solo dato instantaneo variando i giorni in "B1".

ma ho creato la macro generale in modo che aggiorni tutti i dati, che è questa:

Sub Trova2()
Dim r, x, y, n1, n2, d1, d2, t1, t2, k

k = Range("B1")
r = Cells(Rows.Count, 1).End(xlUp).Row
Range("CH54:CI" & r).ClearContents
For x = 54 To r1
    Cells(x, 5) = Trim(Cells(x, 5))
    Cells(x, 6) = Trim(Cells(x, 6))
Next x
For x = r To 54 Step -1
    d1 = Cells(x, 1) - 1
    d2 = d1 - k
    n1 = Cells(x, 5)
    n2 = Cells(x, 6)
    t1 = 0: t2 = 0
    For y = 54 To r
        If Cells(y, 1) >= d2 And Cells(y, 1) <= d1 Then
            If Cells(y, 5) = n1 Or Cells(y, 6) = n1 Then t1 = t1 + 1
            If Cells(y, 5) = n2 Or Cells(y, 6) = n2 Then t2 = t2 + 1
        End If
    Next y
    Cells(x, 86) = t1
    Cells(x, 87) = t2
Next x
End Sub


l'omogeneità dei dati, è vero tu hai inserito dati fittizi copiandoli poi in sequenza, ma come ho detto precedentemente, ho visto "luca" perche me ne sono accorto, ma potrebbero essercene anche altri, "luca a volte è scritto come "luca" ed altre volte è scritto come "luca " con uno spazio davanti che è invisibile ma per Excel sono 2 nomi differenti uno di 4 lettere ed uno di 5 lettere con lo spazio, per cui quanto conta "luca" il luca di 5 lettere non lo conta, anche se tu lo vedi creando conteggi errati.

per cui la macro che ti ho proposto in primo luogo elimina gli spazi iniziali o finali, iniziali perche potrebbe anche essere " luca" con uno spazio inizile.

poi inizia a fare il conteggio partendo dall'ultimo inserito, in quanto partendo dal primo non può contare 100 giorni prima oppure solo 1 giorno perche non ci sono dati.

quindi ti riporta tutti i dati calcolati.

spero che vada bene fai i controlli e fai sapere.

come al solito prima di lanciare la macro devi aggiornare i giorni nella cella "B1"

per i 400.000 dati bisogna aspettare che finisca la macro, questo dipende poi dalla velocità del processore del PC.

Ciao By Sal [SM=x423051]

P.S. per lanciare la macro non ho inserito un pulsante, premi Alt+F8 si aprono le macro trovi solo quella "Trova2" la selezioni e premi esegui poi di nuovo Alt+F8 per chiudere la mascherina.


[Modificato da by sal 07/09/2019 08:22]
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Vota: 15MediaObject5,001230 12
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 23:46. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com