aaliyan
Messages postés104Date d'inscriptionsamedi 12 mars 2005StatutMembreDernière intervention30 avril 2007
-
27 avril 2007 à 10:34
aaliyan
Messages postés104Date d'inscriptionsamedi 12 mars 2005StatutMembreDernière intervention30 avril 2007
-
27 avril 2007 à 11:28
Bonjour, la macro est faites sous access.
En fait, je teste si un fichier est ouvert, s'il est ouvert, j'aimerais l'afficher en premier plan, puis quitter word et non simplement fermer le fichier. Le problème est que je n'arrive pas à l'afficher au premier plan et je n'arrive pas à quitter word, mais simplement fermer le fichier.
Chemin = .FoundFiles(i)
If FichierEstOuvert(Chemin) Then
Set DocWord = GetObject(Chemin)
DocWord.Activate
'La afficher en premier plan
.
.
.
DocWord.Close True
'Quitter word
Set DocWord = Nothing
End if
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 avril 2007 à 10:42
Salut,
Normalement quand tu ouvre un Fichier Word tu as un Objet de type Word.Application qui s'ouvre aussi, C'est lui qu'il faut fermer si tu veux quitter Word.
'ouverture du document word modèle et enregistrement sous le nom du dossier
'Démarrer Word
Dim wdapp As Object
Const CHEMIN_IMAGE As String = "\Cartes_utilisateurs"
Const CHEMIN_DOCUMENT As String = "\DOCUMENT_PUBLIPOSTES\FICHES_CLF_PUBLIPOSTEES\Fiche_CLF_DOSSIER_"
Const WdGoToBookmark = -1
Const WdStory = 6
Dim curseur As Object
Set wdapp = CreateObject("Word.application")
' le code ci-dessous permet de faire apparaitre word en premier plan ou pas, false -> non et true -> oui
wdapp.Visible = False
'on ouvre le document
wdapp.Documents.Open CurrentProject.Path & "\...\MISE_EN_VALEUR\FicheMEV2.doc"
With wdapp.ActiveDocument
.Bookmarks("Signet_nom").Range.Text = Signet_nom_1
.Bookmarks("signet_dossier").Range.Text = signet_dossier_2
.Bookmarks("signet_type_titre").Range.Text = signet_type_3
.Bookmarks("signet_occup").Range.Text = signet_occup_4
.Bookmarks("signet_demande").Range.Text = signet_demande_5
[............................]
If FSO.FileExists(CurrentProject.Path & CHEMIN_IMAGE & DOSSIER_ID & ".jpg") = True Then
image = CurrentProject.Path & CHEMIN_IMAGE & DOSSIER_ID & ".jpg"
signet_image_15 = "signet_image"
Set curseur = wdapp.Selection
curseur.homekey WdStory
curseur.GoTo what:=WdGoToBookmark, Name:=signet_image_15
curseur.InlineShapes.AddPicture image, False, True
Else
signet_image_15 = "PLAN DE SITUATION NON DISPONIBLE, EXECUTEZ LA COMMANDE MAPINFO"
wdapp.ActiveDocument.Bookmarks("signet_image").Range.Text = signet_image_15
End If
' je sauvegarde le fichier sous un autre nom
wdapp.ActiveDocument.SaveAs CurrentProject.Path & CHEMIN_DOCUMENT & DOSSIER_ID & ".doc"
' je ferme le fichier
wdapp.ActiveDocument.Close
' je ferme l'application
End With
wdapp.Visible = True
wdapp.Documents.Open CurrentProject.Path & CHEMIN_DOCUMENT & DOSSIER_ID & ".doc"
aaliyan
Messages postés104Date d'inscriptionsamedi 12 mars 2005StatutMembreDernière intervention30 avril 2007 27 avril 2007 à 10:51
Justement non, ça ne marchait pas, j'avais dèjà essayé, car ce n'est pas qui ouvrait le fichier, il été déjà ouvert, je n'avais donc que le document word et non l'application.
La méthode de Drikce marche.