Risolto modifica testo in colonna power query

maria60

Utente abituale
5 Novembre 2019
202
18
excel 2016
1
Buonasera ...
nel foglio Rad. Solare in colonna "D" tramite il box posso scegliere una stazione meteo , essa e associata all'origine nella query :
let

Filepath = Excel.CurrentWorkbook(){[Name="Filepath"]}[Content]{0}[Column1],
Origine = Json.Document(Web.Contents(Filepath)),
quindi nel Name="Filepath" avremo

















PORTICI http://campanialive.ddns.net:81/stazionimeteo/PORTICI/data.php
OSSERVATORIO http://campanialive.ddns.net:81/stazionimeteo/smarcunina/data.php
FEDERICO 2 http://campanialive.ddns.net:81/stazionimeteo/naidraulica/data.php
POMPEI http://campanialive.ddns.net:81/stazionimeteo/POMPEI/data.php
e possibile far si' che nella power query nella colonna 5 (1.2 tempint) in essa c'e' null , invece del null abbia il nome della stazione ... PORTICI o POMPEI o OSSERVATORIO o FEDERICO2 ...
GRAZIE
 

Rubik72

Excel/VBA Expert
Supermoderatore
Expert
12 Dicembre 2015
6.110
245
47
Cosenza
Excel 2016
237
Da come vedo l'esempio puoi usare la funzione SOSTITUISCI ed eliminare la parte non interessata:
Codice:
    #"Sostituito valore" = Table.ReplaceValue(#"Modificato tipo","http://campanialive.ddns.net:81/stazionimeteo/","",Replacer.ReplaceText,{"Nome"}),
    #"Sostituito valore1" = Table.ReplaceValue(#"Sostituito valore","/data.php","",Replacer.ReplaceText,{"Nome"})
però sarebbe meglio se allegassi un file di esempio
 

maria60

Utente abituale
5 Novembre 2019
202
18
excel 2016
1
Grazie Rubik72, buongiorno , posso permettermi di chiederti la gentilezza di effettuarmi la sostituzione nella query nel file ...non vorrei fare errori ....
grazie
 

Allegati

Rubik72

Excel/VBA Expert
Supermoderatore
Expert
12 Dicembre 2015
6.110
245
47
Cosenza
Excel 2016
237
Nel file allegato, non c'è la query descritta al post#1 (c'è un'altra PowerQuery che fa tutt'altro) :dubbioso:
Descrivi esattamente l'origine dei dati.
 

maria60

Utente abituale
5 Novembre 2019
202
18
excel 2016
1
Ciao Rubik72 , la query completa :
Visual Basic:
let

Filepath = Excel.CurrentWorkbook(){[Name="Filepath"]}[Content]{0}[Column1],
Origine = Json.Document(Web.Contents(Filepath)),
   #"Conversione in tabella" = Table.FromList(Origine, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Tabella Column1 espansa1" = Table.ExpandRecordColumn(#"Conversione in tabella", "Column1", {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}, {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}),
    #"Sostituito valore" = Table.ReplaceValue(#"Tabella Column1 espansa1",".",",",Replacer.ReplaceText,{"tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "ktssp", "ktsmax", "raindayconv", "pio24h", "uvind", "uvindmax"}),
    #"Modificato tipo" = Table.TransformColumnTypes(#"Sostituito valore",{{"tempint", type number}, {"temp", type number}, {"windch", type number}, {"heatind", type number}, {"dewpoint", type number}, {"pressure", type number}, {"ktssp", type number}, {"ktsmax", type number}, {"raindayconv", type number}, {"pio24h", type number}, {"uvind", type number}, {"uvindmax", type number}, {"ora", type time}, {"datas", type date}, {"winddeg", Int64.Type}, {"winddegmax", Int64.Type}, {"relhum", Int64.Type}, {"radsolmax", Int64.Type}, {"radsol", Int64.Type}}),
    #"Aggiunta colonna personalizzata" = Table.AddColumn(#"Modificato tipo", "data+ora", each [datas]&[ora]),
    #"Riordinate colonne" = Table.ReorderColumns(#"Aggiunta colonna personalizzata",{"ind", "datas", "ora", "data+ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"})
in
    #"Riordinate colonne"
scusa se dico delle cose inesatte ....e perdonami per i termini non appropriati

nel foglio Rad. Solare in colonna "D" tramite il box in "D1" posso scegliere una stazione meteo e secondo quelle che seleziono ho i valori della query nel foglio Dati_Web ,
desideravo nella colonna 5 (1.2 tempint) in essa c'e' null , invece del null abbia il nome della stazione ... PORTICI o POMPEI o OSSERVATORIO o FEDERICO2 ... che selezione tramite il box in "D1"nel foglio Rad. Solare in colonna "D", cioe' avere una verifica visiva nel foglio Dati_Web della stazione che la query aveva caricato , avevo scelto la colonna 5 (1.2 tempint) della query inquanto non c'erano valori.
Ancora scusa se non sono chiara nell'esposizione.
Grazie
 

Rubik72

Excel/VBA Expert
Supermoderatore
Expert
12 Dicembre 2015
6.110
245
47
Cosenza
Excel 2016
237
Se ho capito bene aggiungi questi comandi in fondo alla PowerQuery:
Visual Basic:
    #"Aggiunta colonna personalizzata1" = Table.AddColumn(#"Riordinate colonne", "Personalizzato", each Filepath),
    #"Sostituito valore1" = Table.ReplaceValue(#"Aggiunta colonna personalizzata1","http://campanialive.ddns.net:81/stazionimeteo/","",Replacer.ReplaceText,{"Personalizzato"}),
    #"Sostituito valore2" = Table.ReplaceValue(#"Sostituito valore1","/data.php","",Replacer.ReplaceText,{"Personalizzato"})
