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

Reeds geopend Word-document controleren of hij geopend is.

Status
Niet open voor verdere reacties.

Fredemel

Gebruiker
Lid geworden
2 jun 2008
Berichten
123
Hallo,
Op welke manier kan ik voorkomen dat een reeds door VBA-Excel geopend word-document niet voor de tweede keer wordt geopend. Of,.....
Op voorhand dit voorkomen door eerst Word volledig te sluiten (zonder opslaan) zodat het te openen bestand sowieso geopend kan worden.

Ik heb allerlei code gevonden op internet, maar dat werkt niet.... Misschien/wellicht dat ik wat fout doe.... Graag jullie hulp.
Bij voorbaat dank....
Mvg Fred
 
Als je even laat zien wat je gevonden hebt en waarom het niet werkt dan is de vraag wat beter te beantwoorden. Verder lijkt mij dit niet zo'n hele zinvolle actie:
door eerst Word volledig te sluiten (zonder opslaan)
 
Wat ik gevonden heb:

Code:
The code which you can use is –

Option Explicit

Sub CreateNewWordDoc()
Dim i As Integer
Dim wrdApp As Object, wrdDoc As Object

Set wrdApp = CreateObject(“Word.Application”)
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Add

With wrdDoc
For i = 1 to 100
.Content.InsertAfter “Here is an example test line #” &i
.ContentInsertParagraphAfter
Next i
If Dir(“B:\Test\MyNewWordDoc.docx”) <> “” Then Kill “B:\Test\MyNewWordDoc.docx”

.SaveAs (“B:\Test\MyNewWordDoc.docx”)
.Close
End With
wrdApp.Quit

Set wrdDoc = Nothing
Set wrdApp = Nothing

End Sub

en deze ook:

Code:
Public Sub closeWord()

'Requires reference to Word object library
Dim oWord As Word.Application

Do

Set oWord = GetObject(Class:="Word.Application")

If Not oWord Is Nothing Then
    oWord.Quit False
    Set oWord = Nothing
End If

Loop Until oWord Is Nothing

End Sub

Maar dat werkt niet bij mij. En dan uiteraard de variabelen aangepast voor mijn situatie.
Ik hoop dat er een oplossing is....... Bvd
 
Gebruik:

Code:
with Getobject("G:\OF\voorbeeld.docx")
   - - - -
end with
 
Beiden dank!

VenA:
Alleen in 2010/2013 werkt de bijlage niet. Ik krijg de melding: "ongeldige procedure of ongeldig argument"

Als ik een worddoc maak (test.docx) en ik heb alle paden aangepast, krijg ik wél de melding "document is geopend"
Aangezien de bijlage een .xls bestand is, is wellicht de versie van excel niet compatible......
Ik heb dit vaker, want ik gebruik 2010 + 2013 in 64 bit... Alleen hoe dit op te lossen en/of aan te passen weet ik niet

snb:
Ik snap niet wat ik moet doen met de code: "with.... etc"

Nu is het wel zo, dat ik een andere oplossing heb gevonden in het gebruik van een hyperlink naar 'n docx..... Als het bestand
dan reeds open is "gooit" excel/word het laatst aangeroepen exemplaar er "gewoon overheen". Geen melding niks.... Maar ja,...
da's eigenlijk niet wat ik wil.....

Dus,... als iemand een oplossing heeft..........???
 
Gewoon uitproberen.

En in de hulpbestanden van de VBEditor nalezen wat Getobject is/doet.
 
snb,

ik heb deze code geplaatst, maar doet niets. Wel wordt de MsgBox getoond, maar hij opent niet het bestaand worddocument...
Code:
Sub openTest()
    With GetObject("D:\test\test.docx") 'die bestaat uiteraard...
        MsgBox "bestand is geopend"
    End With
End Sub
 
Dat doet ie wel
Code:
Sub openTest()
    With GetObject("D:\test\test.docx") 'die bestaat uiteraard...
        MsgBox .content
    End With
End Sub
 
Dag snb

Deze code opent niet het word-document.
Ik krijg wel de melding "Test Word"
Ik zoek de code om een word-document te openen en..
Als ie reeds geopend is.... de actie annuleert (met of zonder MsgBox i.o.d.)
"Da's alles"... ;-))
Ik hoop dat er een oplossing voor is....
 
Dan is de inhoud van het geopende bestand "Test Word".
Als je niet begrijpt dat je de oplossing al hebt verdient het aanbeveling eens een basisboek VBA te bestuderen.
 
Enne.....?

Nou,...... ik ben echt wel een leek met VBA maar ik ben niet blind.....
Word wordt écht NIET geopend op mijn PC.......

En inderdaad ".content" levert in de Msgbox wel de inhoud van het doc, maar dat is niet mijn opzet.
 
Helaas,.... Ook niet.
Als ik het goed begrijp doet de macro het bij jou wel....?
32 bit of ook 64 bit....?
 
Jammer

Geen oplossingen gevonden/gekregen.
Ik gebruik het alternatief.... Hyperlink.
Als ik tijd en zin heb zal ik me er nog maar eens over buigen...
Voor diegene die het betreft: "Bedankt...!"
Fred
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan