Mam tylko podstawowe doświadczenie w VBA, a moja wcześniejsza Eksperymentacja makr była przede wszystkim z WORD 2003. Zapisywanie makr używanych do wykonywania poleceń menu GoToFooter (lub Edycja stopki) i umożliwienie późniejszej edycji. W WORD 2010, te (i wiele innych) poleceń nie "nagrywają" do Makro (ale w trybie Record dostaję się do funkcji Edit Footer).WORD 2010 Makro do edycji nagłówków i stopek
Badanie różnych opcji VBS pokazuje kilka sposobów tworzenia stopek i dokonywania globalnych zmian ustawień stopki w makrze. Jednak jeśli po prostu chcę zmienić nazwę firmy w stopce (na przykład), nie mogę znaleźć sposobu, aby to zrobić w podprocedurze Macro.
Podprogram ten jest to wywołanie z głównego makra, które przechodzi przez każdy plik w podfolderach Folder (&). Mam główne funkcje Makro.
Czy WORD 2010 Macro-VBA wyklucza prostą funkcję Edit-Footer?
góry dzięki
Tak, dzięki Issun, tu jest moje rozwiązanie:
`
Sub Sub_FTR_0()
'
ActiveDocument.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
For i = 1 To ActiveDocument.Sections.Count
'REM: INSERT Code from RECORD MACRO recorded when editing one Footer correctly
Selection. [[xxx]], etc.
If i = ActiveDocument.Sections.Count Then GoTo Line1
ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter
Line1:
Next
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub
`
Dzięki !! Widziałem tę składnię i założyłem, że zasadniczo całkowicie zastępuje Nagłówek i/lub Stopkę materiałem "FUBAR" [:)] ... wciąż nie pozwala mi wybrać i wybrać moje edycje za pomocą Footera (jak zastąpienie pierwszych 3 słowa lub ostatnie słowo, itp.). Więc każdy plik ma unikalny schemat numerowania stron (nie kodowany w terenie), więc całkowita wymiana nie jest opcją, o której mówiłem. – Dan
DZIĘKI (ponownie). Połączenie Twojej sugestii i podanego linku prowadzi mnie do mnie. Oto "prosta" procedura, dzięki której mogę dostać się do Stopki i edytować fragmenty. Pod Sub_FTR_0() ' ' Sub_FTR_0 makro ActiveDocument.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter dla i = 1 do ActiveDocument.Sections.Count „(REM) Dodać. Wybór FOOTER zmianę [grupom CMD] Jeśli i = ActiveDocument.Sections.Count Następnie GoTo Line1 ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter Line1: Następny ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument End Sub – Dan
'code' Sub Sub_FTR_0() " Aktywny Document.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter For i = 1 To ActiveDocument.Sections.Count „(REM) Dodać. Wybór FOOTER zmianę [CMD] przypadku i = ActiveDocument.Sections.Wtedy liczyć GoTo Line1 ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter Line1: Następny ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument End Sub 'code' – Dan