Condividi:        

[Excel] Aiuto per formula Conta.Se

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

[Excel] Aiuto per formula Conta.Se

Postdi bmari » 04/09/06 14:38

Prima di tutto un cordiale saluto e grazie in anticipo... Rientro dalla maternità e sono un pò arrugginita con Excel per cui vi chiedo aiuto.....

Ho un problema nel contare le occorrenze di un un dato all'interno di un archivio.
Ho 843 records e l'occorrenza deve rispettare 2 condizioni inserite in 2 celle diverse. Ovvero una cella (e precisamente nella colonna I) contiene la provincia e un'altra cella (nella colonna J) contiene un codice.

Io devo sapere quanti records hanno provincia "TO" e codice "A".

Ho provato a scrivere
Codice: Seleziona tutto
=CONTA.SE (SE (I1:I843; "TO") + (J1:J843; "A"))
ed anche
Codice: Seleziona tutto
=SE((I1:I843;"TO"), CONTA.SE(J1:J843;"A"))
e altre varianti ma senza risultato

Grazie per l'aiuto

Bmari

:D :-?
bmari
Newbie
 
Post: 7
Iscritto il: 04/09/06 14:21

Sponsor
 

Postdi Anthony47 » 04/09/06 15:10

Bentornata.

Prova a usare
Codice: Seleziona tutto
=MATR.SOMMA.PRODOTTO((I1:I843="TO")+0,(J1:J843="A")+0)

Eventualmente metti i 2 criteri (se devono cambiare) in 2 celle, e metti il loro indirizzo nella formula al posto di "TO" e "A".

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

Postdi Anthony47 » 04/09/06 15:13

Pardon:
Codice: Seleziona tutto
=MATR.SOMMA.PRODOTTO((I1:I843="TO")+0;(J1:J843="A")+0)

(il separatore che uso sul mio PC e' "virgola", ma in genere si usa "punto-e-virgola").

Bye,
Avatar utente
Anthony47
Moderatore
 
Post: 19440
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi Alexsandra » 04/09/06 15:14

bmari ha scritto:... Rientro dalla maternità ......
Maschio o Femmina? ..... Congratulazioni
Codice: Seleziona tutto
{=SOMMA(SE((I1:I843="TO")+(J1:J843="A");1;0))}

non sò se funziona, è una matriciale, però è molto utile in questo caso, usi una funzione sola.

PS. per la graffa CTRL + MAIUS + INVIO, non copiare la formula perchè non funziona, le graffe le devi digitare con la sequenza di tasti indicata
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

funziona ....

Postdi bmari » 04/09/06 16:07

mi pare proprio che la formuletta scritta da Antony 47 funzioni...

Domattina la controllo meglio e vi saprò dire.

Grazie 1000.....

ps. il mucchiettino di ossa è maschio... un vero terremoto! x la femmina ho già dato 8 anni fa...

Ciao :)
bmari
Newbie
 
Post: 7
Iscritto il: 04/09/06 14:21

Funzione Contix

Postdi By Sal » 04/09/06 17:51

Ciao a tutti, vorrei proporre anche io qualcosa, la funzione Contix(), per la verità la funzione Contix non esiste, lo creata io perchè avevo un problema e con le matriciali poco ci sono affezionato, mi creano problemi.
la funzione e questa

Codice: Seleziona tutto
Contix(fgl, col, val1, val2)


Di cui fgl è il foglio, col è la colonna, val1 è il primo valore, val2 il secondo valore, Controlla val2 appena vicino alla colonna di partenza e parte dalla riga 1, ma vedendo il codice la si puo adattare anche ad altre rige oppure aumentare la ricerca dei valori con valn...
nel caso di bmari se il foglio è il foglio1 la formula va scritta in questo modo:

Codice: Seleziona tutto
=Contix(1;"I";"TO";"A")


E' restituisce quante volte si presentano i due valori cercati.
Questo è il codice della funzione che và inserito in un modulo, ci sono i vari passaggi per qualche modifica:

Codice: Seleziona tutto
Public Function Contix(fgl, col, val1, val2)
Dim cont, coln
Sheets(fgl).Select
cont = 0 'contatore della somma
coln = 0 'colonna in numero
col = UCase(col)
For i = 1 To 256 'cambia la colonna in numero
    If Sheets(fgl).Columns(i).Address = "$" & col & ":$" & col Then
        coln = i
        i = 256
    End If
