I wish I had an A330 to play with! A neat little application.
Suggestions
You should load the table automatically on starting the app. This would avoid the exceptions caused by pressing a numeric key before the table is loaded.
You have a neat way of identifying a numeric button but the code is unnecessarily repeated for each button. You could abstract this to a sub as follows. Also I am surpised that B4PPC lets you get away with the syntax "table1.cell(c,r)sender.text", grammatically there should be a string concatenation operator "&" in there.
Sub ButtonX_click
update_cell(sender.text)
End Sub
sub update_cell(key)
if Sound_flag = 1 then sound("Tick.wav")
c=table1.selectedCol
r=table1.SelectedRow
table1.cell(c,r)=table1.cell(c,r)&sender.text
end sub
There also seem to be other bits of oft repeated code such as
table1.cell(table1.ColName(d),4)=table1.cell(table1.ColName(d),2)-table1.cell(table1.ColName(d),3)
that could be abstracted into a sub. For readability and maintainability of code it is always as well to put a repeated function into an appropriately named sub and pass any needed parameters to it.
You've left a messagebox on the right arrow key!