in
    #"Sostituito valore2"
adesso avrai un nuovo campo che potrai rinominare e spostare di posto a tuo piacimento
 

maria60

Utente abituale
5 Novembre 2019
202
18
excel 2016
1
Ciao Rubik72. ....così ?
Visual Basic:
let

Filepath = Excel.CurrentWorkbook(){[Name="Filepath"]}[Content]{0}[Column1],
Origine = Json.Document(Web.Contents(Filepath)),
   #"Conversione in tabella" = Table.FromList(Origine, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Tabella Column1 espansa1" = Table.ExpandRecordColumn(#"Conversione in tabella", "Column1", {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}, {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}),
    #"Sostituito valore" = Table.ReplaceValue(#"Tabella Column1 espansa1",".",",",Replacer.ReplaceText,{"tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "ktssp", "ktsmax", "raindayconv", "pio24h", "uvind", "uvindmax"}),
    #"Modificato tipo" = Table.TransformColumnTypes(#"Sostituito valore",{{"tempint", type number}, {"temp", type number}, {"windch", type number}, {"heatind", type number}, {"dewpoint", type number}, {"pressure", type number}, {"ktssp", type number}, {"ktsmax", type number}, {"raindayconv", type number}, {"pio24h", type number}, {"uvind", type number}, {"uvindmax", type number}, {"ora", type time}, {"datas", type date}, {"winddeg", Int64.Type}, {"winddegmax", Int64.Type}, {"relhum", Int64.Type}, {"radsolmax", Int64.Type}, {"radsol", Int64.Type}}),
    #"Aggiunta colonna personalizzata" = Table.AddColumn(#"Modificato tipo", "data+ora", each [datas]&[ora]),
    #"Riordinate colonne" = Table.ReorderColumns(#"Aggiunta colonna personalizzata",{"ind", "datas", "ora", "data+ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"})


    #"Aggiunta colonna personalizzata1" = Table.AddColumn(#"Riordinate colonne", "Personalizzato", each Filepath),
    #"Sostituito valore1" = Table.ReplaceValue(#"Aggiunta colonna personalizzata1","http://campanialive.ddns.net:81/stazionimeteo/","",Replacer.ReplaceText,{"Personalizzato"}),
    #"Sostituito valore2" = Table.ReplaceValue(#"Sostituito valore1","/data.php","",Replacer.ReplaceText,{"Personalizzato"})
in
    #"Sostituito valore2"
 

maria60

Utente abituale
5 Novembre 2019
202
18
excel 2016
1
Ciao Rubik72 .... sicuramente qualcosina non ho fatto bene ...
Visual Basic:
let

Filepath = Excel.CurrentWorkbook(){[Name="Filepath"]}[Content]{0}[Column1],
Origine = Json.Document(Web.Contents(Filepath)),
   #"Conversione in tabella" = Table.FromList(Origine, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Tabella Column1 espansa1" = Table.ExpandRecordColumn(#"Conversione in tabella", "Column1", {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}, {"ind", "datas", "ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"}),
    #"Sostituito valore" = Table.ReplaceValue(#"Tabella Column1 espansa1",".",",",Replacer.ReplaceText,{"tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "ktssp", "ktsmax", "raindayconv", "pio24h", "uvind", "uvindmax"}),
    #"Modificato tipo" = Table.TransformColumnTypes(#"Sostituito valore",{{"tempint", type number}, {"temp", type number}, {"windch", type number}, {"heatind", type number}, {"dewpoint", type number}, {"pressure", type number}, {"ktssp", type number}, {"ktsmax", type number}, {"raindayconv", type number}, {"pio24h", type number}, {"uvind", type number}, {"uvindmax", type number}, {"ora", type time}, {"datas", type date}, {"winddeg", Int64.Type}, {"winddegmax", Int64.Type}, {"relhum", Int64.Type}, {"radsolmax", Int64.Type}, {"radsol", Int64.Type}}),
    #"Aggiunta colonna personalizzata" = Table.AddColumn(#"Modificato tipo", "data+ora", each [datas]&[ora]),
    #"Riordinate colonne" = Table.ReorderColumns(#"Aggiunta colonna personalizzata",{"ind", "datas", "ora", "data+ora", "tempint", "temp", "windch", "heatind", "dewpoint", "pressure", "winddeg", "winddegmax", "ktssp", "ktsmax", "relhum", "raindayconv", "pio24h", "radsol", "radsolmax", "uvind", "uvindmax"})

    #"Aggiunta colonna personalizzata1" = Table.AddColumn(#"Riordinate colonne", "Personalizzato", each Filepath),
    #"Sostituito valore1" = Table.ReplaceValue(#"Aggiunta colonna personalizzata1","http://campanialive.ddns.net:81/stazionimeteo/","",Replacer.ReplaceText,{"Personalizzato"}),
    #"Sostituito valore2" = Table.ReplaceValue(#"Sostituito valore1","/data.php","",Replacer.ReplaceText,{"Personalizzato"})
in
    #"Sostituito valore2"
mi esce errore
ho fatto una prova anche inserendo nella riga 11 #"Riordinate colonne"
idem stesso errore
grazie
 
Ultima modifica:

Sostieni ForumExcel

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