Selectief (snel) i.p.v. alle velden laten bijwerken (traag)

Status
Niet open voor verdere reacties.

Tonex

Gebruiker
Lid geworden
6 jul 2012
Berichten
43
Beste helpers,

Het bijwerken van een beveiligd formulier met zo'n 300 invulvelden duurt vele minuten met onderstaande VBA.
Is het ook mogelijk om gedefinieerde velden bij te werken op basis van de bladwijzernaam?


Afdrukvoorbeeld is niet consequent aan te roepen, dat zou wel sneller alles bijwerken.
Berekenen bij afsluiten aangevinkt is ook geen optie, is een vertragende manier bij het invullen van de velden.


Code:
With ActiveDocument
    .StoryRanges(wdMainTextStory).Fields.Update
    .StoryRanges(wdPrimaryHeaderStory).Fields.Update
    .StoryRanges(wdPrimaryFooterStory).Fields.Update
End With
 
Laatst bewerkt:
Een formulier met zoveel velden heb ik nog nooit gemaakt (en ben ik ook echt niet van plan ;)) dus ik heb geen idee over de mate van traagheid. Noch hoe ik daar verbetering in kan bouwen, omdat ik de verschillen toch niet kan meten. Dus ik denk dat je het betreffende formulier (liefst ingevuld, want dat scheelt voor ons vermoed ik ook zo’n 2,5 uur werk :)) mee zult moeten posten. Wellicht is een andere werkwijze aan te bevelen, maar dan zou ik dus het formulier eerst moeten zien.
 
Een bestand met >300 documentvariabelen is in een fraktie van een oogwenk geaktualiseerd.

Als dat bij jou niet het geval is ligt dat niet aan de instructie 'update'.
Je zoekt het dus in de verkeerde hoek.
 
Dat denk ik dus ook; het mag zeker geen ‘vele minuten’ duren. Wat overigens een redelijk vage omschrijving is :). Dan denk ik toch al gauw aan minstens 5 minuten, oftewel: één seconde per veld. Wat belachelijk is qua performance.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan