bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
olivier wrote:bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
Et bien, il y a plein d'info pour réaliser du publipostage "piloté".
Regardez du côté du mot clé "automatisation".
Il y a "surtout" la méthode OpenDataSource !
En gros, vous devez préparer un doc word avec toutes les infos de fusions
nécessaires (champs de fusion, mise en forme, nom des champs de la BDD),
et ensuite, vous pilotez un objet word pour :
- ouvrir le doc "maitre"
- sélectionner la base de donnée
- executer une requete pour n'avoir que les infos utiles
- lancer la fusion
Ensuite, plus qu'à enregistrer le document.
(je réalise ça depuis des pages ASP3 ! Donc ça doit être faisable en .net
!)
--
Bill2
Utilisez Process Manager, gestionnaire de processus automatique :
http://www.bill2-software.com/processmanager/
olivier wrote:
bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
Et bien, il y a plein d'info pour réaliser du publipostage "piloté".
Regardez du côté du mot clé "automatisation".
Il y a "surtout" la méthode OpenDataSource !
En gros, vous devez préparer un doc word avec toutes les infos de fusions
nécessaires (champs de fusion, mise en forme, nom des champs de la BDD),
et ensuite, vous pilotez un objet word pour :
- ouvrir le doc "maitre"
- sélectionner la base de donnée
- executer une requete pour n'avoir que les infos utiles
- lancer la fusion
Ensuite, plus qu'à enregistrer le document.
(je réalise ça depuis des pages ASP3 ! Donc ça doit être faisable en .net
!)
--
Bill2
Utilisez Process Manager, gestionnaire de processus automatique :
http://www.bill2-software.com/processmanager/
olivier wrote:bonjour,
après maintes recherches je constate que :
1) beaucoup de personne ne comprenne rien a l'utilisation de Word
avec .net 2) Ms ne fait pas grand chose pour faciliter cette
utilisation (msdn et autre)
c'est quand meme bizarre tout ca. je parle bien de Word et non de rtf.
je m'explique. (tout ca c'est du publipostage en gros...)
Et bien, il y a plein d'info pour réaliser du publipostage "piloté".
Regardez du côté du mot clé "automatisation".
Il y a "surtout" la méthode OpenDataSource !
En gros, vous devez préparer un doc word avec toutes les infos de fusions
nécessaires (champs de fusion, mise en forme, nom des champs de la BDD),
et ensuite, vous pilotez un objet word pour :
- ouvrir le doc "maitre"
- sélectionner la base de donnée
- executer une requete pour n'avoir que les infos utiles
- lancer la fusion
Ensuite, plus qu'à enregistrer le document.
(je réalise ça depuis des pages ASP3 ! Donc ça doit être faisable en .net
!)
--
Bill2
Utilisez Process Manager, gestionnaire de processus automatique :
http://www.bill2-software.com/processmanager/
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMiss ing,
oMissing)
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMiss ing,
oMissing)
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMiss ing,
oMissing)
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("\")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" <sylfelin_EN_TROP_@cegetel.net> a écrit dans le message de
news: mn.9c217d82046fc36f.60937@cegetel.net...
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" a écrit dans le message de news:merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" <aa@aa.fr> a écrit dans le message de news:
ueg0Ua9cIHA.1212@TK2MSFTNGP05.phx.gbl...
merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("\")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" <sylfelin_EN_TROP_@cegetel.net> a écrit dans le message de
news: mn.9c217d82046fc36f.60937@cegetel.net...
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" a écrit dans le message de news:merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
Exemple testé :
Const Template As String = "c:tempmodèle.dot"
Dim oWord As New Word.Application
Dim oDoc As Word.Document
oWord.Visible = True
oDoc = oWord.Documents.Add(Template)
(j'ai supprimé le groupe c# des réponses)
--
Patrice
"Patrice" <http://www.chez.com/scribe/> a écrit dans le message de news:
epY9%Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" a écrit dans le message de news:merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
Exemple testé :
Const Template As String = "c:tempmodèle.dot"
Dim oWord As New Word.Application
Dim oDoc As Word.Document
oWord.Visible = True
oDoc = oWord.Documents.Add(Template)
(j'ai supprimé le groupe c# des réponses)
--
Patrice
"Patrice" <http://www.chez.com/scribe/> a écrit dans le message de news:
epY9%23DVdIHA.4744@TK2MSFTNGP06.phx.gbl...
Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" <aa@aa.fr> a écrit dans le message de news:
ueg0Ua9cIHA.1212@TK2MSFTNGP05.phx.gbl...
merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("\")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" <sylfelin_EN_TROP_@cegetel.net> a écrit dans le message de
news: mn.9c217d82046fc36f.60937@cegetel.net...
http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
Exemple testé :
Const Template As String = "c:tempmodèle.dot"
Dim oWord As New Word.Application
Dim oDoc As Word.Document
oWord.Visible = True
oDoc = oWord.Documents.Add(Template)
(j'ai supprimé le groupe c# des réponses)
--
Patrice
"Patrice" <http://www.chez.com/scribe/> a écrit dans le message de news:
epY9%Bonjour,
Merci de ne jamais signaler une erreur sans poster son texte exact (et
indiquer la ligne exacte qui plante, j'imagine que c'est sur la ligne
oWord.Documents.Add ... ?). Le texte de l'erreur est le premier outil de
diagnostic...
Pour l'instant, je vois surtout que les noms des fichiers ne sont pas
corrects. Egalement créer le document via New Word.Document est
contradictoire avec le fait de le créer ensuite avec oWord.Documents.Add
et il serait possible de typer les variables même si ces points ne jouent
sans doute aucun rôle dans le problème...
(Egalement restreindre éventuellement les groupes par exemple la question
n'a rien à voir avec C#)
--
Patrice
"olivier" a écrit dans le message de news:merci
j'ai u code mais j'ai une erreur
si tu sais ?...
Dim oTemplatePath As Object = "oessai.dot"
Dim oSaveAsFile As Object = "onewdoc.doc"
Dim oWord As New Word.Application()
Dim oWordDoc As New Word.Document()
Dim oMissing As Object = System.Reflection.Missing.Value
Dim oTrue As Object = True
Dim oFalse As Object = False
oWord.Visible = True
' ICI oWordDoc = NOTHING ????????????????????????
oWordDoc = oWord.Documents.Add(oTemplatePath, oMissing, oMissing,
oMissing)
For Each myMergeField As Word.Field In oWordDoc.Fields
Dim rngFildCode As Word.Range = myMergeField.Code
Dim fieldText As String = rngFildCode.Text
If fieldText.StartsWith("MERGEFIELD") Then
Dim EndMerge As Integer = fieldText.IndexOf("")
Dim fieldNameLenght As Integer = fieldText.Length -
EndMerge
Dim fieldName As String = fieldText.Substring(11,
EndMerge - 11)
fieldName = fieldName.Trim
If fieldName = "NAME" Then
myMergeField.Select()
oWord.Selection.TypeText("Some Text")
End If
End If
Next
oWordDoc.Close(oFalse, oMissing, oMissing)
oWord.Quit(oMissing, oMissing, oMissing)
"Sylfelin" a écrit dans le message de
news:http://www.codeproject.com/KB/cs/Generating_Word_Reports.aspx
ou
http://www.codeproject.com/KB/XML/WordCPArticleTemplate.aspx
ou
http://www.codeproject.com/KB/office/csautomateword.aspx
ou
http://www.codeproject.com/KB/office/DocumentMaker.aspx
ou
http://www.codeproject.com/KB/office/Wordyna.aspx
ou
etc...
Bonne lecture
--
--------------------------
Merci
Sylfelin