Thank you all for your replies. Some answers for you.
1. The CustomerID is in the StockCodes table because each customer has its own set of items and can only order its own set of items.
2. Supplier will be linked to stock codes in time but I'm working on the basics at the moment.
3. There is a DeliveryAddress table which is used to populate the fields but they also want the option to set one-off delivery address details if needed. I'll try and get them to change their minds about that!
4. With regards to scrolling, I can scroll up and see the previous rows, but I wouldn't have expected to have to do that. I was expecting adding a new row to just appear under the previous row.
5. I'm using Access 2019.
I will try the things you have suggested and report back on how it goes.
Just so you know (as you may have rolled your eyes at my username having the word guru in it!!), I am an IT consultant with a large knowledge of many computer aspects and programming and my business name is The Computer Guru but I hadn't ever done anything in Access until just before Xmas. I was asked to do this project as a favour and thought that it would be an interesting project. Silly me thought that I could program anything!! Boy have I learned the hard way!! I have been learning what I can and programming what I have using YouTube videos and trial and error to get to the point that things work. That is probably the reason things aren't as you would expect it.
My next challenge is going to be programming it so that when an order is invoiced, a carry forward order is created with the unfulfilled parts of the order i.e. order 1 has item 1 with orderquantity of 100, quantityreceived of 50, so on invoicing, a second order 1a is created with item1 with orderquantity of 50.