Golfinray,
You seem to be doing more work than necessary. You mention that multiplied
by 100, used md function (I'm assuming you meant MID() function), used Round
function.
In your example (12.3784565859), is that the value before or after
multiplying by 100? Is the original value 0.123784565859? I would just
format that as a percent. It looks like Access's Percent format defaults to
2 decimal places (but it can be set to any number), so 0.123784565859 would
DISPLAY AS 12.38 % (I say DISPLAY AS because it will show 12.38 %, but the
value will still be 0.123784565859).
If, for some reason, you need the value rounded, then I would just use
ROUND([PercentField],4) or ROUND(0.123784565859,4) and then format as a
percent.
0.123784565859 would become...
0.1238 when rounded to 4 places, which would display as...
12.38 % when formatted as a percent.
If you are using MID() to cut off extra decimal places, that just seems like
an unnecessary step.
If you need this stuff in the report only and not in the query, then you
could use the round function in the query, if needed, and then format the
control on the report as a percent with 2 decimal places.
HTH,
Conan