One approach:
First, I would create a table on a separate sheet with the 20 item names in
the first column, 6 digit number in the second column, and unit price in the
third column.
Then, I would insert a combobox in cell A1. Use the combobox from the
control toolbox toolbar, not the forms toolbar (click View/Toolbars/Control
Toolbox to bring up the toolbar).
After you've drawn the combobox on the screen, click the properties button
on the control toolbox toolbar (should be second from left). In the section
called ListFillRange enter the reference to the 20 items from your table you
want to appear as choices in the combobox.
For example, if the table is on Sheet2 and your 20 item names are in cells
A1:A20
Sheet2!$A$1:$A$20 would go in the ListFillRange
Now, double click on the combobox, you should now be in the visual basic
editor. Enter this code (the private sub and end sub lines should already be
on your screen - if this is not the first combobox you've created, you will
need to change the reference from Combobox1 to suit the name of your combobox)
Private Sub ComboBox1_Change()
ThisWorkbook.Names.Add Name:="Selection", RefersTo:=ComboBox1.Value
End Sub
In B2, you can use the VLookup function (you will need to change the second
argument to refer to wherever you put your table - or name the table and just
use the name as the second argument).
=VLOOKUP(Selection,Sheet2!$A$1:$C$20,2,FALSE)
Cell H1 would be very similar, but change it to return the third column from
your table.
=VLOOKUP(Selection,Sheet2!$A$1:$C$20,3,FALSE)
Cell I1 would be
=H1*G1