Import A TXT File Where The Separator Is Missing In A Column To Excel

Import A TXT File Where The Separator Is Missing In A Column To Excel


Problem description & analysis:

We have a comma-separated txt file that has a total of 10 columns. As certain values of the 3rd column do not have separators, that column is missing and the corresponding rows only have 9 columns, as shown in the last rows:


We need to import the txt file to an Excel file. If the 3rd column is missing, use space to fill it and then sort rows by the 1st column:

A   B   C   D   E   F   G   H   I   J
3   01-0104-0133    MAYO    RONIE #2    202403  2024-03-21 22:51:43.000 1449.49 0   0   8
4   01-0120-0137    THE CORNERSTONE BIBLE BAPTIST       202403  2024-03-21 20:36:25.000 225.07  0   0   8
5   03-0302-0481    M. LHULLIER PAWNSHOP        202403  2024-03-21 13:22:17.000 4236.66 0   0   8
6   04-0408-0500    DE LA CENA  JOSE JR.    202403  2024-03-21 21:18:04.000 3125.8  0   0   8
7   14-1403-0361    PALAWAN PAWNSHOP        202403  2024-03-21 08:59:51.000 4601.33 0   0   8
8   15-1522-0095    LUCERNA JAIME SR.   202403  2024-03-21 08:21:23.000 2195.88 0   0   8
9   17-1741-0521    SEVERINO    JOSE JR.    202403  2024-03-21 21:10:48.000 1694.19 0   0   8
10  17-1744-0310    FUENTES FERNANDO SR.    202403  2024-03-21 15:00:49.000 1828.77 0   0   8
11  17-1782-0203    DANIELES    ESTELA # 3  202403  2024-03-21 22:04:16.000 2379.4  0   0   8
12  17-1782-0297    DANIELES    ESTELA # 2  202403  2024-03-21 22:33:34.000 886.61  0   0   8
Enter fullscreen mode

Exit fullscreen mode

[For a clearer result table, please visit our Reddit community: https://www.reddit.com/r/esProc_Desktop/comments/1dphpvz/import_a_txt_file_where_the_separator_is_missing/]

Solution:

Use SPL XLL to enter the following formula:

=spl("=file(?).import@cw().(if(~.len()==9,~.insert(3,null),~)).sort(~(1))","d:/data.txt")
Enter fullscreen mode

Exit fullscreen mode

As shown in the picture below:

result table with code entered
Explanation:

import()function reads the text file; the @c option enables using commas as the separator and the @w option reads data as a sequence of sequences. ~ represents the current row. insert() function inserts a member at a specified position.



Source link
lol

By stp2y

Leave a Reply

Your email address will not be published. Required fields are marked *

No widgets found. Go to Widget page and add the widget in Offcanvas Sidebar Widget Area.