Rispondere alle domande in ordine (Microsoft Excel)
Kim ha creato un modulo in Excel che si basa sulla convalida dei dati per presentare le risposte utilizzando elenchi a discesa. Ci sono una serie di domande nel modulo. Si chiede se ci sia un modo per forzare la risposta alle domande in ordine. Vorrebbe, ad esempio, che l’utente rispondesse alla domanda 1 prima di passare alla domanda 2, ecc.
L’esecuzione di questo tipo di attività potrebbe richiedere l’utilizzo di una macro o la creazione di un modulo utente, ma non è necessario seguire questa strada. (L’utilizzo di macro e moduli utente è molto potente, ma è anche più complesso di quanto alcune persone potrebbero desiderare.) È possibile ottenere un livello di “ordine” semplicemente regolando le specifiche utilizzate negli elenchi a discesa di convalida dei dati.
Ad esempio, ti consigliamo di impostare alcuni intervalli denominati nella cartella di lavoro. Scegli una cella e chiamala “Predefinito”. In quella cella inserisci un messaggio predefinito, come il testo “Rispondi alle domande in ordine”. In un altro intervallo denominato (forse denominato “Q1Answers”) includeresti l’elenco di risposte accettabili per la tua prima domanda. Infine, dovresti assegnare un nome alla cella che conterrà la risposta dell’utente alla domanda, ad esempio “Q1Response”. È possibile creare intervalli denominati simili per le altre risposte e risposte accettabili alle altre domande (Q2Answers, Q3Answers, Q2Response, ecc.).
Quindi, nel controllo di convalida per ciascuna delle tue domande, puoi utilizzare una formula per specificare quale Excel dovrebbe utilizzare come possibili risposte. In questo scenario le impostazioni di convalida per la domanda 1 sono semplici; basta impostare l’impostazione Consenti su Elenco e specificare (nella casella Origine) che si desidera utilizzare l’intervallo Q1Answers utilizzato. Per le domande successive, tuttavia, dovresti usare una formula nella casella Origine. Ad esempio, per la domanda 2 dovresti usare la seguente formula nella casella Origine:
=IF(OR(Q1Response="",Q1Response=Default),Default,Q2Answers)
Per ogni domanda successiva cambierai la designazione Q1 in qualsiasi cosa sia appropriata per la domanda precedente e cambierai la designazione Q2 in qualsiasi cosa sia appropriata per la domanda corrente. La formula funziona perché specifica che se la risposta alla domanda 1 è vuota o è uguale al valore predefinito (“Rispondi alle domande in ordine”), la risposta predefinita viene visualizzata come scelta per la domanda 2. Se nessuna di queste condizioni esistono, quindi le risposte per la domanda 2 vengono visualizzate e selezionabili. Se le persone cercano di rispondere alle domande quando una domanda precedente non ha avuto risposta, l’unica opzione a discesa visibile sarà il valore predefinito (“Rispondi alle domande in ordine”).
Puoi portare questo approccio un ulteriore passo avanti, se lo desideri, aggiungendo la formattazione condizionale al mix. Se usi lo stesso tipo di test (per vedere se la domanda precedente ha avuto risposta), puoi modificare la formattazione delle celle contenenti le tue domande. Ad esempio, se la domanda precedente non ha ricevuto risposta, formatta semplicemente le domande successive in modo che appaiano di tipo bianco. Questo li fa scomparire sullo sfondo bianco della cella. Quindi, man mano che viene data risposta a ciascuna domanda, la domanda successiva sembrerà apparire, in ordine.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (8386) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per la vecchia interfaccia del menu di Excel qui: