invulscherm.

Status
Niet open voor verdere reacties.

Strange Bird

Gebruiker
Lid geworden
13 apr 2004
Berichten
154
Hallo allemaal,

Ik heb enige tijd geleden bij een bedrijf het volgende gezien.

Een medewerkster van de administratie opende een Word document en toen kwam er een pop-up invulschermpje tevoorschijn. (Dus op de achtergrond zag je nog net een stukje wit waar je normaal gesproken in begint te type)

In dat invulschermpje typte ze voornaam, achternaam, adres en wat persoonlijke gegevens in en na een druk op de <OK> knop werd er keurig een Word brief opgemaakt met naam en adres van bedrijf, naam en adres gegevens van mij en de persoonlijke gegevens.

Mijn vraag: hoe is dit gemaakt? Of anders gezegd, hoe kan ik dit maken? Als ik bv een offerte opmaak dan is 60% van de offerte hetzelfde opgesteld alleen moet ik dan "oude" klantgegevens wijzigen in "nieuwe".

Wie kan / wil mij helpen? Alvast bedankt voor het meedenken.:)
 
Tjah, dan moet dat maar...
Zie ik ook niet tegenop om dat te proberen.

Maar waar moet ik dan opzoeken?
Ik kan wel naar VBA zoeken maar naar welke termen/woorden moet ik zoeken?

En als er boeken over te vinden zijn dan kan ik daar ook nog eens naar gaan kijken.... (de baas betaald wel):p

En bedoel je Visual Basic of Visual Basic for Applications?
 
Hai, :D

Om exact te wezen is het Visual Basics for Application. Deze taal wordt door alle Office programma's gedeelt voor automatisering van processen.

Wat jij hebt gezien is een Custom dialoogvenster..in VBA beter bekent als een UserForm.

Deze zijn relatief makkelijk te maken maar kunnen ook vreselijk inteligent zijn dus complex om te maken..

Ik wil jou inprincipe best helpen als hetgeen jij wilt van simpele aard is...(anders kost het mij teveel tijd)

Wat je aan functionaliteit beschreef is redelijk simpel te maken.

Als je duidelijk kunt omschrijven wat je wilt en je hebt een voorbeeld van hoe het resultaat eruit moet komen te zien dan wil ik dit best voor je maken..

Wil je de uitdaging zelf aan gaan (Wat ook leuk/leerzaam is) dan moet je gaan voor de Engelstalige VBA boeken.

Er zijn hele dure curssusen maar ik adviseer toch eigenlijk veel boeken over VBA lezen en DOEN, Doen, doen.....

Het beste boek (voor Word VBA) is WORD MACRO's van Steven Roman
Kijk hier maar eens: http://www.amazon.com/exec/obidos/I...3215424-1198317
Het andere boek wat erbij staat ziet er ook wel leuk uit!

Ik hoor het wel? :thumb:
 
Ha Joost...

Nou je aanbod klinkt echt heel vriendelijk.

Het is eigenlijk niets anders dan hetgeen ik hierboven schreef.

Als ik een offerte opmaak dan is 60% van het offerte verhaal hetzelfde opgesteld.

Alleen moet ik nu elke keer "oude" klantgegevens wijzigen in "nieuwe".

Maar goed... wat ik eigenlijk wil is een word documentje openen en dan automatisch zo'n pop-up schermpje (of user form zoals jij het noemt) tevoorschijn te krijgen met bv NAW gegevens en een paar aanvullende gegevens... (bv een veldje prijs en een veldje bijkomende kosten)

En als ik dan op de knop "maak brief" klik er automatisch een brief wordt gegenereerd met de zojuist ingeklopte informatie.

Want je kent het vast wel... zo'n brief waarin in de tekst meerdere keren je naam wordt gebruikt...

bv Geachte heer Verdaasdo, u heeft nu de hoofdprijs van €10 miljoen gewonnen... en als u nu snel een lot koopt dan kunt u, als enige, heer Verdaasdo, geen €10 miljoen maar €20MILJOEN winnen....

Als ik eenmaal een voorbeeldje hebt dan pruts ik er zelf wel verder mee....

Want ik neem aan dat je gewoon een soort van markering in de tekst invoeg waar de zojuist ingevoerde gegevens kunnen komen te staan.

Dus als ik een brief aan kan maken met de zojuist ingevoerde gegevens ben ik al heel blij...


Dus echt heel intelligent zal het niet worden... En zo'n boek kan ik ook nog eens bekijken....


