Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Excel/VBA] Functie SaveCopyAs met Read Only

Pagina: 1
Acties:

  • Theske
  • Registratie: Februari 2003
  • Laatst online: 14-05-2017
Beste Tweakers,

Ik heb een Excel document die fungeert als soort dashboard. Het bron bestand staat de gehele dag open en haalt rond X tijden nieuwe data op. Vervolgens wordt er dmv een VBA functie een 'Publish versie' gemaakt waar de gebruikers gebruik van kunnen maken.
Om het allemaal zo netjes mogelijk te maken, wil ik graag de Publish versie Read-Only maken, zodat er enkele tabbladen automatisch worden verborgen en de gebruikers alleen de tabbladen zien die voor hen van toepassing zien.

Nu heb ik mbv de functie SaveCopyAs een copy van de worksheet gemaakt, op die manier blijft het bronbestand geopend en kan het op X tijden de data vernieuwen. Echter kan ik nog geen optie binnen de functie SaveCopyAs vinden die het 'nieuwe' bestand ReadOnly maakt.... deze functie komt wel voor binnen SaveAs. Maar wanneer ik die functie gebruik, dan blijft het bronbestand dus niet geopend en zal hij zijn werk niet meer automatisch kunnen verrichten.

Weten jullie hoe ik dit kan oplossen?
Ik wil dus de Publish versie readonly maken, terwijl het bron bestand geopend moet blijven.

Alvast bedankt!

Proud member of the Cosmic Cows


  • Theske
  • Registratie: Februari 2003
  • Laatst online: 14-05-2017
Zojuist heb ik de oplossing gevonden.

Ipv in de Workbook_Open() te kijken of het een ReadOnly document is, heb ik hem laten kijken of de filename overeenkomt met het publish bestand. Zo ja, dan een aantal sheets hidden maken.

If get_file_name(False) = "File_Name" Then
Sheets("Startpagina").Visible = False

etc..

Proud member of the Cosmic Cows


Verwijderd

er is de SetAttr opdracht in vba die een gesloten bestand kan instellen als alleen lezen.
ook met de oorspronkelijke opdrachten had je via een tussenstap hetzelfde kunnen bereiken : eerst savecopyas en daarna dat bestand opnieuw opslaan met saveas.
(vb-)scripting heeft ook ingebouwde opdrachten om bestandsattributen te manipuleren.