Skip to header Skip to main navigation Salta al contenuto principale Skip to footer

Menu profilo utente

  • Accedi
Home
Informatica Consapevole ed Ecosostenibile. Perchè l'informazione sia un bene per l'umanità.

Navigazione principale

  • Home
  • I nostri corsi
  • Drupal
    • Cos'e' Drupal
    • Documentazione
    • Moduli utili per Drupal
  • Ubuntu
    • Che cos'e' Ubuntu
    • Come fare
    • Link utili su Linux e Ubuntu
  • Come Fare
    • Apache
    • Audio
    • CSS - Fogli di Stile
    • Gimp
    • Libre Office
    • Mozilla Thunderbird
    • MySQL MariaDB
    • Tutorial Microsoft
    • Video
    • WEB, Internet
  • Chi sono

Microsoft Excel - Power Query - Validazione di righe

Briciole di pane

  • Home
  • Tutorial Microsoft
  • Microsoft Excel - Power Query - Validazione di righe

Problema

Abbiamo una tabella con 3 campi e una serie di righe.

tabella di esempio

 Vogliamo aggiungere una quarta colonna che contiene i valori

  • non validato se in una colonna c'è il valore null o la cella vuota ""
  • OK se tutte e tre le colonne sono valide

Soluzione

Creiamo una funzione ValidaRiga in power query

(param1, param2, param3) as text =>
let
   ToText = (val) => if val = null then null else Text.From(val),
   p1 = ToText(param1),
   p2 = ToText(param2),
   p3 = ToText(param3),
   IsNullOrEmpty = (val) => val = null or val = "",
   CountInvalid = List.Count(List.Select({p1, p2, p3}, IsNullOrEmpty)),
   Result = if CountInvalid > 0 then "non validato" else "OK"
in
   Result

 

Soluzione avanzata

Creiamo una funzione ValidaRiga in power query

 

(campi as list, valoriNonValidi as list) as text =>
let
   ToText = (val) => if val = null then null else Text.From(val),
   campiTesto = List.Transform(campi, ToText),
   IsNonValido = (val) => List.Contains(valoriNonValidi, val),
   countNonValidi = List.Count(List.Select(campiTesto, IsNonValido)),
   Result = if countNonValidi > 0 then "non validato" else "OK"
in
   Result

Passaggio di parametri

Passaggio dei campi

Nella query della tua tabella, chiami la funzione così 

= Table.AddColumn(
   TabellaSource,
   "Validazione",
   each ValidaRiga(
       { [param1], [param2], [param3] },
       { null, "", " " }
   )
)

Passaggio della lista dei valori non validi 

I valori non validi sono contenuti nel file 

ListaValoriNonValidi.csv 

Conviene aggiungere un piccolo step di pulizia nella query ListaValoriNonValidi per essere sicuri di avere sia null che "":

 

Passaggio della lista dei valori non validi contenuti nella tabella ListaValoriNonValidi.csv 

Alla query ListaValoriNonValidi aggiungi un ultimo step per estrarre la colonna come lista:

= ListaValoriNonValidi[valore]

 

Passa la lista alla funzione

= Table.AddColumn(
   TabellaSource,
   "Validazione",
   each fnValida(
       { [param1], [param2], [param3] },
       ListaValoriNonValidi[valore]
   )
)

 

pattern.csv (137 byte)
campioni.csv (230 byte)

Costellazioni Familiari Animiche e Reiki con Janhu

Costellazioni Familiari Animiche e Reiki con Janhu

www.janhu.it

Tutorial Microsoft

I Nostri Tutorial Esercizi

Tutorial, Esercizi, e molto altro

Noi è io sono la nazione

Noi è io sono la nazione

The One People’s Public Trust

Serverplan

Contatti

email ecommunicationinfo@ecommunication.it
 
contattacicellulare +39 393 9374116
 
TelegramTelegram
 
insegnante - docenteChi Sono

Youtube

visita il canale

L'importanza della formazione aziendale

 

Disclaimer & Avvertenze

  • Contattaci
  • Cookies
  • Informativa Cookies - Cookie Policy

Copyright © 2026 ECOmmunication - All rights reserved

Creato e mantenuto da Dott. Silvio Crispiatico