Alvast bedankt!!!!!!!!!! :D
 
Hai, :D

Ik print jou vraag even uit en zal het (waarschijnlijk) straks even uitwerken..

Dus neem aan dat je het morgen hebt..

See yah! :thumb:
O ja en zeg maar gewoon Verdaasdonk hoor....(foutje bij registreren)
 
Laatst bewerkt:
Hai, :D

Ff een simpel voorbeeldje in elkaar geflanst. (Te plaatsen in de map sjablonen en op te vragen via bestand/nieuw/op basis van sjabloon...dubbelklikken zal op de meeste Word versies ook werken)

De code schrijft de data van het formulier weg naar Bladwijzers (invoegen/bladwijzer) in het document.

Voor de data welke je vaker nodig hebt..(namen etc..) gebruik ik Ref-velden. (invoegen/kruisverwijzing naar bladwijzer)

kruisverwijzingen kunnen in dit geval werken omdat ik bij het wegschrijven naar bladwijzer om de range een nieuwe bladwijzer plaats welke weer uitgelezen kan worden door het Ref-veld!

Als laatste update ik de velden..

Zo en nu mag jij het verder in elkaar gaan froebelen...

Succes! :thumb:
 

Bijlagen

O ik vergeet nog wat.

Heb je wel eens eerder macro's gedraaid op jou werkplek?

Zo nee:
* Ga in Word naar menu Extra/Macro/Beveiliging
* Zet deze op gemiddeld

Anders zie je waarschijnlijk niks gebeuren...
Krijg je een vraag of je macro's in wilt schakelen kies dan Ja en het UserForm opent meteen..

See Yah! :thumb:
 
GEWELDIG!!! Dit bedoelde ik inderdaad!
:thumb:

Heb meteen naar de beveiliging gekeken en schijnbaar vertrouwd hij de macro helemaal.

Als ik die op zn hoogst laat staan werkt het helemaal prima!!!

Heb in de code gekeken en dat is nog een beetje acadabra maar goed... daar ga ik nu mee stoeien...

Alleen hoe weet word nu waar hij bv de naam in het document moet plaatsen? Ik zie (tot mijn verbazing) geen markering waar de eventuele invultekst komt te staan maar het werkt perfect!

Alvast vriendelijk bedankt!!!!
 
Geplaatst door Strange Bird
GEWELDIG!!! Dit bedoelde ik inderdaad!
:thumb:

Heb meteen naar de beveiliging gekeken en schijnbaar vertrouwd hij de macro helemaal.
Alvast vriendelijk bedankt!!!!
Hai, :D

Graag gedaan!

Inderdaad als de sjabloon in de map sjablonen staat en beveiliging staat op hoog dan doet ie het prima...Maar als het goed is doet ie het niet als je hem start vanuit het bureaublad of zo! (Dit kan overigens per Word-versie verschillen..)

Ga naar Extra/Opties/Weergave en vink Bladwijzers weergeven aan. (nu zie je ze staan)

Toets ALT+F9 om naar veldweergave te gaan (en weer terug) om de REF-velden te zien...

Zo ik hoop dat je zo al weer iets meer weet....:thumb:
 
Nou... petje af... ben er een tijdje mee bezig geweest en het invulschermpje kan ik nu net zo maken als ik zelf wil! Dat gaat helemaal prima!

(ALT+F9) en de bladwijzers aanzetten was inderdaad de oplossing.

MAAR........ nou heb ik nog een probleempje ermee.

1) Als ik naar jou voorbeeld progje kijk dan staat daar bij de tekst een {REF bmGender} enz.

Als ik zelf de bladwijzers probeer toe te voegen dan staat er alleen maar een soort "I".

En als ik twee keer dezelfde naam toevoeg dan haalt hij een van de twee "I" weg.

Dus wat jij voorelkaar kreeg om meerdere keren 1 dezelfde naam te gebruiken lukt mij nog niet.

2) Als ik extra velden in het voorbeeld documentje
wil krijgen hoe doe ik dat dan? Want jou bladwijzers zie ik wel staan maar ik zie niet de velden staan die ik er zelf heb bijgevoegd. Terwijl ik dit toch in de code heb aangegeven. (uitgebreid)

