Restrict record visibility in Report based on login id and a field.

Restrict record visibility in Report based on login id and a field.

Is it possible to restrict record visibility in Report  based on login id and a field? 

e.g. To one set of users whole login ids I know (I can create a group from these specific users) I need to only display those records in a table where a CompanyField is set to "XXX"

I can do it by making a separate Report for each such set & then restricting visibility for that full report. But that's cumbersome. Every time a new company happens I need to create a new report & manually copy all my conditional formatting etc to it. (PS. Is it possible to duplicate a report with its conditional formatting definitions, sort order etc. ? )

Ideally, I want to maintain one single Report  & only control record based visibility in it automatically based on login id. 

Is this possible?