Condividi:        

Confronta valori e scrivi quello corretto

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

Confronta valori e scrivi quello corretto

Postdi BG66 » 04/02/23 07:28

Ciao a tutti.
Vorrei:
a) Dopo aver selezionato in A3 il modulo formativo scelto.
b) Andare a confrontare le risposte del discente ( riga 4 da colonna L a U) con quelle corrette presenti dalla colonna 5 a scendere.
c) Se ci sono risposte errate vorrei riportare la risposta corretta nella colonna X in corrispondenza del numero della risposta.

La spiegazione è folle :oops: quindi aggiungo esempio.
Nel file allegato voglio confrontare le risposte date all' UD_SP01_a (cella A3)
Dal confronto si evince che il discente ha sbagliato la risposta nr. 5:
risposta data: D (cella P4) - Risposta corretta: A (cella P5)
quindi la lettera A viene riportata nella cella di destinazione (X10)
chiaramente se ci fosse un altro errore esempio risposta 9 la risposta corretta andrebbe in X14.

Spero di essere stato chiaro e ringrazio per l'aiuto sperato

Gene

https://www.dropbox.com/scl/fi/55sunyym4asodt6hwjkxq/risposte-corrette_forum.xlsx?dl=0&rlkey=taj4jepuaq8ji7ukqhim7qiuw
BG66
Excel2010
Avatar utente
BG66
Utente Senior
 
Post: 323
Iscritto il: 20/08/16 07:44

Sponsor
 

Re: Confronta valori e scrivi quello corretto

Postdi Marius44 » 04/02/23 08:43

Ciao
Se ho interpretato bene la tua richiesta, io cambierei approccio.
Ho immaginato che le risposte esatte siano quelle in riga 4 del tuo foglio.
Ho inserito un altro foglio e questa macro
Codice: Seleziona tutto
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rg As Long, i As Long, n As Integer
Range("L5:V5").ClearContents
Range("L5:V5").Interior.Color = xlNone
n = 10
If Not Intersect(Target, Range("A5")) Is Nothing Then
  If Target = "" Then Exit Sub
  rg = Application.WorksheetFunction.Match(Target, Range("A7:A" & Cells(Rows.Count, 1).End(xlUp).Row)) + 6
  Application.EnableEvents = False
  For i = 12 To 21
    Cells(5, i) = Cells(rg, i).Value
    If Cells(5, i) <> Cells(3, i) Then Cells(5, i).Interior.Color = vbRed: n = n - 1
    Cells(5, 22) = n
  Next i
  Application.EnableEvents = True
End If
End Sub

Ad ogni selezione ti riporta le risposte dello "scolaro" ed anche il punteggio
Questo il link https://www.dropbox.com/s/0q9v2ha9939dp2g/risposte%20corrette_forum_VBA.xlsm?dl=0
Fai sapere. Ciao,
Mario

PS - Spiace notare che non c'era neanche un solo TUO tentativo. Ti stai abituando troppo alla "pappa pronta"
Marius44
Utente Senior
 
Post: 658
Iscritto il: 07/09/15 22:00

Re: Confronta valori e scrivi quello corretto

Postdi Anthony47 » 04/02/23 10:32

Mi e' venuto mal di testa solo per capire come leggere il contenuto del file...
La mi ipotesi e' stata:
-le risposte esatte alle varie unita' didattiche (UD) elencate in A5:A11 sono indicate nelle colonne L:U
-le risposte date da ogni "discente" all' UD selezionata in A3 vengono, non so come (spero non "a mano"), riportate nell'area L4:U4

A questo punto si vogliono evidenziare le risposte erratte

Il mio svolgimento:
1) riportiamo per comodita' il L3:U3 le risposte esatte alla scelta fatta in A3:
-in L3:
Codice: Seleziona tutto
=CERCA.VERT($A$3;$A$5:$U$11;RIF.COLONNA();0)
Copiare poi verso destra

2) per comodita' formattiamo condizionalmente l'area Risposte giuste /Risposte date per avere gia' l'evidenza degli errori:
-selezionare L3:U4, applicare la formattazione condizionale con questa formula
Codice: Seleziona tutto
=(L$3<>L$4)
Scegliere lo sfondo preferito per indicare l'errore (io ho usato un arancione)

3) riportiamo come da richiesta gli errori nella tabella in W:X
-in X6
Codice: Seleziona tutto
=SE(SCARTO($K$3;0;W6)<>SCARTO($K$4;0;W6);SCARTO($K$3;0;W6);"")
Copiare poi verso il basso

Il risultato sara' come nell'immagine:
Immagine

Buona giornata
Avatar utente
Anthony47
Moderatore
 
Post: 19432
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Confronta valori e scrivi quello corretto

Postdi BG66 » 04/02/23 15:05

[RISOLTO]
Ciao a tutti.

Marius44 ha scritto:PS - Spiace notare che non c'era neanche un solo TUO tentativo. Ti stai abituando troppo alla "pappa pronta"

In realtà il file master è molto diverso quindi ho escluso la possibiltà VBA perchè mi complicava la vita e la tua soluzione ne è stata la conferma!!
Mi conosci troppo bene per non immaginare che erano almeno 2 ore che facevo prove con formule...senza cavare un ragno dal buco :cry:
Ovvio che dopo il post di Anthony mi sono dato del fesso. In pratica potevo arrivarci ma mi ero loopato sul fatto che il controllo doveva avvenire scorrendo le righe delle risposte corrette!!
Anthony ha scritto:Mi e' venuto mal di testa solo per capire come leggere il contenuto del file...

Anche con il mal di testa non sbagli un colpo :)

https://www.dropbox.com/scl/fi/rzzq4p2jyoa1dg6mih62n/risposte-corrette_forum-by-Anthony.xlsx?dl=0&rlkey=pyr05eamoqxenvrirul0jikk5

Grazie come al solito ad entrambi.
Ora devo SOLO riuscire a utilizzare tutto correttamente!!
Gene
BG66
Excel2010
Avatar utente
BG66
Utente Senior
 
Post: 323
Iscritto il: 20/08/16 07:44

Re: Confronta valori e scrivi quello corretto

Postdi Marius44 » 04/02/23 16:11

Ciao
Infatti immaginavo qualcosa del genere. Come sai le formule mi danno ... l'orticaria. Preferisco sempre VBA.
Ovviamente anche col mio suggerimento si può creare la "tabellina" molto cara a Anthony che ci spiazza sempre con le sue risposte puntuali, semplici, professionali, ecc. ecc.

Ciao ad entrambi,
Mario
Marius44
Utente Senior
 
Post: 658
Iscritto il: 07/09/15 22:00


Torna a Applicazioni Office Windows


Topic correlati a "Confronta valori e scrivi quello corretto":


Chi c’è in linea

Visitano il forum: Nessuno e 23 ospiti