Sounds like you need a translation table - something like
English.................French
Customer..............Client
Invoice Number.....Numéro de Facture
Although I would suggest something more normalised if you have many languages
In your customer table, have a field to indicate language
then in your report, if language=French then loop through each label and swap the text
something like
Code:
if language=French then
for each ctrl in me.controls
if ctrl.controltype=aclabel then ctrl.caption=nz(dlookup("French","tblTranslations","English='" & ctrl.caption "'"),ctrl.caption)
next ctrl
or you can have a table to store name of report, name of control, language and phrase
reportname...controlname...language...phrase
Invoice.........lblInvNo.........1..............In voice Number
Invoice.........lblInvNo.........2..............Nu méro de Facture
etc
and a similar loop
Code:
set rst.currentdb.opnrecordset("SELECT * FROM tblCaptions WHERE reportname='" & me.name & "'")
while not rst.eof
me(rst!controlname).caption=rst!phrase
rst.movenext
wend