Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

document verwijzing in VBA

Pagina: 1
Acties:

  • Jackbq
  • Registratie: Augustus 2001
  • Laatst online: 19-11 22:17
Via een VBA code worden er tabellen in een document aangepast.
Dit gaat op de volgende manier:

1. ik open de excel, met hierin overzicht van alle word bestanden.
2. kies het word bestand wat nodig is.
3. het word bestand opent en de macro die de tabel aanpast wordt afgestart.

in office 2003 werkte dit prima door naar het document te verwijzen met doc = activedocument.
daara alle verwijzingen afvangen met doc.

in office 2007 werkt dit echter niet meer....
activedocument verwijst naar de excel file ipv de zojuist geopende word
this.document verwijst naar de dot file met daarin de template (master) voor de macro's

welke code kan ik gebruiken om naar het word document te verwijzen?

googelen op active document of thisdocument geeft zoveel hits dat ik door de
bomen het bos niet meer zie.

Tevens heb ik eraan gedacht om de bestandsnaam mee te geven om er zo focus op te krijgen, maar dit gaat niet omdat het 1 macro is voor een tal van verschillende word files.

<edit>
ik kom ook nog wat pagina's tegen over het feit dat je geen activedocument zou moeten gebruiken.
Dan raden ze aan om de documenten vooraf verschillende namen te geven, en op die manier te bewerken:


Set yadda = Documents("yadda.doc")
Set what = Documents("whatever.doc")
Set Ho = Documents("HoHum.doc")
Set NewGuy = Documents.Add Template:="U:Gee\Templates\Yipee.dot"

Bron: http://www.tek-tips.com/v...ad.cfm?qid=1627848&page=2



Helaas gaat dit volgens mij niet werken voor mij, omdat ik niet steeds dezelfde file bewerk, maar een file open vanuit excel.....
Ik zal dus de waarde van Activedocument moeten aanpassen, of dit op een andere manier meegeven.

[ Voor 25% gewijzigd door Jackbq op 19-08-2011 15:10 ]


  • Jackbq
  • Registratie: Augustus 2001
  • Laatst online: 19-11 22:17
niemand?

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Set yadda = Documents("yadda.doc")
Dat kan je toch nog steeds gebruiken? Ik neem aan dat de filename in de Excel-sheet staat.

Als je alleen Excel gebruikt om een tabel bij te houden, zou je er overigens voor kunnen kiezen om Excel achterwege te laten en ook dat in Word te doen. Alleen als het echt moet ActiveDocument (en andere "GUI-activiteiten" zoals .Activate, etc.) niet gebruiken vind ik in ieder geval een goed streven..

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Jackbq
  • Registratie: Augustus 2001
  • Laatst online: 19-11 22:17
F_J_K schreef op woensdag 24 augustus 2011 @ 11:06:
[...]

Dat kan je toch nog steeds gebruiken? Ik neem aan dat de filename in de Excel-sheet staat.
Nee want de bestandsnaam is afhankelijk van de link die je kiest.
Dus laten verijzen naar een vaste file gaat helaas niet lukken.

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Je moet natuurlijk geen vaste verwijzing nemen, maar die afhankelijk maken van de selectie. Lees uit welk file de gebruiker kiest, en gebruik die als parameter van Documents()

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)