You are here:---Rispondi a: valori unici
Rispondi a: valori unici2018-06-20T16:45:48+01:00

Home Forum Domande su Formule e Funzioni valori unici Rispondi a: valori unici

BySalvBySalv
Amministratore del forum
    Post totali: 538

    Ciao Giorgio, quella è una UDF una funzione Utente, e funziona uguale come una formula Excel come ho detto la devi soltanto copiare in un modulo e poi dimenticarla.

    dovunque vorrai usare la formula del “Fuori90” ammettendo che nella cella “A1” hai il numero 550 e vuoi sapere il Fuori90 in un altra cella scrivi

    =Fuori90(A1)

    ed avrai il risultato, oppure come ho fatto io fare il calcolo del 1° estratto del foglio1 +30 in “N1”

    =Fuori90(Foglio1!C11*Foglio2!$N$1)

    quindi nella cella dove avrai messo la formula avrai il Fuori90

    Ho anche la funzione per i vertibili per avere il vertibile di un numero.

    Comunque torniamo a noi, con le formule come ho detto non sono un granchè, ma con il vba me la cavo.

    eccoti la macro che fa il lavoro, quante estrazioni metti nel foglio1 tante estrazioni calcola nel foglio2, adesso sono 2 ma se ne metti 20 le fa tutte.

    Mantiene anche la posizione, cioè solo la prima posizione del doppione viene scritta le successive vengono omesse esempio

    60-30-90-0-0

    vuol dire che gli zero possono essere un doppione delle prime 3 esempio

    60-30-90-90-60

    quindi 60-90 sono doppioni, ma non viene visualizzato lo zero resta vuota la posizione è solo un esempio.

    Sub risultato()
    Dim r, x, y, d, n, rng, sh1 As Worksheet, sh2 As Worksheet
    
    Set sh1 = Worksheets("Foglio1")
    Set sh2 = Worksheets("Foglio2")
    
    sh2.Activate
    Application.ScreenUpdating = False
    r = sh1.Cells(Rows.Count, 3).End(xlUp).Row
    Range(sh2.Cells(11, 15), sh2.Cells(r, 19)).ClearContents
    For x = 11 To r
        For y = 15 To 19
            d = Fuori90(sh1.Cells(x, y - 12) * sh2.Cells(1, 14))
            sh2.Activate
            Set rng = Range(sh2.Cells(x, 15), sh2.Cells(x, 19))
            n = WorksheetFunction.CountIf(rng, d)
            If n = 0 Then Cells(x, y) = d Else Cells(x, y) = ""
        Next y
    Next x
    Application.ScreenUpdating = True
    sh2.Activate
    sh2.Cells(1, 1).Select
    End Sub

    Ho lasciato la formula nella colonna “N” non l’ho toccata ho considerato solo le colonne “O-S”

    Ciao By sal :bye:

    ti allego il link al file

    https://mega.nz/#!oAcgCaSI!CfPyVTOaSv9H0i0D4wDEpS8GrF7s-HKRdphj9rMn0-U

    • Questa risposta è stata modificata 1 anno, 4 mesi fa da BySalv BySalv.

    Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

    Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

    Chiudi