Use this:
string commandstring = "SELECT MAX(ADX) FROM @out_table WHERE [Date] between @strt_date AND @end_date";
OleDbCommand cmd = new OleDbCommand(commandstring, con);
cmd.Parameters.AddWithValue("@out_table", out_table);
cmd.Parameters.AddWithValue("@strt_date", dt_start);
cmd.Parameters.AddWithValue("@end_date", dt_end);
string val= (string)cmd.ExecuteScalar();
Date is a reserved name then:
It's better to use
[Date]
And do not use parenthesis