Next i
rig = Cells(1, coln).End(xlDown).Row 'vede elenco
For i = 1 To rig 'controlla i dati e li somma
    If val1 = Cells(i, coln) Then
        If Cells(i, coln + 1) = val2 Then cont = cont + 1
    End If
Next i
Contix = cont 'restituisce la somma
End Function


Se ci sono problemi ditemelo Ciao By Sal

:)
A rileggerci By Sal
Avatar utente
By Sal
Utente Junior
 
Post: 83
Iscritto il: 27/08/06 14:40

riconfermo.... funziona!!

Postdi bmari » 05/09/06 08:57

E' tutto ok!

Confermo e ringrazio di nuovo Anthony47 per il preziosissimo aiuto! :)

p.s. non so se la formulona scritta da by sal funzioni o meno perchè non ho avuto tempo di provarla però vorrei precisare che le due variabili sono inserite in due colonne diverse (una è la colonna delle prov e l'altra è la colonna dei codici)

Grazie comunque per l'impegno che è stato notevole visto le righe di codice.....

E grazie naturalmente anche ad Alexsandra!

Ciao
;)
Bmari
bmari
Newbie
 
Post: 7
Iscritto il: 04/09/06 14:21

Postdi JOSHU4 » 13/09/06 10:24

Ciao, finalmente un forum dove vale la pena iscriversi.

Lavoro spesso con excel ma non sono (per adesso) un programmatore vb e quindi vado sempre alla ricerca di soluzioni leggermente più semplici.

Per quanto riguarda il MATR.SOMMA.PRODOTTO di anthony avrei qualche problema. Non funziona.

Dovrei aver fatto tutto correttamente. Cosa potrei aver sbagliato?

Ciao e grazie.
Quando insegni insegna a dubitare di ciò che insegni
JOSHU4
Newbie
 
Post: 3
Iscritto il: 13/09/06 10:18
Località: Milano

Postdi JOSHU4 » 13/09/06 10:34

Funziona :roll: :D
Quando insegni insegna a dubitare di ciò che insegni
JOSHU4
Newbie
 
Post: 3
Iscritto il: 13/09/06 10:18
Località: Milano

Postdi JOSHU4 » 13/09/06 11:16

Anthony47 ha scritto:Pardon:
Codice: Seleziona tutto
=MATR.SOMMA.PRODOTTO((I1:I843="TO")+0;(J1:J843="A")+0)

(il separatore che uso sul mio PC e' "virgola", ma in genere si usa "punto-e-virgola").

Bye,


Visto che la funzione funziona :) chi sà darmi un'interpretazione matematica dell'intera funzione e più precisamente cosa significa:
I1:I843="TO"
e
+0
.

Ho provato da solo a capirci ma ...
Quando insegni insegna a dubitare di ciò che insegni
JOSHU4
Newbie
 
Post: 3
Iscritto il: 13/09/06 10:18
Località: Milano

Postdi Anthony47 » 13/09/06 15:50

Un primo aiutino te lo puo' dare l' help on line di excel, che ti spiega la sintassi della funzione.

Qualche dettaglio:
I1:I843="TO" verifica quali celle nel range I1:I843 hanno come contenuto il testo TO. Il risultato e' espresso come VERO o FALSO.

+0 e' una tecnica usata per convertire il valore logico VERO/FALSO in valore numerico 1/0; qualcuno usa *1, altri il doppio -; io uso +0 perche' da qualche parte lessi che e' il metodo piu' rapido per excel o *1 perche' mi sembra il piu' leggibile.

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

Re: [Excel] Aiuto per formula Conta.Se

Postdi danieleg » 13/09/06 17:11

bmari ha scritto:Rientro dalla maternità e sono un pò arrugginita con Excel per cui vi chiedo aiuto.....

Non ho nessun aiuto da darti per Excel, d'altronde mi pare che il problema sia già stato risolto. Voglio invece solamente farti i miei migliori auguri per il "terremoto" e, già che ci siamo, anche per la femminuccia.
Di nuovo Auguri a tutti e tre, anzi, a tutti e quattro (vogliamo metterci anche quel povero marito che nessuno si ricorda mai che c'è)?
Avatar utente
danieleg
Utente Senior
 
Post: 850
Iscritto il: 10/07/06 15:58
Località: Vicino a Imperia


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Aiuto per formula Conta.Se":


Chi c’è in linea

Visitano il forum: Nessuno e 90 ospiti