jhlamoustache
XLDnaute Occasionnel
Bonjour le forum,
je demande votre aide car je n'arrive pas à afficher un doc word.
Ensuite le doc créé doit s'afficher pour que l'utilisateur le complète et revienne dans excel (voir msgbox).
Mais je n'arrive pas à l'afficher le moment voulu. Merci de votre aide
mes variables
Public WD As Object 'objet word
Public l, ldep, k, elt2 As Integer 'l n°de la ligne du classeur sélectionnée
Public FichierSource As String
Public FichierCible As String
Public Type exp
Titre As String
Ref As String
Numver As Long
dateVer As Date
DateAppl As String
NomFic As String
End Type
Public Mexp As exp
Public ExpBes As Object
Public Celdep As String
Public Utilisateur, DepUtil As String
code du bouton déclenchant la création
Private Sub CommandButton8_Click()
l = Liste.List(Liste.ListIndex, 1)
Cells(l, Range("AFEB" & Utilisateur).Column).Select
If ActiveCell.Value = "" Then
MsgBox "Il n'y a pas d'expression de besoin prévue"
Exit Sub
End If
With Mexp
.Ref = Cells(l, Range("réference").Column).Value
.Numver = Cells(l, Range("version").Column).Value
.dateVer = Cells(l, Range("dateversion").Column).Value
.Titre = Cells(l, Range("titre").Column).Value
.DateAppl = Cells(l, Range("dateapplication").Column).Value
End With
Call CréerExp(Utilisateur)
ActiveCell.Font.Bold = True
Application.StatusBar = ""
Application.Cursor = xlDefault
ActiveCell.Select
End Sub
code de la création du doc
Sub CréerExp(ByVal Utilisateur As String)
Application.StatusBar = "Création du fichier d'après le modèle"
Set WD = CreateObject("Word.Application")
Documents.Add Template:="O:\\Maquette Expression de besoin " & Utilisateur & ".dot", NewTemplate:=False, DocumentType:=0
Set ExpBes = GetObject(ActiveDocument)
Application.StatusBar = "Complément du fichier"
With ExpBes
.Bookmarks("Ref").Range.InsertAfter Mexp.Ref
.Bookmarks("Titre").Range.InsertAfter Mexp.Titre
.Bookmarks("numversion").Range.InsertAfter Mexp.Numver
.Bookmarks("dateversion").Range.InsertAfter Mexp.dateVer
.Bookmarks("dateapp").Range.InsertAfter Mexp.DateAppl
End With
With Mexp
.NomFic = "Expression de besoin " & Mexp.Ref
End With
ExpBes.Visible = True 'ICI C EST LE MOMENT VOULU : JE SOUHAITE AFFICHER MON DOC WORD
MsgBox "Passons à la suite" 'ASTUCE POUR STOPPER EXCEL LE TEMPS QUE L UTILISATEUR COMPLETE LE DOC WORD (S IL ARRIVE A LE VOIR)
Application.StatusBar = "Sauvegarde et fermeture du fichier"
ExpBes.SaveAs ("O:\Expression de besoin\A compléter " & Utilisateur & "\ " & Mexp.NomFic)
ExpBes.Close
Set ExpBes = Nothing
ThisWorkbook.Activate
End Sub
je demande votre aide car je n'arrive pas à afficher un doc word.
Ensuite le doc créé doit s'afficher pour que l'utilisateur le complète et revienne dans excel (voir msgbox).
Mais je n'arrive pas à l'afficher le moment voulu. Merci de votre aide
mes variables
Public WD As Object 'objet word
Public l, ldep, k, elt2 As Integer 'l n°de la ligne du classeur sélectionnée
Public FichierSource As String
Public FichierCible As String
Public Type exp
Titre As String
Ref As String
Numver As Long
dateVer As Date
DateAppl As String
NomFic As String
End Type
Public Mexp As exp
Public ExpBes As Object
Public Celdep As String
Public Utilisateur, DepUtil As String
code du bouton déclenchant la création
Private Sub CommandButton8_Click()
l = Liste.List(Liste.ListIndex, 1)
Cells(l, Range("AFEB" & Utilisateur).Column).Select
If ActiveCell.Value = "" Then
MsgBox "Il n'y a pas d'expression de besoin prévue"
Exit Sub
End If
With Mexp
.Ref = Cells(l, Range("réference").Column).Value
.Numver = Cells(l, Range("version").Column).Value
.dateVer = Cells(l, Range("dateversion").Column).Value
.Titre = Cells(l, Range("titre").Column).Value
.DateAppl = Cells(l, Range("dateapplication").Column).Value
End With
Call CréerExp(Utilisateur)
ActiveCell.Font.Bold = True
Application.StatusBar = ""
Application.Cursor = xlDefault
ActiveCell.Select
End Sub
code de la création du doc
Sub CréerExp(ByVal Utilisateur As String)
Application.StatusBar = "Création du fichier d'après le modèle"
Set WD = CreateObject("Word.Application")
Documents.Add Template:="O:\\Maquette Expression de besoin " & Utilisateur & ".dot", NewTemplate:=False, DocumentType:=0
Set ExpBes = GetObject(ActiveDocument)
Application.StatusBar = "Complément du fichier"
With ExpBes
.Bookmarks("Ref").Range.InsertAfter Mexp.Ref
.Bookmarks("Titre").Range.InsertAfter Mexp.Titre
.Bookmarks("numversion").Range.InsertAfter Mexp.Numver
.Bookmarks("dateversion").Range.InsertAfter Mexp.dateVer
.Bookmarks("dateapp").Range.InsertAfter Mexp.DateAppl
End With
With Mexp
.NomFic = "Expression de besoin " & Mexp.Ref
End With
ExpBes.Visible = True 'ICI C EST LE MOMENT VOULU : JE SOUHAITE AFFICHER MON DOC WORD
MsgBox "Passons à la suite" 'ASTUCE POUR STOPPER EXCEL LE TEMPS QUE L UTILISATEUR COMPLETE LE DOC WORD (S IL ARRIVE A LE VOIR)
Application.StatusBar = "Sauvegarde et fermeture du fichier"
ExpBes.SaveAs ("O:\Expression de besoin\A compléter " & Utilisateur & "\ " & Mexp.NomFic)
ExpBes.Close
Set ExpBes = Nothing
ThisWorkbook.Activate
End Sub