Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

cursor direct in tekstvak

388 views
Skip to first unread message

Frits.van Leeuwen

unread,
Sep 23, 2009, 9:48:39 AM9/23/09
to
Hallo allemaal,

Ik heb een sjalboon in MS Word 2007 gemaakt. Daarin staan een aantal
gekopelde tekstvakken.
Ik heb hem nu even op het bureaublad opgeslagen, maar aals ik hem daar dan
open, krijg ik de cursor niet in het tekstvak, maar er ergens naast.
Hoe krijg ik de cursor bij het openen van het sjabloon direct in een
tekstvak?

Alvast bedankt,
Frits van Leeuwen


Dave

unread,
Sep 23, 2009, 10:47:02 AM9/23/09
to
Frits,

Bij mijn weten gaat dat niet. Word start altijd met de cursor net voor de
eerste letter of alinea waar er getypt kán worden (daarmee bedoel ik bijv.:
niet in beveiligde secties en niet de koptekst en dus ook niet in een
tekstvak). Jammergenoeg wordt de tekst IN een tekstvak blijkbaar niet gezien
als de eerste plaats waar er getikt kan worden en gaat de cursor automatisch
naar de eerst volgende lege regel (buiten een tekstvak).

Zelfs de volgende tip uit Help werkt niet bij een tekstvak: SHIFT+F5
Na het openen van een document, naar de plaats waar de invoegpositie zich
bevond toen het document de laatste keer werd gesloten.
Dit werkt wel bij tekst dat niet in een tekstvak staat. Maar als je voor het
laatst iets hebt getiks in een tekstvak, rekent Word daar niet mee. Het
schijnt ook niet uit te maken wat voor tekstomloop je gekozen hebt voor het
tekstvak. 't Werkt gewoon niet.

David

Frits.van Leeuwen

unread,
Sep 24, 2009, 2:34:59 AM9/24/09
to
Dave, bedankt voor je antwoord.

Maar is het dan misschien mogelijk om met VBA de cursorbediening op de goede
plek te krijgen? Misschien dat ik dan ook een bladwijzer in het tekstvak
moet plaatsen.
En hoe start ik bij het starten van het sjabloon de VBA-code?

"Dave" <Da...@discussions.microsoft.com> schreef in bericht
news:658E808C-421A-423B...@microsoft.com...


> Frits,
>
> Bij mijn weten gaat dat niet. Word start altijd met de cursor net voor de

> eerste letter of alinea waar er getypt k�n worden (daarmee bedoel ik

Dave

unread,
Sep 24, 2009, 3:57:01 AM9/24/09
to
Frits,

Dat is allemaal mogelijk. Je kunt zelfs een macrotje opnemen, dat het eerste
tekstvak opzoekt en er in klikt. Ik weet niet precies hoe je een macro moet
"dwingen" om bij openen van het sjabloon "af te spelen" (waarschijnlijk iets
met autoexec).

MAAR, je wilt nu VBA gaan (laten) schrijven of een macro opnemen om een
probleem op te lossen dat met 1 klik van de muis opte lossen is. Als de
tekstomloop van het tekstvak contour is, dan kun je (o.a. door de bovenmarge
wat te verkleinen) zorgen dat er een lege alinea (met een Enter) boven het
eerste tekstvak komt. Bij het openen van het sjabloon (of doc) zal de cursor
dáár flitsen. Met 1 muisbeweging en 1 klik zit je in het eerste tekstvak. Een
macro of vba code om dat voor je (of de gebruiker) te regelen, is in dat
geval wel ERG overdreven, toch?

David

"Frits.van Leeuwen" wrote:

> Dave, bedankt voor je antwoord.
>
> Maar is het dan misschien mogelijk om met VBA de cursorbediening op de goede
> plek te krijgen? Misschien dat ik dan ook een bladwijzer in het tekstvak
> moet plaatsen.
> En hoe start ik bij het starten van het sjabloon de VBA-code?
>
> "Dave" <Da...@discussions.microsoft.com> schreef in bericht
> news:658E808C-421A-423B...@microsoft.com...
> > Frits,
> >
> > Bij mijn weten gaat dat niet. Word start altijd met de cursor net voor de

> > eerste letter of alinea waar er getypt kán worden (daarmee bedoel ik

jan

unread,
Sep 24, 2009, 3:59:40 AM9/24/09
to
Frits,

Een mogelijkheid:

In een algemene module plaats je deze procedure:

Sub CursorZetten()
ActiveDocument.StoryRanges(wdTextFrameStory).Select
Selection.Collapse wdCollapseEnd
End Sub


en in ThisDocument zet je:

Private Sub Document_New()
CursorZetten
End Sub

Private Sub Document_Open()
CursorZetten
End Sub


Daarmee wordt de cursor aan het eind van de tekst in de gekoppelde
tekstvakken geplaatst.
Als je de cursor bij de start van de tekst wilt hebben, dan gebruik je deze
regel:

Selection.Collapse wdCollapseStart

als laatste regel in de procedure CursorZetten

Jan


Frits.van Leeuwen

unread,
Sep 24, 2009, 4:07:43 AM9/24/09
to
Bedankt voor de bevestiging dat het mogelijk is. Nu nog vinden hoe.

Het klinkt inderdaad overdreven, maar ik wil mijn gebruikers zo minmogelijk
laten doen. Iedere muisklik kan vragen en of problemen oproepen. Daarom wil
ik dat zo regelen. Tevens wil ik in de toekomst meer gaan doen met VBA. Er
moet een op maat gemaakt sjablonen systeem komen. Waarschijnlijk ook
aangestuurd via formulieren in Access of InfoPath.

"Dave" <Da...@discussions.microsoft.com> schreef in bericht

news:5A99B7CA-A4D2-4012...@microsoft.com...


> Frits,
>
> Dat is allemaal mogelijk. Je kunt zelfs een macrotje opnemen, dat het
> eerste
> tekstvak opzoekt en er in klikt. Ik weet niet precies hoe je een macro
> moet
> "dwingen" om bij openen van het sjabloon "af te spelen" (waarschijnlijk
> iets
> met autoexec).
>
> MAAR, je wilt nu VBA gaan (laten) schrijven of een macro opnemen om een
> probleem op te lossen dat met 1 klik van de muis opte lossen is. Als de
> tekstomloop van het tekstvak contour is, dan kun je (o.a. door de
> bovenmarge
> wat te verkleinen) zorgen dat er een lege alinea (met een Enter) boven het
> eerste tekstvak komt. Bij het openen van het sjabloon (of doc) zal de
> cursor

> d��r flitsen. Met 1 muisbeweging en 1 klik zit je in het eerste tekstvak.

> Een
> macro of vba code om dat voor je (of de gebruiker) te regelen, is in dat
> geval wel ERG overdreven, toch?
>
> David
>
> "Frits.van Leeuwen" wrote:
>
>> Dave, bedankt voor je antwoord.
>>
>> Maar is het dan misschien mogelijk om met VBA de cursorbediening op de
>> goede
>> plek te krijgen? Misschien dat ik dan ook een bladwijzer in het tekstvak
>> moet plaatsen.
>> En hoe start ik bij het starten van het sjabloon de VBA-code?
>>
>> "Dave" <Da...@discussions.microsoft.com> schreef in bericht
>> news:658E808C-421A-423B...@microsoft.com...
>> > Frits,
>> >
>> > Bij mijn weten gaat dat niet. Word start altijd met de cursor net voor
>> > de

>> > eerste letter of alinea waar er getypt k�n worden (daarmee bedoel ik

Frits.van Leeuwen

unread,
Sep 24, 2009, 4:59:57 AM9/24/09
to
Jan, bedankt voor je antwoord.
Het klinkt goed zoals jij mij deze aanwijzingen geeft, maar toch werkt het
niet bij mij. Ik krijg de melding:

Compileerfout:
Sub of Function is niet gedefineerd

Met een blauwe balk over Cursorzetten in Private Sub Document_New()

"jan" <j...@releerf.nl> schreef in bericht
news:O0CrvzOP...@TK2MSFTNGP04.phx.gbl...

jan

unread,
Sep 24, 2009, 5:48:26 AM9/24/09
to
Frits,

Dan lijkt het erop dat je de betreffende Sub niet hebt geplaatst of dat je
deze wel hebt geplaatst maar niet wordt herkend.

De procedure

Sub CursorZetten()
ActiveDocument.StoryRanges(wdTextFrameStory).Select
Selection.Collapse wdCollapseEnd
End Sub

moet in een algemene module staan.

Misschien moet je anders het volgende proberen:

Public Sub CursorZetten()


ActiveDocument.StoryRanges(wdTextFrameStory).Select
Selection.Collapse wdCollapseEnd
End Sub

Wellicht dat Office 2007 iets anders omgaat met procedures hoewel dat mij
vreemd lijkt.

Jan


Dave

unread,
Sep 24, 2009, 6:12:07 AM9/24/09
to
Frits,

Toegegeven, sommige gebruikers zijn dom of computer ondeskundig. Door het ze
op deze manier makkelijk te maken, draag je volgens mij wel bij aan het dom
of ondeskundig blijven.

Ik weet niet precies wat je aan het maken bent en je opmerkingen over
aansturen van formulieren door Access, doet me vermoeden, dat je met iets
anders bezig bent, dan wat je eerste post(s) mij deed vermoeden. Voeg jij via
Invoegen / Tekstvakken die tekstvakken in, of voeg je via de Formulier
werkbalk tekstvakken in? Twee totaal verschillende dingen, die MS besloten
heeft om dezelfde naam te geven (stom!). Je zei in eerste instantie wel dat
de tekstvakken gekoppeld of gelinkt waren, waardoor ik dus dacht (en nog
steeds denk) aan Invoegen / Tekstvakken.
Daarbij stelde ik me een nieuwsbrief layout voor, met feitelijk twee
kolommen, die je met twee lange, gekoppelde tekstvakken (misschien zelfs
meerdere blz.) hebt gemaakt. Of misschien een aantal rechthoekige teksvakken,
op een speelse manier geplaatst op een A4. Meestal heeft de eerste blz. van
een nieuwsbrief (maar ook als het gewoon om een Memo gaat) een kop met logo
en andere algemene gegevens in de koptekst (eerste pagina afwijkend). Als je
bijv. de datum van de publicatie of het Memo uit de koptekst haalt en deze
als gewone tekst boven de tekstvakken plaatst (voor mijn part een autodatum),
dan zet Word bij het openen van het sjabloon (of doc) de cursor altijd net
voor de datum op de eerste regel. Met 1 klik zit men in het eerste tekstvak
(zonder macro of VBA).

Ik zie dat Jan je VBA code aangereikt heeft en dat is natuurlijk prima
(hoewel het nog niet schijnt te werken).

Waarom ga ik hier over door, terwijl je al de hulp begint te krijgen, die je
wilde hebben? Wellicht dat Jan kan bevestigen of dit nog steeds het geval is,
maar ik heb sjablonen gemaakt met opgenomen macro's en wat ingetikte VBA en
het nadeel van DISTRIBUTIE van dergelijke sjablonen is (althans bij 2003 en
eerder, ik weet niet hoe 2007 hier mee omgaat), dat op iedere computer de
Macrobeveiliging eerst op laag moet worden gezet voordat die macro's
geaccepteerd worden. Vervolgens moet elke macro of VBA (is dat niet
hetzelfde, Jan?) 1x ingezet/gebruikt/gedraaid worden en daarna mag de
macrobeveiliging weer naar waar hij voorheen stond. Er zijn weinig
systeembeheerders, die gelukkig zijn met deze procedure - noch het verlagen
van beveiligen, noch al het werk bij elke computer. Wellicht is het anders
als het werkgroep sjablonen gaan worden; daar heb ik geen ervaring mee? Het
is wel iets om over na te denken!

Als je niet een nieuwsbrief aan het ontwerpen bent, maar een sjabloon met
kleine tekstvakken waar men bijv. in een Memo, naam, afdeling, datum,
onderwerp en uiteindelijk de tekst van het memo kan invullen, dan ben je met
Invoegen / Tekstvakken op de verkeerde manier bezig! Dan moet je een
Formulier maken, waarbij je gebruik maakt van de Formulieren werkbalk om
tekstvakken (in te stellen als een datum, getal, tekst, enz.) in te voegen.
Hierbij gaat de cursor WEL automatisch naar het eerste blanko tesktvak
(zelfde naam, ander beest) bij het openen van het formulier(sjabloon). Je
kunt veel leren over formulieren in Help, maar wat je soms niet meteen ziet,
is dat een formulier pas werkt nadat hij beveiligd is. Je kunt in een
formulier secties maken, die je onbeveiligd laat, zodat bijv. bij een Memo,
men net zo veel kan typen als men wil.

David

"Frits.van Leeuwen" wrote:

> Bedankt voor de bevestiging dat het mogelijk is. Nu nog vinden hoe.
>
> Het klinkt inderdaad overdreven, maar ik wil mijn gebruikers zo minmogelijk
> laten doen. Iedere muisklik kan vragen en of problemen oproepen. Daarom wil
> ik dat zo regelen. Tevens wil ik in de toekomst meer gaan doen met VBA. Er
> moet een op maat gemaakt sjablonen systeem komen. Waarschijnlijk ook
> aangestuurd via formulieren in Access of InfoPath.
>
>
>
> "Dave" <Da...@discussions.microsoft.com> schreef in bericht
> news:5A99B7CA-A4D2-4012...@microsoft.com...
> > Frits,
> >
> > Dat is allemaal mogelijk. Je kunt zelfs een macrotje opnemen, dat het
> > eerste
> > tekstvak opzoekt en er in klikt. Ik weet niet precies hoe je een macro
> > moet
> > "dwingen" om bij openen van het sjabloon "af te spelen" (waarschijnlijk
> > iets
> > met autoexec).
> >
> > MAAR, je wilt nu VBA gaan (laten) schrijven of een macro opnemen om een
> > probleem op te lossen dat met 1 klik van de muis opte lossen is. Als de
> > tekstomloop van het tekstvak contour is, dan kun je (o.a. door de
> > bovenmarge
> > wat te verkleinen) zorgen dat er een lege alinea (met een Enter) boven het
> > eerste tekstvak komt. Bij het openen van het sjabloon (of doc) zal de
> > cursor

> > dáár flitsen. Met 1 muisbeweging en 1 klik zit je in het eerste tekstvak.

> > Een
> > macro of vba code om dat voor je (of de gebruiker) te regelen, is in dat
> > geval wel ERG overdreven, toch?
> >
> > David
> >
> > "Frits.van Leeuwen" wrote:
> >
> >> Dave, bedankt voor je antwoord.
> >>
> >> Maar is het dan misschien mogelijk om met VBA de cursorbediening op de
> >> goede
> >> plek te krijgen? Misschien dat ik dan ook een bladwijzer in het tekstvak
> >> moet plaatsen.
> >> En hoe start ik bij het starten van het sjabloon de VBA-code?
> >>
> >> "Dave" <Da...@discussions.microsoft.com> schreef in bericht
> >> news:658E808C-421A-423B...@microsoft.com...
> >> > Frits,
> >> >
> >> > Bij mijn weten gaat dat niet. Word start altijd met de cursor net voor
> >> > de

> >> > eerste letter of alinea waar er getypt kán worden (daarmee bedoel ik

Frits.van Leeuwen

unread,
Sep 24, 2009, 6:55:50 AM9/24/09
to
Perfect... Het is gelukt.

De oplossing was

Public Sub CursorZetten()
ActiveDocument.StoryRanges(wdTextFrameStory).Select
Selection.Collapse wdCollapseStart
End Sub

Private Sub Document_New()
CursorZetten
End Sub

Private Sub Document_Open()
CursorZetten
End Sub

alle 3 in de TemplateProject te zetten.
Nu kan ik weer verder naar de volgende stap.

Dave en Jan allebei bedankt.


"jan" <j...@releerf.nl> schreef in bericht

news:u0l2gwPP...@TK2MSFTNGP02.phx.gbl...

Dave

unread,
Sep 24, 2009, 7:04:01 AM9/24/09
to
Frits (en Jan),

Heb je mijn waarschuwing en (vragen aan Jan) over macro beveiliging bij
distributie van sjablonen nog gezien? :-)

David

jan

unread,
Sep 24, 2009, 7:20:31 AM9/24/09
to
Dave,

Macro's zijn, bij Word, procedures onder VBA die aanroepbaar zijn vanuit het
venster macro's (Alt+F8).
Niet alle VBA procedures, en functies al helemaal niet, zijn aanroepbaar in
het venster macro's, bv procedures die beginnen met Private Sub worden niet
als macro's herkend.

Wat betreft de macrobeveiliging, daarvoor geldt eigenlijk dat deze altijd op
laag moet staan om zonder tussenkomst van de gebruiker VBA uit te kunnen
voeren.
Als je mag aannemen dat een bedrijfsnetwerk goed is beveiligd, ook tegen
macro virussen dus, dan zal m.i. Office met een macrobeveiliging op laag
voldoende zijn beschermd.

Overigens wordt onder Access met macro's iets anders verstaan en hebben die
niets met VBA te maken, behalve dat er een mogelijkheid is om deze (niet
VBA) macro's om te zetten naar VBA.

Jan

Frits.van Leeuwen

unread,
Sep 24, 2009, 7:34:00 AM9/24/09
to
Dave, bedankt voor het uitwijden, ik heb wel wat kennis van sjablonen uit de
tijd dat ik MS Word 97 gebruikte. Dus globaal weet ik wat kan en wat niet.
Maar ook hoe ik sjablonen moet gebruiken/opzetten. Echter mis ik de kennis
van VBA in Word. In Access weet ik veel meer van VBA.
In Access kan ik een systeem opbouwen waarbij de gebruiker herkent wordt, en
a.d.h. daar van worden instellingen aan of uit gezet. Vervolgens kan de
gebruiker een aantal velden invullen, die daarna in een MS Word sjabloon
worden overgenomen. Uit eindelijk wordt dit gecombineerd met een andere
database. En is het de bedoeling dat de gebruiker alleen de documenten maar
hoeft te kiezen.

Tekstvakken (waar ik het over had) heb ik in word inderdaad met invoegen er
in gezet. Jouw eerste gedachten waren dus wel juist.
Nu gaat het om een boekje van 4 A5 pagina's. Deze moet op de 4e pagina een
vaste tekst hebben. Dus ik heb 5 tekstvakken. maar alleen de eerste 4 zijn
gekoppeld.
Ik weet eigenlijk niet of ik het document kan beveiligen in de zin dat de
gebruiker alleen de eerste 4 tekstvakken kan invullen en de rest niet.

"Dave" <Da...@discussions.microsoft.com> schreef in bericht

news:C160C362-6D7E-4924...@microsoft.com...

>> > d��r flitsen. Met 1 muisbeweging en 1 klik zit je in het eerste

>> > tekstvak.
>> > Een
>> > macro of vba code om dat voor je (of de gebruiker) te regelen, is in
>> > dat
>> > geval wel ERG overdreven, toch?
>> >
>> > David
>> >
>> > "Frits.van Leeuwen" wrote:
>> >
>> >> Dave, bedankt voor je antwoord.
>> >>
>> >> Maar is het dan misschien mogelijk om met VBA de cursorbediening op de
>> >> goede
>> >> plek te krijgen? Misschien dat ik dan ook een bladwijzer in het
>> >> tekstvak
>> >> moet plaatsen.
>> >> En hoe start ik bij het starten van het sjabloon de VBA-code?
>> >>
>> >> "Dave" <Da...@discussions.microsoft.com> schreef in bericht
>> >> news:658E808C-421A-423B...@microsoft.com...
>> >> > Frits,
>> >> >
>> >> > Bij mijn weten gaat dat niet. Word start altijd met de cursor net
>> >> > voor
>> >> > de

>> >> > eerste letter of alinea waar er getypt k�n worden (daarmee bedoel ik

Frits.van Leeuwen

unread,
Sep 24, 2009, 7:39:32 AM9/24/09
to
Ja, ik hou niet van die beveiliging. Maar daar bedenk ik wel een oplossing
voor.
Een ander risico vind ik spannender. De gebruikers hebben verschillende
instellingen. Die los ik wel op als ik daar tegen aan loop. Ik weet nu nog
niet hoe, maar wellicht dat je later daar nog wel vragen van mij over ziet
in deze nieuwsgroep.

"Dave" <Da...@discussions.microsoft.com> schreef in bericht

news:289394C5-1E39-4E0B...@microsoft.com...

0 new messages