Domanda Database separati da far dialogare

Pollaio

Nuovo utente
27 Gennaio 2020
19
3
2013
0
Buongiorno a tutti,
quando non riesco a venirne fuori in autonomia, rieccomi ricomparire qui nel forum.
In verità questo mi sembrava un problema teoricamente abbastanza semplice, più legato alla logica che alla complessità delle formule, ma invece mi ritrovo fermo.
Sostanzialmente ho 2 mappature separate:
1. Che mappa delle tipologie di attributo da mappare per ogni categoria di prodotto
2. Che mappa i dipartimenti responsabili per ogni tipologia di attributo

3. Infine ho un export (strutturalmente osceno) lanciato periodicamente che registra, a livello di singolo articolo di prodotto e relativa categoria, i valori completati all'interno del mare magnum di tutti i possibili attributi, compresi anche quelli non legati alla categoria in questione (qui nasce il grosso del problema).

L'obiettivo è quello di riuscire a creare un modellino che, ad ogni aggiornamento del report (3), mi possa far generare due tabelle di sintesi che mostrino i livelli di completezza sia per categoria di prodotto che per dipartimento di competenza.
Il mio sogno iniziale in realtà era quello di creare una singola tabella riassuntiva (poi lavorabile con delle pivot), ma temo non sia fattibile.
Il mio unico vincolo è quello di non usare VBA o Macro, perché non sarebbe gestibile dai colleghi a cui trasmetterò il file, le pivot invece sono ben volute.
Vi allego un file che spero sia più chiaro di questa sbrodolata di testo.
Speranzoso e riconoscente, vi saluto.
 

Allegati

Pollaio

Nuovo utente
27 Gennaio 2020
19
3
2013
0
Ciao,
credo che il file venga parecchio pesante, per questo ti chiedo: colonne di appoggio se ne possono creare?
Ciao Sbareev e grazie per la risposta.
Il 3D forse risulta un po' troppo generico e temevo che ormai non rispondesse più nessuno.
Ad ogni modo, certo che sì: colonne di appoggio, integrate o meno nel report (3), si possono tranquillamente fare. Io stavo anche ragionando sullo sdoppiamento del report stesso, una versione come da schema originale ed una versione trasposta, quindi invertendo le intestazioni di riga con quelle di colonna.
Tu come imposteresti invece la costruzione?
 

Sbareev

Utente abituale
8 Aprile 2017
311
30
Cremona
Office 365
29
Ciao,
ci provo...

Eliminerei la mappa dipartimento (2) e lascerei la 1 e la 3.

Aggiungerei 2 righe:
- Dipartimenti relativi agli attributi (riga 21)
- Conteggio delle attività totali per colonna D20: =SOMMA(($C$5:$F$8=D22)*CONTA.PIÙ.SE($C$23:$C$31;$B$5:$B$8))

Aggiungerei 3 colonne:
- Completi : N23 =CONTA.VALORI(D23:M23)
- totali: O23: =CONTA.VALORI(INDIRETTO("C"&CONFRONTA(C23;$B$5:$B$8;0)+4&":"&"F"&CONFRONTA(C23;$B$5:$B$8;0)+4))
- Stato (completa / non completa) : =SE(N23=O23;"completa";"non completa")

Poi hai tutti gli elementi per completare le tabelle.


Il BD dei sogni....ci devo pensare, ma la notte porta consiglio...
 

Allegati

  • Like
Reactions: Pollaio

Pollaio

Nuovo utente
27 Gennaio 2020
19
3
2013
0
Ciao,
ci provo...
Buongiorno Sbareev,
e scusa innanzitutto se non sono riuscito a replicare prima..
Grazie per esserti lanciato nella missione, tra l'altro anticipando quello che ti avrei chiesto, ovvero di poter mappare anche il numero di attributi mancanti per ogni articolo. Così facendo, oltre a monitorare il numero di articoli completi/incompleti, posso anche giocare con il livello di completamento assoluto degli attributi.
Mi pare funzioni tutto alla perfezione ma ora provo a metterci le mani per capire appieno i calcoli che hai impostato.
Magari potrei farti solo qualche domanda delucidatoria.
Nel frattempo però ti riringrazio.
Andrea
 

Pollaio

Nuovo utente
27 Gennaio 2020
19
3
2013
0
Ciao,
ci provo...

- Conteggio delle attività totali per colonna D20: =SOMMA(($C$5:$F$8=D22)*CONTA.PIÙ.SE($C$23:$C$31;$B$5:$B$8))

