But I suggest to consider if you couldn't use a pivot-table for this - technically it's not a great problem, you would need to create a synthetic dimension with sales and inventory and 9 expressions which have a small if-loop to check the dimension. You are only restricted with the layout which isn't quite so flexible like a textbox.
Another option might be to use different sheets/objects for viewing within qlikview and for exporting and/or printing.
You said very good, but my idea is this, I have been studying the method of Test_David.qvw, through the control of the ID to locate the Excel cell. Now that it has received a value, in order to fill in the order to Excel. Because the rows and columns of the table are fixed, so you can avoid the problem of positioning.