Pagina 1 di 2

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:08
da FabSBR
ho una tabella con una colonna dove le varie righe sono composte in questa maniera:

nome articolo (quantità) nome articolo (quantità)

posso estrarre da questa colonna due colonne

nome articolo
quantità

ho provato a dividere le colonne tramite delimitatore ma non riesco, pensavo a qualche funzione dax sulle stringhe ma non ho trovato nulla che fa al caso mio

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:09
da Andrea90
FabSBR ha scritto: lun 18 mar 2024, 16:08 ho provato a dividere le colonne tramite delimitatore ma non riesco
Molto generica come cosa.. perché non riesci? Che tipologia di dato contengono quelle colonne? Che tipo di delimitatore utilizzi? Che output vuoi ottenere?

Allega un file demo con qualche riga di dato come esempio ed il desiderato inserito a mano.

Andrea

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:18
da FabSBR
hai ragione!
ho fatto un piccolo sample.
ragionandoci dove le righe, causa più articoli si dividono in più righe andrebbero popolate tutte con le stesse informazioni della riga originale..

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:31
da Andrea90
@FabSBR,

Con dei codici scritti così: "BASE D230(5) D230 4GBW(5) " ci si fa ben poco, perché come fai a dire al sistema dove deve dividere la colonna.

Di norma si cercano dei pattern comuni, ad esempio spazi (ma in questo caso non puoi usarlo), lunghezze specifiche, caratteri speciali, delimitatori (es° ogni codice anche se scritto sulla stessa riga è separato da "-"), oppure i codici sono tutti numerici e tu cerchi i punti in cui le stringhe numeriche si fermano, ecc..

Ma senza una logica dovrai sempre spezzarti le colonne manualmente, perché solo tu sai come realmente si chiamano i prodotti.

Andrea

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:35
da FabSBR
Andrea90 ha scritto: lun 18 mar 2024, 16:31 @FabSBR,

Con dei codici scritti così: "BASE D230(5) D230 4GBW(5) " ci si fa ben poco, perché come fai a dire al sistema dove deve dividere la colonna.

Di norma si cercano dei pattern comuni, ad esempio spazi (ma in questo caso non puoi usarlo), lunghezze specifiche, caratteri speciali, delimitatori (es° ogni codice anche se scritto sulla stessa riga è separato da "-"), oppure i codici sono tutti numerici e tu cerchi i punti in cui le stringhe numeriche si fermano, ecc..

Ma senza una logica dovrai sempre spezzarti le colonne manualmente, perché solo tu sai come realmente si chiamano i prodotti.

Andrea
immaginavo, da passato informatico, speravo ci fossero in dax dei cicli iterativi o qualche funzione che lavorasse riga per riga :lol: :lol:

vedevo l'analisi del testo da parte della IA abbinata in powerbi, qualche esperienza in merito

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:42
da Andrea90
FabSBR ha scritto: lun 18 mar 2024, 16:35 qualche funzione che lavorasse riga per riga
Certo, ma ripeto che logica applichi?

Perché anche se ti analizzo riga per riga, e in ogni riga ci sono scritti più codici e ognuno dei quali non segue una specifica logica, come fai a dire dove dividere la colonna?
FabSBR ha scritto: lun 18 mar 2024, 16:35 vedevo l'analisi del testo da parte della IA abbinata in powerbi, qualche esperienza in merito
L'IA non inventa nulla se non gli passi un tracciato. Non è che se scrivi in una stringa una serie di prodotti come quelli che hai allegato lei riconosce dove e quando applicare la divisione, perché per lei, come per noi, quei nomi non hanno alcun senso, sono solo combinazioni alfanumeriche (non standard).

Al massimo se hai una anagrafica con tutti i codici scritti per bene ognuno in una riga distinta si potrebbe provare a creare qualcosa in Python (perché fare queste cose in Power Query oltre che contorto sarebbe anche poco performante).

Andrea

Dividere colonna in due

Inviato: lun 18 mar 2024, 16:50
da FabSBR
ok, in realtà i modelli sono circoscritti e sempre in quella maniera, venendo da una tabella specifica, quindi una certa logica è presente.
Nell'esempio avremmo
Prodotto 1(n) Prodotto 2(n)

i due prodotti sono intervallati da un doppio spazio e le quantità sono tra parentesi

Dividere colonna in due

Inviato: lun 18 mar 2024, 17:00
da Andrea90
@FabSBR,

Ah allora penso sia semplice, basta seguire questi step (tutti tramite interfaccia):

1) Utilizza il comando "Dividi colonna" sul campo [Prodotti e quantità] ed utilizza come delimitatore il carattere ")"
2) Di quello che ottieni seleziona la colonna [Società] ed esegui l'operazione di unpivot tramite il menu a tendina scegli l'opzione "Unpivot altre colonne"

Otterrai qualcosa di simile:
Immagine

3) Prendi la colonna [Value] (la tua si chiamerà "Valore" perché io utilizzo l'interfaccia in inglese) ed esegui l'operazione di Taglio (la trovi nel tab trasforma)

4) Rimuovi le righe con i valori vuoti nella colonna Value

5) Esegui di nuovo la divisione di colonna utilizzando come delimitatore "(".

Andrea

Dividere colonna in due

Inviato: lun 18 mar 2024, 17:43
da FabSBR
prima di tutto grazie.
In effetti funziona alla grande, unica cosa, al punto 4 faccio elimina righe vuote (selezionando la colonna valore e prendo il comando da Home->riduci righe->elimina righe vuote) ma non si eliminano...sicuramente sbaglio qualcosa..

grazie ancora

Dividere colonna in due

Inviato: lun 18 mar 2024, 17:56
da Andrea90
@FabSBR

Per eliminare le righe vuote basta che fai clic sulla casella affianco al nome della colonna e poi togli la spunta dalla voce che nei filtri contiene il simbolo vuoto.

Andrea