| | Post: 1 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
22/05/2013 17:22 | |
Buongiorno!!, sono un insegnante Ho creato un semplice registro scolastico dal quale vorrei estrarre in gruppi i nomi di chi ha lo stesso voto in una cella di un'altra tabella; ho qualche possibilitá di riuscirci... Magari con l'aiuto di qualche gentile frequentatore del forum.
Ringrazio anticipatamente.
F. Furlanetto
|
|
| | Post: 1.179 | Registrato il: 24/09/2008
| Città: LATINA | Età: 69 | Utente Veteran | 2007-2010 | | OFFLINE | |
|
22/05/2013 18:07 | |
Ciao Federico, benvenuto nel forum.
Dunque dovresti, per cortesia, indicarci la tua versione Excel che usi può essere utile a chi ti darà una mano trovi le istruzioni nel link: lhttp://freeforumzone.leonardo.it/discussione.aspx?idd=9561389
Per il tup problema penso sia risolvibile però per evitare di andare per tentativi ti consiglio di allegare un piccolo file di esempio che rispecchi l'originale con dati fittizi indicando quindi dove prendere i dati e dove vuoi la risposta.
Per allegare un file (dove hai scritto il tuo messaggio) in basso a sinistra trovi Carica File/Foto Premi e vai a selezionare il file dal tuo pc deve essere .Zip o .Rar se troppo grande.
Un saluto
Berna11
-----------
Excel-2007-2010
|
| | Post: 0 | Registrato il: 22/05/2013
| Città: MILANO | Età: 46 | Utente Junior | | OFFLINE | |
|
22/05/2013 22:46 | |
Ciao,
se hai già creato la tabella la può gestire con una pivot table e creare diverse visualizzazioni tra cui quella descritta nel tuo post.
|
| | Post: 1 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
27/05/2013 14:42 | |
allora...intanto grazie per l'accoglienza...ho provveduto ad aggiornare il profilo come richiesto; ad ogni modo uso Excel 2010.
Veniamo al mio problema.
In pratica vorrei ottenere una tabella riepilogativa in modo che (vedi allegato) tutti i nomi presenti nella colonna A del Foglio1 che hanno ottenuto come voto 9, vengano raggruppati nella cella corrispondente nel Foglio2, alfine di creare i gruppi di valutazione da inserire in una relazione finale.
Vi ringrazio ancora per l'aiuto Excel 2010 |
| | Post: 872 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Senior | 2010 | | OFFLINE |
|
27/05/2013 16:10 | |
Ciao
ti posso consigliare tre modalità:
1) se ti necessita obbligatoriamente avere i risultati in UNA SOLA CELLA, allora ti serve il VBA (vi è una UDF, di cerca verticale multiplo, fatta/divulgata da Scossa)
se è possibile un risultato su più celle:
2) una pivot (come consigliato in precedenza)
3) in B3:
=SE.ERRORE(INDICE(Foglio1!$A$2:$A$10;PICCOLO(SE(Foglio1!$B$2:$B$10=$A3;RIF.RIGA($A$1:$A$9));RIF.COLONNA(A1)));"")
da confermare con CTRL+Maisc+Invio
da trascinare a destra
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 1 | Registrato il: 22/05/2013
| Città: MILANO | Età: 46 | Utente Junior | | OFFLINE | |
|
27/05/2013 17:33 | |
Ciao,
un altro metodo potrebbe essere quello di creare tante pivot quanti sono i voti e poi con la funzione concatena inserisci il risultato nei campi.
ciao Sales Analyst Milano - Christian |
| | Post: 2 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
27/05/2013 17:51 | |
Grazie per i suggerimenti, ho provato a cercare il VBA ma nn l'ho trovato (probabilmente sono troppo imbranato);
Avrei bisogno di ottenere i risultati uguali in una cella;
Ho provato la formula che hai postato ma non funzia...( l'ho copiata cosí com'era)
Ricordo a tutti che avete a che fare con un autodidatta di excel...con tutti i limiti del caso...
Grazie ancora
Excel 2010 |
| | Post: 873 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Senior | 2010 | | OFFLINE |
|
27/05/2013 19:39 | |
Ciao
il codice di cui ti parlavo da inserire in un modulo è:
Public Function CercaMVert( _
ByVal sWhat As String, _
ByVal rng As Range, _
ByVal lCol As Long, _
Optional ByVal sSep As String = " ", _
Optional ByVal bNum As Boolean = False) As Variant
'
'----------------------------------------------------
' di Scossa
' Ricerca *sWhat* nel range *Rng* (di 1 sola colonna)
' e restituisce *concatenandoli* i valori delle celle
' spostate *lRow* rispetto alla cella dove il valore
' è stato trovato.
' se bNum = 1 e sSep è "+" o "-" o "*" o "/"
' ed i valori sono numerici verrà restituito
' il risultato dell'operazione
'----------------------------------------------------
Dim rFound As Range
Application.Volatile
Dim nRow As Long
Application.Volatile
Dim nLastRow As Long
Application.Volatile
Dim rLastCell As Range
Application.Volatile
Dim shFrom As Worksheet
Application.Volatile
Dim cAddress As String
Application.Volatile
Dim nLen As Long
Application.Volatile
Dim nAt As Long
Application.Volatile
Set shFrom = rng.Parent
nRow = Application.WorksheetFunction.Max(rng.Row - 1, 1)
cAddress = rng.Address
nLen = Len(cAddress)
nAt = InStrRev(cAddress, "$", InStrRev(cAddress, "$", nLen) - 1)
cAddress = Mid(cAddress, nAt)
Set rLastCell = rng.Parent.Range(cAddress)
nLastRow = rLastCell.Row
Set rFound = rng.Find(sWhat, searchorder:=xlByColumns, after:=rLastCell, LookIn:=xlValues)
If Not rFound Is Nothing Then
cAddress = rFound.Address
If InStr("+-*/", sSep) > 0 And bNum Then
Do
CercaMVert = CercaMVert & sSep & IIf(IsNumeric(rFound.Offset(0, lCol).Value), rFound.Offset(0, lCol).Value, 0)
Set rng = Intersect(rng, rFound.Resize(Cells.Rows.Count - rFound.Row, 1))
nRow = rng.Row
cAddress = rFound.Address
Set rFound = rng.Find(sWhat, LookIn:=xlValues)
Loop While Not rFound Is Nothing And nRow < nLastRow And rFound.Address <> cAddress
CercaMVert = Evaluate(Mid(CercaMVert, 2))
Else
Do
CercaMVert = CercaMVert & _
rFound.Offset(0, lCol).Value & sSep '";"
Set rng = Intersect(rng, rFound.Resize(Cells.Rows.Count - rFound.Row, 1))
nRow = rng.Row
cAddress = rFound.Address
Set rFound = rng.Find(sWhat, LookIn:=xlValues)
Loop While Not rFound Is Nothing And nRow < nLastRow And rFound.Address <> cAddress
CercaMVert = Left(CercaMVert, Len(CercaMVert) - Len(sSep))
End If
Else
CercaMVert = "?" 'CVErr(Excel.xlErrNA)
End If
Set shFrom = Nothing
Set rLastCell = Nothing
Set rng = Nothing
End Function
in ogni caso anche con la formula, integrando il consiglio di Fredge ( il concatena), si può arrivare al risultato voluto.
Ti allego file con le due soluzioni in fogli diversi.
Per delucidazione sul codice e sul suo utilizzo, devi aspettare che intervenga qualcuno più ferrato, io riesco solo ad utilizzarlo (a volte). [Modificato da ninai 27/05/2013 19:41]
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 3 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
28/05/2013 15:06 | |
Grazie ninai, oggi ho un pò da fare ma appena mi libero lo provo...
metti caso che funzioni...
grazie ancora... Excel 2010 |
| | Post: 874 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Senior | 2010 | | OFFLINE |
|
28/05/2013 16:55 | |
Federico.61, 28/05/2013 15:06:
Grazie ninai, oggi ho un pò da fare ma appena mi libero lo provo...
metti caso che funzioni...
grazie ancora...
Di funzionare funziona!!
inoltre
da collega, ti dico, che il difficile è farlo usare.
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 4 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
29/05/2013 17:25 | |
ninai, 28/05/2013 16:55:
Di funzionare funziona!!
inoltre
da collega, ti dico, che il difficile è farlo usare.
bene!!!! e ora come lo inserisco nel foglio? come si fa?
sempre grazie in anticipo
Excel 2010 |
| | Post: 876 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Senior | 2010 | | OFFLINE |
|
29/05/2013 21:25 | |
Ciao
in quale foglio?? cosa??
ti ho reiviato il tuo file con le due soluzioni, in due fogli separati:
-un foglio con la formula e le colonne di appoggio
-un foglio con l'UDF (che è una funzione personalizzata, creata dal codice, messo in un modulo del foglio)
la sintassi dell'UDF , che si chiama CercaMVert(), è in B3:
=CercaMVert(A3;Foglio1!$B$2:$B$10;-1;", ")
A3: il voto da cercare
Foglio1!$B$2:$B$10 : dove cercarlo
-1 : una volta trovato di quante colonne spostarsi per estrarre i nomi
", " : che segno usare per separare i diversi nomi
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 5 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
29/05/2013 21:56 | |
devo quindi creare un modulo e copiare il codice dell UDF...
spero di riuscirci...
Grazie ancora...anche se temo che dovrò ricorrere ancora all'aiuto...
Excel 2010 |
| | Post: 6 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
29/05/2013 22:50 | |
Grazie ninai, grazie 100.000.....
Funziona alla perfezione....
proprio ciò che cercavo
Grazie, grazie
Excel 2010 |
| | Post: 879 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Senior | 2010 | | OFFLINE |
|
30/05/2013 07:31 | |
buoni scrutini anche a te
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 3.474 | Registrato il: 14/11/2004
| Utente Master | Office 2019 | | OFFLINE |
|
30/05/2013 08:44 | |
Ciao ecco la mia soluzione, ne ho fatto 2, vedi quale va meglio.
basta andare sul foglio 2 o 3 e premere il pulsante, ho allungato un po l'elenco per controllo, ma la lunghezza dell'elenco è ininfluente.
Ciao By Sal
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui |
| | Post: 7 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
30/05/2013 10:14 | |
Grazie Sal...appena ho un minuto vedo e testo la tua soluzione...
Grazie ancora,
Siete veramente fantastici in questo Forum
Excel 2010 |
| | Post: 8 | Registrato il: 22/05/2013
| Città: SALGAREDA | Età: 62 | Utente Junior | | OFFLINE |
|
30/05/2013 10:19 | |
ninai, 30/05/2013 07:31:
buoni scrutini anche a te
Grazie altrettanto!!!
Excel 2010 |
| | Post: 2 | Registrato il: 23/01/2018
| Città: NAPOLI | Età: 48 | Utente Junior | 2013 | | OFFLINE | |
|
12/03/2018 15:00 | |
Adattamento cercando valore identico Salve a tutti,
ho trovato molto utile questa discussione e sono riuscito ad adattare il codice alle mie esigenze tranne per il fatto che ho valori da cercare che spesso sono molto simili.
Allo stato attuale il codice mi riporta tutti i valori delle celle che sono uguali oppure contengono la stringa che cerco.
Io vorrei vedere solo quelli perfettamente uguali alla stringa che cerco
es.:
Se cerco 22XF33/17, il codice mi restituisce i seguenti valori:
22XF33/17, PPPP 22XF33/178888, FFFF 22XF33/179XCN
Come posso fare a dirgli di cercare quell'esatto valore?
Grazie per l'aiuto
Saluti Spesso la risposta alle nostre domande è dentro di noi, ma è quella sbagliata |
| | Post: 3.670 | Registrato il: 21/06/2013
| Città: NAPOLI | Età: 70 | Utente Master | Excel 365 | | OFFLINE |
|
12/03/2018 15:04 | |
GennyBronz apri una nuova discussione con il tuo file spiegando il tuo problema.
Alfredo |
|
|