| | Post: 4 | Registrato il: 28/01/2016
| Città: MILANO | Età: 39 | Utente Junior | 2013 | | OFFLINE | |
|
21/03/2018 14:09 | |
Ciao a tutti,
Ho un elenco nomi in A con relativi valori in B, vorrei poter fare un somma se dei valori in B che hanno come criterio un elenco in C
piero 20 Piero
giovanni 20 enrico
francesc 10 laura
enrico 10
giuspeppe15
laura 25
paolo 4
fernando 7
Ovviamente l'elenco è molto più lungo e non vorrei mettere nei criteri tutti i nomi ma dare tipo un intervallo.
é possibile..? |
|
| | Post: 2.070 | Registrato il: 21/03/2008
| Città: LOCATE VARESINO | Età: 76 | Utente Veteran | 2007 / 13 | | OFFLINE | |
|
21/03/2018 15:39 | |
ciao
devi postare un file e non un immagine e mettere in una cella il risultato voluto
Ciao da locate
excel 2007 / 13 |
| | Post: 4 | Registrato il: 28/01/2016
| Città: MILANO | Età: 39 | Utente Junior | 2013 | | OFFLINE | |
|
21/03/2018 15:46 | |
locatevaresino, 21/03/2018 15.39:
ciao
devi postare un file e non un immagine e mettere in una cella il risultato voluto
|
| | Post: 3.682 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
21/03/2018 16:20 | |
Ciao Vito
Nel file che hai allegato c'erano due errori: nella cella F4 c'è lino mentre tu nel calcolo hai considerato quello di pino (22).
In colonna A roberta non è uguale roberta in F7.
Comunque prova questa function da inserire in un modulo standard nell'editor di VBA
vb Function MiaSomma(rng As Range)
Dim cel As Range
Dim rng1 As Range
Dim somma As Integer
For Each cel In rng
With Sheets("Foglio1").Range("A:A")
Set rng1 = .Find(What:=cel.Value, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rng Is Nothing Then
somma = somma + rng1.Offset(0, 1).Value
End If
End With
Next cel
MiaSomma = somma
End Function
e sul foglio in una cella scrivi
Alfredo |
| | Post: 157 | Registrato il: 11/07/2015
| Età: 33 | Utente Junior | office 2013-2016 | | OFFLINE | |
|
21/03/2018 17:23 | |
Buona Sera
in allegato file
f2=MATR.SOMMA.PRODOTTO(SOMMA.SE($A$1:$A$20;$F$4:$F$20;$B$1:$B$20))
ho dovuto allegare il file causa errore di trascrizione nomi e nomi
con spazi che non facevano funzionare la formula. [Modificato da Ulisse1990 21/03/2018 17:32] |
| | Post: 5 | Registrato il: 28/01/2016
| Città: MILANO | Età: 39 | Utente Junior | 2013 | | OFFLINE | |
|
22/03/2018 09:32 | |
alfrimpa, 21/03/2018 16.20:
Ciao Vito
Nel file che hai allegato c'erano due errori: nella cella F4 c'è lino mentre tu nel calcolo hai considerato quello di pino (22).
In colonna A roberta non è uguale roberta in F7.
Comunque prova questa function da inserire in un modulo standard nell'editor di VBA
vb Function MiaSomma(rng As Range)
Dim cel As Range
Dim rng1 As Range
Dim somma As Integer
For Each cel In rng
With Sheets("Foglio1").Range("A:A")
Set rng1 = .Find(What:=cel.Value, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rng Is Nothing Then
somma = somma + rng1.Offset(0, 1).Value
End If
End With
Next cel
MiaSomma = somma
End Function
e sul foglio in una cella scrivi
Grazie mille, ho preferito quella di ulisse1990, più rapida per me.
|
| | Post: 6 | Registrato il: 28/01/2016
| Città: MILANO | Età: 39 | Utente Junior | 2013 | | OFFLINE | |
|
22/03/2018 09:33 | |
Ulisse1990, 21/03/2018 17.23:
Buona Sera
in allegato file
f2=MATR.SOMMA.PRODOTTO(SOMMA.SE($A$1:$A$20;$F$4:$F$20;$B$1:$B$20))
ho dovuto allegare il file causa errore di trascrizione nomi e nomi
con spazi che non facevano funzionare la formula.
Grazie mille! è quello che mi serviva!
|
|
|