Ik begon al heel enthousiast aan een mooie template. (Dus jou template geopend, tekst weggegooid en ik wil een bladwijzer invoegen van een van de velden, alle bladwijzers weg... :-( Nou ja... al doende leert men.
 
Geplaatst door Strange Bird
Nou... petje af... ben er een tijdje mee bezig geweest en het invulschermpje kan ik nu net zo maken als ik zelf wil! Dat gaat helemaal prima!
Hai, :D

Goed zo dat was ook de bedoeling. (heb de code to the point en simpel gehouden)
Enne doen is de beste leerschool!

(ALT+F9) en de bladwijzers aanzetten was inderdaad de oplossing.

MAAR........ nou heb ik nog een probleempje ermee.
1) Als ik naar jou voorbeeld progje kijk dan staat daar bij de tekst een {REF bmGender} enz.

Als ik zelf de bladwijzers probeer toe te voegen dan staat er alleen maar een soort "I".

En als ik twee keer dezelfde naam toevoeg dan haalt hij een van de twee "I" weg.

Dus wat jij voorelkaar kreeg om meerdere keren 1 dezelfde naam te gebruiken lukt mij nog niet.

2) Als ik extra velden in het voorbeeld documentje
wil krijgen hoe doe ik dat dan? Want jou bladwijzers zie ik wel staan maar ik zie niet de velden staan die ik er zelf heb bijgevoegd. Terwijl ik dit toch in de code heb aangegeven. (uitgebreid)

