• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Gedefineerde naam in koptekst plaatsen

Status
Niet open voor verdere reacties.

HansAteB

Gebruiker
Lid geworden
16 mrt 2015
Berichten
67
Kan een gedefinieerde naam in de koptekst geplaatst worden?
Zo ja, hoe?
Zo ja, ook meerdere namen in het zelfde vak, bv bedrijfsnaam en plaats?
 
Dat kan alleen met VBA, in module "Blad1"
Code:
Public Sub Macro1()
    With ActiveSheet.PageSetup
        .LeftHeader = Range("a1").Text
        .CenterHeader = Range("b1").Text
        .RightHeader = Range("c1").Text
    End With
End Sub
 
Dank.
Maar ik begrijp het niet helemaal.
Wat bedoel je met module "Blad1"?

Ik heb een bestand bijgevoegd.
Op een aantal tabbladen (wel) moeten de namen wel in de koptekst en in sommige niet (niet).
Hoe zou dat met VBA dan werken?

Dank alvast.
Hans
 

Bijlagen

  • namen in koptekst.xlsx
    11,9 KB · Weergaven: 32
klik in de bijlage met de rechter muisknop op de tabnaam "namen" en kies voor "Programmacode weergeven".

kopieer de macro naar elk werkblad waar de gegevens uit A1:A3 in de koptekst moeten komen

LET OP: macro's toestaan
 

Bijlagen

  • namen in koptekst.xlsb
    19 KB · Weergaven: 35
Super. Dank.
Een eerste stap. Maar niet wat ik bedoel.
Dit zou betekenen dat ik elk koptekstveld steeds op een tabblad moet hebben staan.
Maar ik wil het juist vanuit 1 tabblad met gebruik van de gedefinieerde namen.

Bijgaand het bestand retour.
Op tabblad "namen" staan de gedefinieerde namen.
Op het 1e tabblad "wel" staat wat de bedoeling is. Dus naam en plaats in hetzelfde (linker)koptekstvak onder elkaar en ook nog vet.
Hopelijk kan dat.
 

Bijlagen

  • namen in koptekst retour.xlsb
    19,9 KB · Weergaven: 40
Hans,

kijk eens of dit meer is wat je wilt
 

Bijlagen

  • namen in koptekst retour hs.xlsb
    25,5 KB · Weergaven: 34
Dank Haije,

Dat begint erop te lijken.
Maar ik begrijp het niet en nog een verzoek om aanpassing.

Als ik de programmacode van tab "wel" weergeef krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Sub Worksheetkoptekst()
With ActiveSheet.PageSetup
.LeftHeader = [bedrijfsnaam] & vbLf & [plaats]
.CenterHeader = ""
.RightHeader = ""
End With
End Sub
En dit snap ik, want is bijna wat ik wil.

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
With ActiveSheet.PageSetup
.LeftHeader = Sheets("namen").Range("a1").Text
.CenterHeader = Sheets("namen").Range("a2").Text
.RightHeader = Sheets("namen").Range("a3").Text
End With
End Sub
Een aangepaste eerste onbedoelde code.

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik een leeg scherm.
Waar dienen die codes voor die iets anders doen dan ik bedoel?

En bij de code die ik begrijp (de 3e hierboven) zou ik nog graag opgenomen zien dat de koptekst bold/vet wordt weergegeven.

De definitieve oplossing lijkt in zicht.
Alvast veel dank daarvoor.
 
Misschien wilt u zoiets:

Maar wanneer moeten de kopteksten bijgewerkt worden ?
Hier bij het openen, wijzig in Tabblad 'Namen' een gegeven in A1, A2 of A3; sla op en heropen.
Er zijn natuurlijk ander mogelijkheden.

U moet bepalen welke tabbladen geen kopteksten moeten hebben.
U moet misschien blad per blad vermelden.

U ziet: het is mogelijk wat u wilt.
 

Bijlagen

  • namen in koptekst.xlsm
    26,1 KB · Weergaven: 33
Dank Haije,

Dat begint erop te lijken.
Maar ik begrijp het niet en nog een verzoek om aanpassing.

Als ik de programmacode van tab "wel" weergeef krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Sub Worksheetkoptekst()
With ActiveSheet.PageSetup
.LeftHeader = [bedrijfsnaam] & vbLf & [plaats]
.CenterHeader = ""
.RightHeader = ""
End With
End Sub
En dit snap ik, want is bijna wat ik wil.

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
With ActiveSheet.PageSetup
.LeftHeader = Sheets("namen").Range("a1").Text
.CenterHeader = Sheets("namen").Range("a2").Text
.RightHeader = Sheets("namen").Range("a3").Text
End With
End Sub
Een aangepaste eerste onbedoelde code.

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik dit:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Call Worksheetkoptekst
Application.ScreenUpdating = True
End Sub

