Since all fields are short_text data type this won't be very efficient:
Code:
SELECT Count(Customers.ID) AS CountOfCustomers,
Sum(IIf([Status] = "Active", 1, 0)) AS CountOfStatus,
Sum(IIf([Category_Flag] = "Yes", 1, 0)) AS CountOfCategory_Flag,
Sum(IIf([Received_flag] = "Yes", 1, 0)) AS CountOfReceived_flag,
[CountOfCategory_Flag] / [CountOfCustomers] AS PercentageCategory
FROM Customers;
It would be better to use a foreign key to reference a customer, and to use a boolean for the received, category, and status flags. Even better still you might use integer datatypes instead of access' yes/no booleans: http://allenbrowne.com/NoYesNo.html