The issue with sharepoint is that you can't use VB code. You have to run everything with macros/queries but you can still perform the calculations we're talking about without using VB (query level) if you change the formula in the END AMOUNT field of my example to:
Code:
=IIf((DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchTo))=1,[fld_ConvAmt]*(DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchFrom)),IIf((DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchFrom))=1,[fld_ConvAmt]/(DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchTo)),([fld_ConvAmt]*(DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchFrom)))/(DLookUp("[Exchange_Rate]","ExchangeRates","[ID] = " & Forms!frm_test!Fld_ExchTo))))
You can perform the calculation without any VB code at all, it's all SQL statements or formulas, Though I would likely perform this a different way if I were designing it for me you get the idea. Automating your conversion rates is really the way to go even if you have a slight markup (for services rendered) you can program that into your database as well. All that aside you can see that it's possible to arrive at what you want with a formula. I'm also including a couple of queries to show you how you can do it that way as well, it's very basic (probably not as elegant as it could be, but it doesn't use the dlookup function which is a memory/resource hog). The first is a cartesian query that basically builds a matrix of every possible conversion from and conversion to country then the second is performing the actual conversion based on the two countries you choose on the main form.
Qry_ExchangeRate_Cartesian is the matrix
Qry_ConversionFinal is the query that will show your end payout in the currency of the convert TO field.
Conversion.zip