1 December 2025

by Lester Caine
1 December 2025
Posted to Lester's Rants

End of the month and time to do my monthly banking checks. I've banked with HSBC since the time it was still Midlands, but never been happy with the really service. I did try a different bank for a while, but their service was even worse, so switched back to the 'best of a bad job'. Current annoyance is the problems of downloading bank statements. The business arm has no problem simply providing .csv copies which I simply upload to the yearly spreadsheet, but the personal accounts have no such option. I can obviously download the pdf's but transferring those to spreadsheet is no easy activity. I've tried the various OCR programs which are designed for 'grids' of data, but none of them play well with the HSBC pdf. So I've resorted to manually transferring using cut and paste from ocular and tidying things in LibreOffice Calc. The main problem is the 'extra' rows of information for some transactions, much of which has little value being a duplicate of the first field, and complicated when international transactions add a third field.

My spreadsheet consists of 7 columns, with date(A), type(B), source(C), extra(D), out(E), in(F) and balance(G). Each page of the statement is handled individually to keep things packaged, and the start is to highlight the type and info columns on the statement. This is cut and pasted as raw text into the next C box on the yearly spreadsheet. This results in a list of transaction types followed by the detail, so next step is to shuffle the type list over to column B. Simply highlight, and then move left one column. Next the 'BALANCE BROUGHT FORWARD' can be deleted And the rest of the list needs each secondary field moving right and up in line with the first field value. Click and hold the value, drag right to the D columnto highlight, release and click on the highlight which can be dragged right and up to the line above. The third field needs a little hand editing but don't happen very often. All of mine are paypal payments that resulted in a currency change. Most are easy to spot, and the INT'L ones have the third field copied into the second field value. This leaves a lot of blank lines which can be selected with and then deleted on mass. The resulting tidy list can then be moved up to align with the type list If there is a mismatch between the two lists then it may be a missed second value, or first value moved over that should not have been. Just which values go where becomes second nature in time.

So we now have the list of transactions, one per line, and the dates and amounts can now be copied over. The date column will result in a shorter list as only the first transaction on a date is tagged, and paste is helped by flagging the list as 'date' as you paste. Then the dates can be shuffled down the A column to the right lines. The next column is the out amounts, and this has a similar problem with the lines that have in amounts instead being missed off. Another niggle is that the amounts may or may not be displayed with the £ symbol. A little academic, but for some reason some values come in as a raw number, while others get the text tag ' added which can cause a problem later. I normally select the column and reapply the '£ 123.12' currency format which then displays the ' on the problem lines and that can be deleted using replace all function for speed. Once tidy, the list can be shuffled to restore the gaps for in values and given there are normally only a couple I simply type them in, along with the balance figures, although if there are more than a couple cut and paste may be faster.

Repeat for each page of the statement and it does not take too ling to complete. It WOULD however be nice I one could simply download a ready sorted .csv? Given the mess of secondary fields I think I can see why it's not done, but even that could be addressed in the build process.