- totali: O23: =CONTA.VALORI(INDIRETTO("C"&CONFRONTA(C23;$B$5:$B$8;0)+4&":"&"F"&CONFRONTA(C23;$B$5:$B$8;0)+4))
Sto analizzando i tuoi passaggi con estrema ammirazione. Davvero bravo, sia nella conoscenza delle formule che nella capacità di integrarle in una logica di calcolo.

Ci sono due formule in particolare che mi piacerebbe capire un po' (nel file ho evidenziato le relative celle in rosso e, se non ti tornano i riferimenti rispetto al tuo file, è perché ho aggiunto due righe):

1.
=CONTA.VALORI(INDIRETTO("C"&CONFRONTA(C25;$B$5:$B$8;0)+4&":"&"F"&CONFRONTA(C25;$B$5:$B$8;0)+4))
Questa mi ha davvero impaurito, soprattutto nei passaggi "C"& e poi +4&":"&"F"& e il +4 finale
Dovendo riversare il tutto in un database con migliaia di righe e molte più colonne, per giunta non posizionato alla stessa altezza, vorrei capire quali accorgimenti dover prendere nel trasportare questo calcolone.

2.
=SOMMA(($C$5:$F$8=D24)*CONTA.PIÙ.SE($C$25:$C$33;$B$5:$B$8)) che hai inserito in formato matriciale
In questo caso è più per cultura personale nel capirne il funzionamento, visto che ho provato a scindere i due calcoli che la compongono ma, separatamente non mi danno risultati utilizzabili

Ti ringrazio nuovamente per il supporto.
Andrea
 

Allegati

Sbareev

Utente abituale
8 Aprile 2017
311
30
Cremona
Office 365
29
Ciao,
ti conviene andare per step..

1.=CONTA.VALORI(INDIRETTO("C"&CONFRONTA(C25;$B$5:$B$8;0)+4&":"&"F"&CONFRONTA(C25;$B$5:$B$8;0)+4))

Formula confronta CONFRONTA(C25;$B$5:$B$8;0)

Confronta la cella C25 nelle celle B5:B8 e ti restituisce il riferimento esatto -> numerico. Ciò significa che l'ennesima riga è il tuo riferimento, ma essendo partito dalla cella nr. 5, devo aggiungere un + 4 (ecco spiegato quel + 4 sopra.
Se fossi partito dalla B1 non avresti aggiunto nulla -> puoi farlo tranquillamente.

Contatenazione: "C"&CONFRONTA(C25;$B$5:$B$8;0)+4&":"&"F"&CONFRONTA(C25;$B$5:$B$8;0)+4)
Serve per costruire il riferimento C2:F2

Formula Indiretto: ti trasforma il "testo" del riferimento nell'effettivo intervallo da valutare
Conta valori dell'intervallo selezioanto (a questo punto variabile in funzione della cella C25, C26....)



2. =SOMMA(($C$5:$F$8=D24)*CONTA.PIÙ.SE($C$25:$C$33;$B$5:$B$8))

CONTA.PIÙ.SE($C$25:$C$33;$B$5:$B$8))
Restituisce il numero di volte che compare il tipo di prodotto nel tuo elenco totale.

($C$5:$F$8=D24)
Restituisce (logico, vero o falso) se all'interno del settore, per singola riga, è presente l'attributo ricercato (d24)

Moltiplicando il numero di volte che compare il prodotto per un valore logico che determina se presente o meno l'attributo, ti determina un elenco di numeri che rappresentano il numero di prodotti nel quale è presente l'attributo ricercato.
Sommando questi numeri, trovi il numero di "prodotti" totali per competenza


Puoi, col tasto F9 selezionare una porzione di formula per vedere il risultato che genera


Fammi sapere se sono stato abbastanza chiaro.
 
  • Like
Reactions: Pollaio

Pollaio

Nuovo utente
27 Gennaio 2020
19
3
2013
0
Ciao,
ti conviene andare per step..
Rapidissimo e chiarissimo!
Ora sto provando ad applicare il tutto ai database reali, che fanno pena e devo sicuramente sistemarli (in alcuni casi mi danno un numero di attributi completati più alto rispetto a quelli richiesti Eek).
Provo a giostrami un po' ma ho il sospetto dovrò tornare con qualche ulteriore richiesta.
Per il momento ti ringrazio moltissimo.
Andrea
 

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!