Hej hauge
Det, du beskriver, bør helt overordnet set godt kunne lade sig gøre, og det kræver en makro/VBA-kode, som i sit omfang (ifølge min mening) ligger ud over det, der normalt ydes af pro bono-support i dette forum.
I håb om at det kan lede dig på rette vej, vil jeg foreslå følgende:
1) Når Excel-filen åbnes, skal der køre en "event macro" (Auto_Open eller Workbook_Open), som via brugerens Windows-id (environ("username")) styrer hvilke ark, som skal være synlige (xlSheetVisible). Hvis arkene er beskyttet med kode, skal makroen også låse brugerens ark op (fjerne arkbeskyttelsen).
2) Personligt ville jeg sætte de skjulte arks synlighed til værdien xlSheetVeryHidden, hvorved arkene ikke kan gøres synlige fra Excels brugergrænseflade.
3) Når Excel-filen lukkes, skal der køre en "event macro" (Auto_Close eller Workbook_Close), som skjuler alle ark (xlSheetVeryHidden) på nær forsiden/hovedarket. Hvis arkene skal være beskyttet med kode, skal makroen også låse ark (påføre arkbeskyttelse).
Med ovenstående behøver brugerne således ikke indtaste deres navn og password, idet de automatisk genkendes, når filen åbnes.