Ik begon al heel enthousiast aan een mooie template. (Dus jou template geopend, tekst weggegooid en ik wil een bladwijzer invoegen van een van de velden, alle bladwijzers weg... :-( Nou ja... al doende leert men.
Het werkt als volgt:
In de code wil je maximaal één keer een tekstwaarde naar een bladwijzer schrijven. Om deze waarde opnieuw te kunnen gebruiken wordt er in de code een Rangebladwijzer van gemaakt..dus niet: "I" maar blokhaken eromheen: "[ ]" (Zo is die range dus ook opvraagbaar)

* Dus op de eerste plaats in het document waar jij deze waarde (laten we zeggen de Naam) nodig hebt zet je dus éénmalig een Bladwijzer neer!
* Dus ga op die plaats staan en ALT+I+I en typ een naam (vb. "bmName") en Enter... (Zo de bladwijzer staat)

* Op het moment dat de code gedraait heeft is dus alleen die éne bladwijzer gevuld nu wil je dus de range daarvan op meerdere plekken gaan gebruiken..

* Dus je gaat via een Refveld (Kruisverwijzing) die bladwijzer koppelen.
* Ga op de plaats staan waar je de Naam nogmaals nodig hebt en kies: Invoegen/Verwijzing/Kruisverwijzing en kies Bladwijzer. Selecteer nu: "bmName" en kies Ok

* Met ALT+F9 zie je nu het Ref veld { REF bmName }
* Deze is nu nog hartstikke leeg maar zal automatisch gevuld worden door de code als de Range van de bladwijzer in Blokhaken (Range bladwijzer) staat.

Enne das eigenlijk het gehele eieren eten.
Het voordeel van deze methode is dat je de Ref-velden eindeloos kunt koppelen.

Je hebt dus éénmalig wat werk met alle bladwijzers (voor iedere soort éénmalig) te plaatsen en dus net zo veel kruisverwijzigingen te leggen als dat jij nodig hebt...

En daarna is het iedere keer weer genieten als alles netjes ingevuldt wordt via de code!

Nou zo moet het wel lukken lijkt me...:thumb:
 
Nou zo moet het wel lukken lijkt me...:(

Hoop niet dat je al moe van me wordt maar ik wordt wel moe van Word!

Tja... ik volg jou "stappenplan" en kom er niet uit!


Bij twee keer dezelfde naam:
* Ik open de template en heb alle tekst weggekieperd.
* Dan zet ik neer Geachte ALT+I+I
Ik kom dat in het scherm (Invoegen->Index&Inhoudsopgave.

Ik denk niet dat ik daar iets moet gaan intypen van bmName.


En wat moet ik nu eerst doen?
Kan ik gewoon Geachte (Invoegen-> Bladwijzer->bmNaam) invoegen of moet ik EERST een { REF bmName } verwijzing er op een of andere manier inkrijgen?

(Dit krijg ik wel voor elkaar als ik met kopieren en plakken speciaal ga werken maar dat is natuurlijk niet echt de goede manier)


Wel heb ik het voorelkaar gekregen om in de code wat velden bij te voegen en deze velden dan precies hetzelfde te noemen bij Invoegen->Bladwijzer-> toevoegen.


Zou het misschien te maken hebben met mijn word versie?
(Ik gebruik de nederlandse word 2000 versie.)
 
Hai, :D

Word niet gauw moe van mensen en van Word al helemaal niet...(Word is THE MAX!)

Maar goed alle mogelijkheden van Word kunnen je al gauw teveel worden als de oplossing dichtbij is...OF TE WEL HOUD VOL! :)

Hmm bij mij is ALT+I+I gewoon het bladwijzerscherm (invoegen/bladwijzer)

Dus ja dat moet je éénmalig doen en geef hem dan de naam bmName (voor naam)

Ok je hebt nu een bladwijzer in jou Word
De volgende stap is de Kruisverwijzing via methode uit vorig bericht. (deze kun je zo vaak maken als je wilt..naar die bladwijzer)

Kom je er nu nog niet uit plaats dan even het sjabloon waar je in bezig bent (of mail het naar me) dan kan ik tenminste zien waar het eventueel misgaat..

See Yah! :thumb:
Ps..mailadres blijft 1 dag staan!
Edit..Weg!
 
Laatst bewerkt:
Dan moet ik dus doen

<ALT> <Invoegen> <blaDwijzer> (ALT+I+D)
Dus dan deed ik al wel goed!!!

Ook heb ik geen
"Invoegen/Verwijzing/Kruisverwijzing"

Maar wel "Invoegen" "Kruisverwijzing..." maar die geeft dan niet de zojuist aangemaakte velden aan. Ik tob maandag weer verder.... in 't weekend probeer ik van mn computertje af te blijven... schijnt gezond te zijn.

Dus ik moet nu alleen nog zien uit te vinden hoe ik die refvelden in mijn word versie makkelijk kan maken en dan ben ik er!!!

Bedankt voor je reactie en ik ga maandag met frisse moed verder!
 
Hai, :D

Graag gedaan!

Ik kan niet raden welke Office-versie jij hebt en bij elke versie is er wel iets veranderd in de sneltoetsen/menu's/dialoogvensters...dus dat probleem blijf je altijd houden!!!

Ik gebruik voornamelijk 2002/2003 op mijn pc's en daar werkt het zoals omschreven..
Dus ik moet nu alleen nog zien uit te vinden hoe ik die refvelden in mijn word versie makkelijk kan maken en dan ben ik er!!!
Ok andere methode voor de REF: (volgens mij werkt het in 2000 ook zo)
* Kies invoegen/Veld
* Selecteer Links Ref
* Kies rechts bladwijzernaam (welke je gebruikt heb)
* Kies Ok
* Klaar! :)

Veel succes volgende week..:thumb:
 
Ha Joost!

Nou, het is helemaal gelukt hoor!

Ik kan zelf de broncode maken en de bladwijzer + "refvelden" plaatsen zoals ik ze wil hebben.

Heel hartelijk bedankt!


Nou heb ik alleen nog een probleempje:
Als ik een groot tekstvak maak met "txtOverig" en ik zet de eigenschap van dat tekstvak op "multiline: true" dan kan ik een regel invoeren maar zodra ik "ENTER" intoets dan spring hij naar de volgende tekstbox.

Ik wil dus eigenlijk dat ik dan gewoon nog een regel extra kan invoeren. Ik doe het nu met "CTRL"+"ENTER" maar dit vind ik niet zo'n handige oplossing.

Is hier een oplossing voor zodat ik ook met "ENTER" naar volgende regel kan springen en met "TAB" dan naar de volgende tekstbox?
Maar als daar geen oplossing voor is dan ben ik zo ook al heel tevreden hoor! :thumb: :love:
 
Hai, :D

Goed zo...graag gedaan!
Je zult er zelf het meest van opgestoken hebben en ik hoop dat je nog veel moois zult maken!

Je zat op de goede weg te denken met je MultiLine eigenschap maar je moet ook nog de EnterKeyBehaviour op True zetten en dan komt alles goed! :)

Zie bijlage
Succes! :thumb:
 

Bijlagen

Bedankt Joost!
Het is helemaal gelukt!
Toen je die tip gaf over die ENTER toets werkte heel de template prima!

Heel vriendelijk bedankt.
Er is dus veel meer mogelijk met Word dan dat je op het eerste gezicht denkt.
Als normale gebruiker gebruikte ik nooit de vb code.
Daar ga ik me toch eens wat verder in verdiepen.:thumb:
 
Hai, :D

Heel erg graag gedaan!

Wat er allemaal mogelijk is in Word gaat je verbeelding te boven..vooral de kracht van VBA is verreikend!

Dat je er nog maar vaak mee mag spelen..succes! :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan