Toon posts:

[Excel 2003] Verplichte vermelding van gegevens

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo daar,
De vraag zoals in de titel, maar tuurlijk leg ik hem even verder uit.

Ik wil dat bij oepning van een excelfile wordt gevraagd naar de naam van de eindgebruiker.
Vervolgens moet deze naam in excel worden vermeld op elk blad dat wordt geprint.
Het liefste in de header van het werkblad, maar anders in een bepaalde cel.

Ik weet dat het kan, maar hoe?
Zal vast een stukje macro of VB zijn, alwaar ik weinig tot geen kennis van heb.

Hoe zie ik dat in de praktijk voor mij?
Helaas ontvang ik regelmatig declaraties waarbij geen naam is aangegeven van degene die de declaratie indient.
Uiteraard heb ik er al meerdere malen op aangedrongen en aangegeven dat ze geen centen krijgen als ik niet weet van wie de declaratie afkomstig is.
Maar goed, soms moet je een buiten de ge-effende paden terden en zelf met iets komen.
"Als Mozes niet naar de berg komt, dan komt de berg wel naar Mozes"

Zou dus mooi zijn dat zodra iemand het formulier opent hij/zij meteen een pop-up krijgt om een naam in te vullen.
Die naam moet vervolgens terugkomen in de header of een bepaalde cel.

De vorige versie van het onkostenformulier is door een ex-collega gemaakt en daarin kon dat wel.
Die heeft na zijn vetrek alleen geen handleiding achtergelaten hoe ik dit bij een volgende versie ook voor elkaar kan boksen.

Hier een screenprint van wat je ziet als je die oude versie opent.
Wie kan mij helpen ?
Afbeeldingslocatie: http://www.parkyourpic.com/uploads/a850c08525.jpg

Ik kwam wel hetvolgende tegen in de script-editor.
Ik heb alleen geen idee waar ik hetzelf moet neergooien om het effect te dupliceren.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Public Sub AUTO_open()
    MsgBox ("Hallo" & Chr(13) & Chr(13) & "Dit is het declaratieformulier" _
    & Chr(13) & Chr(13) & "Indien u problemen hebt met het invullen van dit formulier" _
    & Chr(13) & Chr(13) & "of indien u opmerkingen/vragen hebt," _
    & Chr(13) & Chr(13) & "aarzel dan niet ons te contacteren." _
    & Chr(13) & Chr(13) & "Naam + Telefoonnummer ex-collega"
 
    
Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Do While Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Loop
Range("C6").Value = Naam

In dit geval zou de naam dan teruggekoppeld worden naar cell C6, ikzelf heb een voorkeur voor vermelding in de header.

  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Als je aan de windows inlognaam genoegen neemt, kan je ook even hier kijken.

Ey!! Macarena \o/


Verwijderd

Dus
code:
1
Range("C6").Value = Naam

vervangen door
code:
1
2
3
4
5
6
7
8
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = Naam
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = ""
    End With


Of waar je em precies wilt.

[ Voor 25% gewijzigd door Verwijderd op 08-03-2006 14:57 ]


  • Brecht Laitem
  • Registratie: November 2005
  • Laatst online: 07-07 15:22
Om het te laten starten bij het openen van de file:
Open je microsoft visual basic script editor, Ga naar ThisWorkbook. Bovenaan bij die 2 selectie menu's selecteer je voor de linkse workbook en rechts open
Je krijgt dan een stukje code in je scherm
code:
1
2
3
Private Sub Workbook_Open()

End sub

en daar tussen typ je het volgende:
code:
1
2
3
4
5
6
Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Do While Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Loop
ActiveSheet.PageSetup.LeftHeader = Naam


edit:

Tip voor TS: Als je een voor een bepaalde handeling niet weet hoe je het moet schrijven in VBA, record dan eens een macro met je handeling die je wil en bekijk daarna de code die excel daarvoor gemaakt heeft. Dit helpt je meestal wel op weg.

[ Voor 23% gewijzigd door Brecht Laitem op 08-03-2006 14:58 ]


Verwijderd

Topicstarter
Dank je wel voor je suggestie.
Ik heb het even doorgenomen, maar het overstijgt mijn kennis vele malen.
Ik heb dus ge copy paste in Visual Basic, maar dat brengt mij geen steek verder.

Evengoed bedankt, ik ga vanavond thuis er wel even verder mee rommelen.

Verwijderd

Topicstarter
Brecht Laitem schreef op woensdag 08 maart 2006 @ 14:56:
Om het te laten starten bij het openen van de file:
Open je microsoft visual basic script editor, Ga naar ThisWorkbook. Bovenaan bij die 2 selectie menu's selecteer je voor de linkse workbook en rechts open
Je krijgt dan een stukje code in je scherm
code:
1
2
3
Private Sub Workbook_Open()

End sub

en daar tussen typ je het volgende:
code:
1
2
3
4
5
6
Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Do While Naam = ""
Naam = InputBox(Prompt:="Gelieve je naam en voornaam in te vullen")
Loop
ActiveSheet.PageSetup.LeftHeader = Naam


edit:

Tip voor TS: Als je een voor een bepaalde handeling niet weet hoe je het moet schrijven in VBA, record dan eens een macro met je handeling die je wil en bekijk daarna de code die excel daarvoor gemaakt heeft. Dit helpt je meestal wel op weg.
Dit werkt perfect.
En zelfs ik kan het op deze manier begrijpen.
Dank u en Amen !

[ Voor 6% gewijzigd door Verwijderd op 08-03-2006 15:06 ]

Pagina: 1