Buonasera, ripropongo di nuovo lo stesso post condiviso in data 08/12/2020, a cui purtroppo non sono ancora riuscito a dare una soluzione nonostante l'ottimo suggerimento di Andrea90.
Ho una stringa composta dalla concatenazione di varie dimensioni. Il mio obiettivo è dividere questa stringa e ottenere ogni codice incolonnato sotto la propria dimensione.
La soluzione proposta da Andrea funziona perfettamente se tutte le dimensioni contengono la "D".
Nel mio caso ci sono alcune dimensioni che non contengono la D. Le ho evidenziate in giallo e per darvi un idea di come sono fatte le ho riportante in fogli separati.
Allego il tutto in un file di esempio.
Grazie per l'aiuto.
Stringa Concatenata
Moderatore: Utilizzo_prof_Excel
-
- Messaggi: 30 | Topic creati
- Iscritto il: mar 11 ago 2020, 14:21
- Ringraziato: 1 volta
Stringa Concatenata
- Allegati
-
- ESEMPIO.xlsx
- (16.07 KiB) Scaricato 6 volte
Ultima modifica di domemarti93 il mar 23 mar 2021, 17:34, modificato 1 volta in totale.
-
- Messaggi: 2193 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 666 volte
- Contatta:
Stringa Concatenata
Ciao domemarti93,
Come ti ho scritto l'altra volta per fare lavori di questo genere è necessario comprendere la logica che sta dietro a questa operazione che vuoi fare.
Vedo ad esempio che metti delle stringhe con delimitatori diversi:
29D10--13D03-004207--05D14-21D15-02D16
alcune volte è "--" altre "-"
È uno solo o possono essere entrambi?
Se hai delle codifiche "ad hoc" specifiche per una data suddivisione (vedi la lista di codici che hai inserito in uno dei fogli del file), e se questi codici possono appartenere ad una sola di queste categorie, es° il codice 031 appartiene sempre e solo alla suddivisione D02 allora puoi riciclare la soluzione dell'altra volta dove quando esegue l'operazione di Text.AfterDelimiter([Stringa], "d") ci saranno delle celle che rimarranno vuote.
A quel punto puoi andare, al termine di tutti i passaggi, ad effettuare un merge con una tabella di transcodifica che dovrai prepararti (tabella che contiene due colonne: CODICE e SUDDIVISIONE) . Così facendo, quelle che non ha trovato perché non aveva "D" lo troverà tramite il merge.
A presto,
Andrea
Come ti ho scritto l'altra volta per fare lavori di questo genere è necessario comprendere la logica che sta dietro a questa operazione che vuoi fare.
Vedo ad esempio che metti delle stringhe con delimitatori diversi:
29D10--13D03-004207--05D14-21D15-02D16
alcune volte è "--" altre "-"
È uno solo o possono essere entrambi?
Se hai delle codifiche "ad hoc" specifiche per una data suddivisione (vedi la lista di codici che hai inserito in uno dei fogli del file), e se questi codici possono appartenere ad una sola di queste categorie, es° il codice 031 appartiene sempre e solo alla suddivisione D02 allora puoi riciclare la soluzione dell'altra volta dove quando esegue l'operazione di Text.AfterDelimiter([Stringa], "d") ci saranno delle celle che rimarranno vuote.
A quel punto puoi andare, al termine di tutti i passaggi, ad effettuare un merge con una tabella di transcodifica che dovrai prepararti (tabella che contiene due colonne: CODICE e SUDDIVISIONE) . Così facendo, quelle che non ha trovato perché non aveva "D" lo troverà tramite il merge.
A presto,
Andrea