Uprava zahlavi word – Visual Basic – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Uprava zahlavi word – Visual Basic – Fórum – Programujte.comUprava zahlavi word – Visual Basic – Fórum – Programujte.com

 

Spuštěný nový filmový web Filmožrouti.cz — vše o Avengers, Pacific Rim, Thor, Star Wars…
peter
~ Anonymní uživatel
3340 příspěvků
17. 4. 2018   #1
-
0
-

Potreboval bych zmenit zahlavi dokumentu. Takovou tu hlavicku, kam se 2x musi poklikat, aby se dala editovat.

Nasel jsem si, ze text by sel takto 

Set rng = ActiveDocument.Sections(1).Headers(1).Range
rng.text = "123"

Ja bych potreboval tam bud vlozit tabulku nebo vyhledat a prepsat text jinym textem. mam kod, kterym tam vypisu tabulku. Ale jedna se o A3, je to rozdelene tusim pres Word - Format - Sloupce = 2. To samozrejme nevim, jak se dela ve VBA :) Cili, mam tam 2 listy na jedne A3 a na druhe strance ma kazdy list zahlavi, stejnou tabulku. Na dalsich strankach by melo byt totez. Resp, nemela by nastat situace dalsich stranek. To se bude potom asi rucne zmensovat :)

A3
--------------------
         | logo  
         |  texty
         |
         |
--------------------
--------------------
zahlavi  | zahlavi  
 tabulky |   tabulky
  + text |  + text 
         |
--------------------

A v zahlavi je prave tabulka. A cele to zahlavi je jeste rozdelene asi Format-Sloupce-2.
Kod te tabulky je slozitejsi, ale je tam zhruba toto 

Set tbl = ActiveDocument.Tables.Add(Range:=rng, NumRows:=1, NumColumns:=3)
tbl.Range.Font.bold = False
tbl.Range.Font.ColorIndex = fontColor
tbl.Range.Font.Size = fontSize9
tbl.Columns(1).Cells(1).Range.text = "DIPLOMA SUPPLEMENT"
tbl.Columns(2).Cells(1).Range.text = att_node_list(2)(i).text & " " & att_node_list(1)(i).text '' jmeno prijmeni
tbl.Columns(3).Cells(1).Range.text = "Diploma No: " & att_node_list(0)(i).text ' cislo diplomu

tusim, ze jsem to i v jendnom pokusu vepsal, kod by mohl byt pro rng asi toto, ale nemelo to 2 sloupce a 2 tabulky: 

Set rng = ActiveDocument.Sections(1).Headers(1).Range
rng.text = ""
Set rng = ActiveDocument.Characters(rng.End + 1)
Nahlásit jako SPAM
IP: 2001:718:2601:258:445a:76...–
peter
~ Anonymní uživatel
3340 příspěvků
18. 4. 2018   #2
-
0
-

Vyreseno. 
wdReplaceAll pak nahradi vsechny vyskyty ve zvolenem zahlavi. Coz je presne to, co jsem potreboval. Nebo tam vykreslit celou tabulku, coz se mi nechtelo resit a taky se to spatne styluje.

Sub FnReplaceHeader(findString As String, replaceString As String, fontColor As Integer)
    With Selection.Find
        .text = findString
        .Replacement.text = replaceString
        .Replacement.Font.ColorIndex = fontColor
        .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue
    End With
End Sub

' -------

        ' zahlavi na druhe strance - studentJmeno, studentPrijmeni, diplomCislo (najdi/nahrad)
        If ActiveDocument.Sections.Count > 0 And ActiveDocument.Sections(1).Headers.Count > 0 Then
            ActiveDocument.Windows(1).View.SeekView = wdSeekPrimaryHeader
            Call FnReplaceHeader("studentJmeno", att_node_list(2)(i).text, fontColor)
            Call FnReplaceHeader("studentPrijmeni", att_node_list(1)(i).text, fontColor)
            Call FnReplaceHeader("diplomCislo", att_node_list(0)(i).text, fontColor)
            ActiveDocument.Windows(1).View.SeekView = wdSeekMainDocument
        End If
Nahlásit jako SPAM
IP: 2001:718:2601:258:8057:4b...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 9 hostů

Podobná vlákna

MS Word — založil pawlik

Microsoft Word — založil -A-N-D-R-E-J-

VBA - word — založil Peta

Načtení Word dokumentu — založil kabaret

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032018 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý