Converti dati multilinea in righe - Suggerimenti per Excel

Sommario

lan Z ha inviato il problema di Excel di questa settimana. Il suo dipartimento MIS gli fornisce un file generato da un vecchio rapporto COBOL. Dopo aver aperto il file in Excel, ha 2500 righe di questo:

CustLastName | CustFirstName | CustMiddle | CustAddress | CustCity |CustState | CustZip Useless LINE1 Useless LINE2 CustLastName | CustFirstName | CustMiddle | CustAddress | CustCity |CustState | CustZip Useless LINE1 Useless LINE2

Alan desidera ottenere questo report ASCII in un formato utile: una riga per cliente, con State e Zip aggiunti al resto delle informazioni. Vuole anche zappare le 2 linee inutili. Ovviamente, non vogliamo fare tutto questo manualmente. Ecco un modo per affrontare rapidamente il disordine.

Con le formule

  • Inserisci due colonne vuote a sinistra dei dati.
  • Aggiungi una riga di intestazione sopra i dati.
  • La colonna A è chiamata "Sequenza"
  • La colonna B si chiama "RowType"
  • La colonna C si chiama "Dati"
  • Rendi tutti i titoli in grassetto
  • La colonna A verrà utilizzata per assegnare un numero a ciascun record logico nel report. Poiché questo report ha 4 righe fisiche per ogni record logico, è necessario che ogni set di 4 righe abbia lo stesso numero di record logico. Di solito inserisco i valori per il primo record e poi progetto le formule per il secondo record che possono essere copiate in tutto il report.
  • Nelle celle A2: A5, inserisci 1. Nella cella A6, inserisci = A5 + 1. Nella cella A7, inserisci = A6. Copia da A7 a A8 e A9. Si dispone ora di una serie di formule copiabile per il secondo record logico del report.
  • Seleziona A6: A9 e premi Ctrl C per copiare. Seleziona A10: A2501 e premi Ctrl V per incollare.
  • La colonna B verrà utilizzata per identificare se la riga particolare è il 1 °, 2 °, 3 ° o 4 ° segmento del record logico.
  • Nelle celle B2: B5, immettere 1, 2, 3 e 4. Nella cella B6, immettere = B2. Copia la cella B6 da B7: B2501.

Dopo essere passati ai valori

Ora che hai numeri di sequenza e tipi di riga per tutti i tuoi dati, devi cambiare le formule in valori. Seleziona A2: B2501. Modifica> Copia, Modifica> Incolla speciale> Valori> OK.

Ora che i numeri di sequenza ei tipi di riga sono stati assegnati a tutte le righe, abbiamo quasi finito. Ordinare i dati per Tipo riga come chiave primaria e Sequenza come chiave secondaria. Ciò farà sì che le 625 righe superiori di ogni record fluttuino fino alle celle C2: C626. La seconda riga di ogni record sarà in C626: C1251. Le righe "inutili" inizieranno in C1252 e potranno essere eliminate. Spostare le celle C626: C1251 nella cella D2. Nella cella E2, inserisci la formula =C2&D2. Puoi copiare questa formula da E2 a E626. Usa lo stesso trucco Incolla valore speciale per passare dalle formule ai valori, elimina le colonne AD e hai il tuo risultato.

Da qui, puoi utilizzare la procedura guidata Testo in colonne per elaborare ulteriormente questi dati

È possibile personalizzare facilmente questa procedura per gestire qualsiasi varietà di report ASCII. È necessario capire quante righe fisiche stampate costituiscono un singolo record logico nel report.

Articoli interessanti...