View Single Post
 
Old 09-19-2023, 03:55 PM
Guessed's Avatar
Guessed Guessed is offline Windows 10 Office 2016
Expert
 
Join Date: Mar 2010
Location: Canberra/Melbourne Australia
Posts: 4,164
Guessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant futureGuessed has a brilliant future
Default

Your code is flawed, it repeats the inner loop on exactly the same thing multiple times. The Footnote References only exist in the Main Story so there is no point in looping through every story range.

You can't actually put footnote references in text boxes, headers, footers or footnote areas because Word doesn't allow it (although you can paste one in and it resets to 1) - so looping through the various ranges to find footnotes serves no purpose (and in fact errors in the below code).

Looking at the code issue, when you want to run a loop across each StoryRange you need to refer to that story range instead of the parent document (see the bold word in this code and compare with your code)
Code:
Sub FootnoteMark()
  Dim oStory As Range, FtNt As Footnote
  For Each oStory In ActiveDocument.StoryRanges
    For Each FtNt In oStory.Footnotes
       'do stuff
    Next
  Next oStory
End Sub
However, this inner loop will fail because Footnotes don't go into different story ranges - just the main body of the document. This means there is no point repeating the inner loop the same number of times as there are story ranges.
__________________
Andrew Lockton
Chrysalis Design, Melbourne Australia

Last edited by Guessed; 09-19-2023 at 08:10 PM. Reason: added more info
Reply With Quote