![]() |
|
![]() |
|
Thread Tools | Display Modes |
|
#1
|
|||
|
|||
![]()
I have a short macro that updates the styles in a document with those in the attached template:
Code:
With ActiveDocument .UpdateStylesOnOpen = True .AttachedTemplate = aTmp End With With ActiveDocument .UpdateStylesOnOpen = False .AttachedTemplate = aTmp End With The other issue I'm finding is that when I run it as part of the larger macro and it is actually switching the URL of a template, it will run the first half (setting update styles to true) and then stop. Setting a breakpoint after the step in this instance doesn't have any effect: anything after it isn't run. If I run the same macro again, it will complete all the steps: the only thing that's different is that it hasn't changed the template. Any clues? |
#2
|
||||
|
||||
![]()
Firstly, you can import styles from attached template more simply
Code:
ActiveDocument.UpdateStyles 'Imports styles from the attached template
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
#3
|
|||
|
|||
![]()
Thanks for the tip on updating the styles with the single command! My journey into macros started with recording them (like a lot of others I'm sure) and that's what it records when you do the manual procedure and I never looked into anything more efficient.
I have a fairly complicated setup which tries to deal with all sorts of eventualities and they're all to do with SharePoint and how it tries its best to mess with templates and styles. The master "refresh" macro lives in a separate template that people have on their own computers (in the Word startup folder) and is tasked with first linking the correct template. The document templates all have their own macro which does the actual refreshing, as there's no one size fits all process for the refreshing (sometimes the document has custom numbering which we don't want to reset with a refresh, or sometimes some substitution needs to be done with SharePoint paths as the synced folder name and the URL don't match if someone renames the site). That's called by the master macro. Your simple solution will work most of the time, however there's a few instances where the document is linked to a template with a valid update macro, but I want to change it to a different one. I think this would have to involve using my method, which is where the issue becomes relevant again. |
#4
|
||||
|
||||
![]()
I'm not fully understanding what you are saying but one other tip that might be useful is the ability to import styles from a template other than the 'attached template'
Code:
ActiveDocument.CopyStylesFromTemplate (strTemplateFullPath)
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
#5
|
|||
|
|||
![]()
Yep I guess that would work: if I make attaching the new template the very last thing the macro does then it doesn't matter if that step will stop it running (it executes the procedure so that's the main thing).
I am mainly curious as to why this step causes a macro to behave like you've pressed F5 instead of F8 at that line when stepping through the code. |
#6
|
||||
|
||||
![]()
I've encountered your 'stepping through code' issue when debugging lots of different macros and haven't gone looking for a reason why. As you pointed out you can add breakpoints so I've never been particularly bothered by the runaway train.
In the cases I've seen this happen, the runaway hasn't been related to changing attached templates so there is more than one trigger for this behaviour.
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
![]() |
Tags |
attachedtemplate, debugging |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
In a macro to clean up language, what functions do "ClearFormatting" and "Replacement" serve? | ctviggen | Word VBA | 2 | 12-04-2023 10:06 AM |
Modifying a Macro that Splits Word Docs by Heading to Skip Some Headings ("Bibliographies") | learnerlamp | Word VBA | 0 | 10-18-2023 01:20 PM |
Excel 2003: VBA "Function" causes "#VALUE!" errors after running "insert/delete row" custom macro | Matt C | Excel Programming | 2 | 01-08-2022 06:03 AM |
![]() |
techwriter3k | Word | 4 | 05-22-2020 07:59 AM |
remove repeated words with " macro " or " wild cards " in texts with parentheses and commas | jocke321 | Word VBA | 2 | 12-10-2014 11:27 AM |