Ciao a tutti, sono nuovo del forum e anche a secco di macro e VBA.
ho da lavorare con un database in excel molto grande (circa 363 mila righe x 50 colonne).
Dovrei aggiungere una colonna "indice" con dei valori.
Provo a spiegare più nel dettaglio (gli esempi di seguito si riferiscono al file di esempio che potete trovare a questo link:
https://www.dropbox.com/s/nik33vo2vmb1v ... xlsx?dl=0)
Risultato finale che vorrei ottenere: un valore nella col. E che sia uguale per tutte le righe aventi GRUPPO uguale
Matrice di riferimento: A2:E14
Spiegazione generale: la macro dovrebbe calcolare la somma delle volte che ogni partecipante di un determinato gruppo ha fatto parte di altri gruppi dove erano presenti anche uno o più partecipanti di quel determinato gruppo, divisa per il numero di partecipanti del gruppo. Ogni co-presenza di due partecipanti ad un gruppo vale 1 se entrambi i partecipanti presentano il valore “no” nella rispettiva colonna C, mentre vale 1,5 se almeno uno dei due presenta il valore “si”.
Spiegazione analitica: Prendiamo ad esempio il gruppo 123 e partiamo dalla co-presenza di AAAA e AABB. AAAA & AABB=1 perché questa coppia è presente solo nel gruppo 123. Rivalutazione: siccome AAAA ha “si” in C2 si moltiplica per 1,5 quindi (1*1,5=1,5). Poi si continua e si verifica la co-presenza, sempre di AAAA, con gli altri partecipanti. AAAA & BBBB sono presenti sia nel gruppo 123 che nel gruppo 456. Gruppo 123: AAAA&BBBB=1*1.5=1.5. Gruppo 456: AAAA&BBBB=1*1.5=1.5. Rivalutazioni: per lo stesso motivo di prima. Totale AAAA&BBBB=3.
Vado veloce con gli altri casi per concludere il gruppo 123:
AAAA&BBCC= (1*1.5)+(1*1.5)= 3
AAAA&DDDD= (1*1.5)=1.5
AABB&BBBB = (1*1)=1
AABB&BBCC= (1*1)=1
AABB&DDDD=(1*1)=1
BBBB&BBCC=(1*1)=1
BBBB&DDDD=(1*1)=1
BBCC&DDDD=(1*1)=1
SOMMA dei valori delle co-presenze gruppo 123 = (1.5+3+3+1.5+1+1+1+1+1+1) = 15
INDICE gruppo 123 = 15/5=3
Grazie mille a tutti.