Als ik dat wegklik krijg ik een leeg scherm.
Waar dienen die codes voor die iets anders doen dan ik bedoel?

En bij de code die ik begrijp (de 3e hierboven) zou ik nog graag opgenomen zien dat de koptekst bold/vet wordt weergegeven.

De definitieve oplossing lijkt in zicht.
Alvast veel dank daarvoor.

Dag Haije,

Ik begrijp inmiddels de vernieuwingsfunctie van de codes.
Dan resteert nog slechts de opmaak van de koptekst.
Heel veel dank alvast daarvoor.
 
Kan je code even tussen codetags plaatsten en in Jip en Janneke taal even uitleggen wat concreet de bedoeling is. Dat het via een gedefinieerde naam niet direct kan zal duidelijk zijn. 1 cel definiëren lijk mij in deze opzet niet handig als het toch via VBA moet. Je hebt er zelfs een complete quote van gemaakt voor de leesbaarheid.
 
Laatst bewerkt:
De code in Module 1 in het bestand in het bericht van Haije van 19-02-2019 om 17:29u (bericht #6) doet (deels) wat ik bedoel.
Deels, omdat ik daar alleen nog graag de opmaak aan toegevoegd zou zien; in casu bold/vet maar elke opmaak kan wenselijk zijn.
 
Laatst bewerkt:
Zou dit kunnen zijn wat u wilt?

De kopteksten worden bijgewerkt bij het openen of via de knop op blad 'Namen' of via 'Ontwikkelaars- Macro - Koptekst - Uitvoeren'
 

Bijlagen

  • namen in koptekst.xlsm
    29,6 KB · Weergaven: 32
Dank jempi10, super.

Zie bijgaand bestand.
Ik heb jouw code aangepast door ranges te vervangen door [namen] en dat werkt.
Ook heb ik linefeeds toegevoegd en dat werkt ook; fantastisch.

Het format vet en cursief werkt.
Alleen voor onderstreept ken ik het juiste woord blijkbaar niet; wat moet dat zijn?

Dan nog een vraag.
In jouw code sluit je de regel af met .Text
Wat doet dat .Text precies en wat zijn hier alternatieven?
 

Bijlagen

  • namen in koptekst retour naar jempi10.xlsm
    30,7 KB · Weergaven: 37
Het meeste heb ik hier of op internet gevonden, ben zelf geen specialist, zeker niet in VBA

Het woordje text weglaten heeft geen invloed

Hoe de tekst te onderstrepen moet ik opzoeken.
 
Even een macro opnemen doet wonderen.

Code:
Sub Macro1()
'
' Macro1 Macro
'

'
    Selection.Font.Underline = xlUnderlineStyleSingle
End Sub
 
Dat dacht ik ook.
Underline zit in de code van het bestand bij bericht #13.
Maar dat werkt helaas niet.
Enig idee waarom niet?
 
@ VenA
Bedankt voor de tip, maar dat wist ik dus wel.
Wat ik probeer is zoiets:

Code:
.CenterHeader = "&""-,Vet""&14""&enkelonderstreept" & Blad7.Range("A2")

met onderstreept alleen lukt het niet; via een macro krijg ik (zoals u): xlUnderlineStylesSigle

zie maar naar het resultaat, dus zoek ik verder. Denk dat ik wel de klok hoor luiden, maar de klepel niet zie.
Tips in de goede richting zijn uiteraard welkom.
 

Bijlagen

  • namen in koptekst.xlsm
    29,8 KB · Weergaven: 26
Maak gebruik van de internationaal geldige afkortingen.

Code:
Sub VenA()
  With ActiveSheet.PageSetup
    .LeftHeader = "&U&B&I&s&20" & "test"
  End With
End Sub
 
Super.
Precies wat ik zocht.
Heel fijn.

Iedereen bedankt.

Toch nog een vraag.
Als ik leftheader het volgende wil

1e regel Bold 14
2e regel Bold en Italic 11
3e regel Underline 8

Wat wordt de code dan?
Want blijkbaar moet je eerst clearance hebben van de vorige instelling.
 
Laatst bewerkt:
@VenA:
Bedankt, kende die codes niet.
Heb ze nog niet gevonden op internet, maar... komt wel.
Gr Jempi

Denk wel dat HansAteB tevreden zal zijn.

@ Hans,

Heb u nog een aanzet gegeven, hopelijk kan u er nu ook verder mee werken.
 

Bijlagen

  • namen in koptekst retour naar jempi10.xlsm
    29,5 KB · Weergaven: 33
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan