• 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.

AUtomatisch Word-doc aanmaken 3

Status
Niet open voor verdere reacties.

HarryBee

Gebruiker
Lid geworden
8 jul 2008
Berichten
240
Hallo iedereen,

Ik heb onlangs de oplossing voor mijn probleem mogen ontvangen. Als ik in een veld van kolom B een nummer tik, dan verschijnt in kolom A een hyperlink naar een Word-doc die dezelfde naam heeft als het nummer dat ik heb ingetikt. Dit werkt.

Ik heb naar aanleiding hiervan nog twee vragen.:confused:

1) Als ik een geplaatst nummer en link verwijdert en ik tik in de plaats daarvan een nieuw nummer, dan wordt er geen nieuw Word-doc aangemaakt en ook geen link. Wat doe ik fout?

2) Als ik vanuit een ander werkblad een aantal nummers kopieer naar kolom B, dan wil ik graag dat er dan ook van deze nummers een Word-doc en link gemaakt wordt.

Weet iemand voor mij de oplossing?

Heel veel dank

Groeten Harry

PS ik kan vanuit mijn werkplek geen bestanden bijsluiten. (block) Het bestandje met de code staat bij mijn vraag "Automatisch Worddoc aanmaken 2"
 
Kijk in de hulp-funktie van Excel hoe je met VBA een nieuwe hyperlink moet maken.

Kijk bij Word hoe je in VBA een nieuw document kunt maken.

Kijk bij 'koppeling tussen Office-applicaties' hoe je dat in Word realiseert met VBA vanuit Excel.
 
Kijk in de hulp-funktie van Excel hoe je met VBA een nieuwe hyperlink moet maken.

Kijk bij Word hoe je in VBA een nieuw document kunt maken.

Kijk bij 'koppeling tussen Office-applicaties' hoe je dat in Word realiseert met VBA vanuit Excel.

Beste Snb,

Het automatisch aanmaken van een doc lukt wel, de hyperlink ook. Het beveiligen tegen overschrijven indien er een dubbele naam wordt gebruikt, lukt me ook. Het enige waar ik mee zit is dat de cel waar ik een naam verwijdert niet wordt ge-reset. Dus als ik daar een nieuwe naam invult, dan gebeurd er dus niets. Dit kan ik ook niet in de help terugvinden. Ik zoek dus een oplossing voor dit probleem. Misschien een suggestie? Alvast hartelijk dank. Groeten Harry
 
Je kunt er ook een sjabloon van maken zodat het bestand altijd leeg is als je deze opent.
In cominatie met het blad "inhoud" uit deze vraag http://www.helpmij.nl/forum/showthread.php?t=370597
kun je dan je bestanden bekijken en op een ander tabblad aanmaken

Wiki,

Dit is niet precies wat ik bedoel, maar toch bedankt voor het meedenken. Kleine uitleg:
In kolom A zet ik een projectnummer neer. Als je die cel verlaat, wordt er in kolom B een link geplaatst die verwijst naar een gelijktijdig aangemaakt Doc. De bedoeling is dat in die doc alle van belang zijnde info wordt geplaatst die met het betreffende project te maken hebben. Als ik op de volgende regel bijvoorbeeld hetzelfde projectnummer in tik, dan verschijnt een vraag in beeld "Bestand overschrijven ?" Ja/Nee.
Stel dat ik het verkeerde nummer in tik, en ik wil dat herstellen, (inmiddels is er dan al een link en doc van dat nummer aangemaakt) dan wordt van het herstelde nummer géén nieuwe link en doc aangemaakt. Dit is dus mijn probleem.

Misschien een idee? Alvast bedankt.

Groeten Harry
 

Bijlagen

Heb je goed gekeken naar inhoud? Hierin staat naar ieder bestaand document in de map en submappen een hyperlink.
 
Heb je goed gekeken naar inhoud? Hierin staat naar ieder bestaand document in de map en submappen een hyperlink.

Wiki,

Ik heb gekeken, maar ik krijg het niet aan de praat. Kan jij me misschien vertellen om welk stukje code het gaat en hoe ik dat kan toepassen zodat het door mij ingevulde nummer in kolom A. in kolom B voorzien wordt van een link naar een automatisch aangemaakt Worddoc? snapperniksvan snapperniksvan

Alvast bedankt.

Groeten Harry
 
Had je deze code zelf gemaakt ?

If Target.Column = 1 And ActiveSheet.UsedRange.Rows.Count = Target.Row Then

Wat staat hier ?

1. als de gewijzigde cel zich in kolom A bevindt
2. én als de gewijzigde cel de laatste cel van kolom A is

Deze aktie wordt dus alleen maar ondernomen in de laatst gevulde cel van kolom A.
Latere wijzigingen in andere cellen dan de laatste worden niet gevolgd door door jou gewenste akties.
Het is gewoon een kwestie van lezen.
 
Had je deze code zelf gemaakt ?

If Target.Column = 1 And ActiveSheet.UsedRange.Rows.Count = Target.Row Then

Wat staat hier ?

1. als de gewijzigde cel zich in kolom A bevindt
2. én als de gewijzigde cel de laatste cel van kolom A is

Deze aktie wordt dus alleen maar ondernomen in de laatst gevulde cel van kolom A.
Latere wijzigingen in andere cellen dan de laatste worden niet gevolgd door door jou gewenste akties.
Het is gewoon een kwestie van lezen.


:o Beste Snb,

Wat ik nu gedaan heb, zorgt er wel voor dat lukt wat ik wil, alleen krijg ik steets een foutmelding na " Else" . Aangezien het gebruik van VBA bij mij nog in de kinderschoenen staat, snap ik bepaalde dingen nog niet goed. Zou je mij misschien het kunnen uitleggen?

Thankx

Groeten Harry
 
Ik kan lastig uitleggen wat ik niet weet.
Welke code gebruik je nu ?
 
Het probleem is, dat je geen idee hebt waarmee je bezig bent.
Dat betekent, dat je volledig afhankelijk bent van wat je hier wordt aangereikt, en dat je niet kunt beoordelen of dat goed/fout/handig/onhandig is.
Bij iedere wens moet je een beroep op een ander doen.
Als ik jouw code bekijk, dan kan hetzelfde in 3 regels.
Suggestie: als je iets met VBA wil, begin dan bij het begin (internet-cursus, een goed boek). Dat duurt even, maar daarna bespaart het je enorm veel tijd.
Ik vind het geen zin hebben je 'oplossingen' aan te reiken die je niet begrijpt.
 
Het probleem is, dat je geen idee hebt waarmee je bezig bent.
Dat betekent, dat je volledig afhankelijk bent van wat je hier wordt aangereikt, en dat je niet kunt beoordelen of dat goed/fout/handig/onhandig is.
Bij iedere wens moet je een beroep op een ander doen.
Als ik jouw code bekijk, dan kan hetzelfde in 3 regels.
Suggestie: als je iets met VBA wil, begin dan bij het begin (internet-cursus, een goed boek). Dat duurt even, maar daarna bespaart het je enorm veel tijd.
Ik vind het geen zin hebben je 'oplossingen' aan te reiken die je niet begrijpt.

Beste Snb,

Je hebt gelijk, alles wat ik tot nu toe gemaakt heb, is met formules in cellen tot stand gekomen. VBA was tot voor kort voor mij abracadabra. Nu is het nog abraca.
Ik ben dus naar mijn gevoel op de beterende hand. Ik snap heus wel dat ik me meer moet verdiepen in VBA. Maar soms moet je in gevecht met de tijd die je ergens voor hebt. Zo ook met het vinden voor een oplossing voor dit probleempje. Dingen die ik nu nog niet begrijp, worden duidelijk zodra ik hulp krijg in de vorm van een voorbeeld. Ik weet zeker dat dit forum er juist voor is om de zogenaamde "nietsweter" wegwijs te maken in materie van Excel. Toch? Voor alle duidelijkheid, ik begrijp je reactie. In ieder geval bedankt voor je tijd. :thumb:Misschien is er iemand anders die mij de oplossing kan aanreiken?:confused:

Groeten Harry
 
Je komt in de Else tak van de If als het bestand nog niet bestaat.

Bij mij bestaat dat bestand ook niet.

Als ik de code uitvoer, krijg ik geen foutmelding en wordt er gewoon een leeg bestandje aangemaakt in die map.

Wigi
 
Je komt in de Else tak van de If als het bestand nog niet bestaat.

Bij mij bestaat dat bestand ook niet.

Als ik de code uitvoer, krijg ik geen foutmelding en wordt er gewoon een leeg bestandje aangemaakt in die map.

Wigi

Hallo Wigi,

Het klopt inderdaad dat er geen foutmelding komt en dat er een leeg bestand wordt aangemaakt. Dat is dus goed. Er is alleen één maar. Als je de naam uit kolom A verwijderd en de aangemaakte link ook, dan wordt er geen nieuw bestand en link aangemaakt als je een nieuwe naam op die plek invult. Als je het stukje code die verwijst naar de laatste cel in kolom A weg laat, dan wordt er wel een nieuw document aangemaakt en ook een nieuwe link alleen krijg je de foutmelding (Fout 4198 opdracht mislukt) en het lukt me niet om dit eruit te krijgen. Weet je misschien raad?

Alvast bedankt.

Groeten Harry
 
Harry, probeer eens met helemaal bovenaan je code volgende regel te plaatsen
Code:
On Error Resume Next

Mvg

Rudi
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan