bonjour à tous;
voila j'avais un probleme de manipulation
de word à partire de mon application asp.net; et apres des recherches j'ai
trouvé un article qui me montre une possibilité de solution et cela en
utilisant l'automation donc rajout de references la seul chose qui me bloc
c'est que la solution passe par la création d'un namespace et d'y faire
appele dans la page du code behind ;
le probleme c'est je ne sais pas comment on fait appel à des procedure de ce
genre en c# et surtout comment faire pourque ça soit dans le code d'un
bouton!!!
si quelqu'un pouvais m'aidé ou m'orienté jen serai trés contente é
reconnaissante
merci d'avance pour tout
respectueusement
nima84
PS : je ne sais pas si ça va vous aidez mais bon voila le code du namespace
>>>>>>>>>>>>>>>>>>>>
namespace WordAutomation
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Fusion
{
public static string START_PATTERN = "<<";
public static string END_PATTERN = ">>";
/// <summary>
/// The fusion entry point for the application.
/// </summary>
// Visibilité du document
WordApp.Visible = false;
// Activation du document
aDoc.Activate();
while (ie.MoveNext())
{
// After word replace, it can still exists END_PATTERN,
remove it.
currentWord = ((Word.Range)ie.Current).Text;
if (currentWord.StartsWith(START_PATTERN))
{
// Remove "<<" pattern
((Word.Range)ie.Current).Delete(ref missing, ref missing);
ie.MoveNext();
currentKey = ((Word.Range)ie.Current).Text;
// Remove key pattern
((Word.Range)ie.Current).Delete(ref missing, ref missing);
// Replace by value string in hashtable
// La source de données ici est une hashtable codée en dur
h.Add("Civilite", "Mr");
h.Add("Nom", "GIL");
h.Add("Prenom", "Thomas");
h.Add("Date", DateTime.Now);
// Appel la fusion en précisant le document modèle et le
document généré
MergeDocument(h, "c:\\modele.dot", "c:\\generated.doc");
}
}
}
>>>>>>>>>>>>>>maintenant faut y faire appel depuis un bouton et je ne trouve pas la syntaxe online
voila j'espere avoir eté claire et bien informative pour que vous puissiez
m'aidé
encore merci ;-)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Paul Bacelar
Pour utiliser des méthodes dans le namespace "WordAutomation", le plus simple est d'ajouter "using WordAutomation;" au début du fichier cs.
Après tu appels les méthodes et tu instancies les objets comme si ils étaient dans le namespace de ton application Web.
Oui, ton application Web crée aussi un namespace ;-). -- Paul Bacelar MVP VC++
"nima84" wrote in message news:
bonjour à tous; voila j'avais un probleme de manipulation de word à partire de mon application asp.net; et apres des recherches j'ai trouvé un article qui me montre une possibilité de solution et cela en utilisant l'automation donc rajout de references la seul chose qui me bloc c'est que la solution passe par la création d'un namespace et d'y faire appele dans la page du code behind ; le probleme c'est je ne sais pas comment on fait appel à des procedure de ce genre en c# et surtout comment faire pourque ça soit dans le code d'un bouton!!! si quelqu'un pouvais m'aidé ou m'orienté jen serai trés contente é reconnaissante merci d'avance pour tout respectueusement nima84 PS : je ne sais pas si ça va vous aidez mais bon voila le code du namespace
namespace WordAutomation { /// <summary> /// Summary description for Form1. /// </summary> public class Fusion { public static string START_PATTERN = "<<"; public static string END_PATTERN = ">>";
/// <summary> /// The fusion entry point for the application. /// </summary>
// Visibilité du document WordApp.Visible = false; // Activation du document aDoc.Activate();
while (ie.MoveNext()) { // After word replace, it can still exists END_PATTERN, remove it. currentWord = ((Word.Range)ie.Current).Text; if (currentWord.StartsWith(START_PATTERN)) { // Remove "<<" pattern ((Word.Range)ie.Current).Delete(ref missing, ref missing); ie.MoveNext(); currentKey = ((Word.Range)ie.Current).Text; // Remove key pattern ((Word.Range)ie.Current).Delete(ref missing, ref missing); // Replace by value string in hashtable
// La source de données ici est une hashtable codée en dur h.Add("Civilite", "Mr"); h.Add("Nom", "GIL"); h.Add("Prenom", "Thomas"); h.Add("Date", DateTime.Now);
// Appel la fusion en précisant le document modèle et le document généré MergeDocument(h, "c:modele.dot", "c:generated.doc"); } } }
maintenant faut y faire appel depuis un bouton et je ne trouve pas la syntaxe online
voila j'espere avoir eté claire et bien informative pour que vous puissiez m'aidé encore merci ;-)
Pour utiliser des méthodes dans le namespace "WordAutomation", le plus
simple est d'ajouter "using WordAutomation;" au début du fichier cs.
Après tu appels les méthodes et tu instancies les objets comme si ils
étaient dans le namespace de ton application Web.
Oui, ton application Web crée aussi un namespace ;-).
--
Paul Bacelar
MVP VC++
"nima84" <nima84@discussions.microsoft.com> wrote in message
news:F65760B4-8F51-4FF8-90A9-4D2CE9EF8E85@microsoft.com...
bonjour à tous;
voila j'avais un probleme de manipulation
de word à partire de mon application asp.net; et apres des recherches
j'ai
trouvé un article qui me montre une possibilité de solution et cela en
utilisant l'automation donc rajout de references la seul chose qui me bloc
c'est que la solution passe par la création d'un namespace et d'y faire
appele dans la page du code behind ;
le probleme c'est je ne sais pas comment on fait appel à des procedure de
ce
genre en c# et surtout comment faire pourque ça soit dans le code d'un
bouton!!!
si quelqu'un pouvais m'aidé ou m'orienté jen serai trés contente é
reconnaissante
merci d'avance pour tout
respectueusement
nima84
PS : je ne sais pas si ça va vous aidez mais bon voila le code du
namespace
namespace WordAutomation
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Fusion
{
public static string START_PATTERN = "<<";
public static string END_PATTERN = ">>";
/// <summary>
/// The fusion entry point for the application.
/// </summary>
// Visibilité du document
WordApp.Visible = false;
// Activation du document
aDoc.Activate();
while (ie.MoveNext())
{
// After word replace, it can still exists END_PATTERN,
remove it.
currentWord = ((Word.Range)ie.Current).Text;
if (currentWord.StartsWith(START_PATTERN))
{
// Remove "<<" pattern
((Word.Range)ie.Current).Delete(ref missing, ref
missing);
ie.MoveNext();
currentKey = ((Word.Range)ie.Current).Text;
// Remove key pattern
((Word.Range)ie.Current).Delete(ref missing, ref
missing);
// Replace by value string in hashtable
// La source de données ici est une hashtable codée en dur
h.Add("Civilite", "Mr");
h.Add("Nom", "GIL");
h.Add("Prenom", "Thomas");
h.Add("Date", DateTime.Now);
// Appel la fusion en précisant le document modèle et le
document généré
MergeDocument(h, "c:\modele.dot", "c:\generated.doc");
}
}
}
maintenant faut y faire appel depuis un bouton et je ne
trouve pas la syntaxe online
voila j'espere avoir eté claire et bien informative pour que vous puissiez
m'aidé
encore merci ;-)
Pour utiliser des méthodes dans le namespace "WordAutomation", le plus simple est d'ajouter "using WordAutomation;" au début du fichier cs.
Après tu appels les méthodes et tu instancies les objets comme si ils étaient dans le namespace de ton application Web.
Oui, ton application Web crée aussi un namespace ;-). -- Paul Bacelar MVP VC++
"nima84" wrote in message news:
bonjour à tous; voila j'avais un probleme de manipulation de word à partire de mon application asp.net; et apres des recherches j'ai trouvé un article qui me montre une possibilité de solution et cela en utilisant l'automation donc rajout de references la seul chose qui me bloc c'est que la solution passe par la création d'un namespace et d'y faire appele dans la page du code behind ; le probleme c'est je ne sais pas comment on fait appel à des procedure de ce genre en c# et surtout comment faire pourque ça soit dans le code d'un bouton!!! si quelqu'un pouvais m'aidé ou m'orienté jen serai trés contente é reconnaissante merci d'avance pour tout respectueusement nima84 PS : je ne sais pas si ça va vous aidez mais bon voila le code du namespace
namespace WordAutomation { /// <summary> /// Summary description for Form1. /// </summary> public class Fusion { public static string START_PATTERN = "<<"; public static string END_PATTERN = ">>";
/// <summary> /// The fusion entry point for the application. /// </summary>
// Visibilité du document WordApp.Visible = false; // Activation du document aDoc.Activate();
while (ie.MoveNext()) { // After word replace, it can still exists END_PATTERN, remove it. currentWord = ((Word.Range)ie.Current).Text; if (currentWord.StartsWith(START_PATTERN)) { // Remove "<<" pattern ((Word.Range)ie.Current).Delete(ref missing, ref missing); ie.MoveNext(); currentKey = ((Word.Range)ie.Current).Text; // Remove key pattern ((Word.Range)ie.Current).Delete(ref missing, ref missing); // Replace by value string in hashtable
// La source de données ici est une hashtable codée en dur h.Add("Civilite", "Mr"); h.Add("Nom", "GIL"); h.Add("Prenom", "Thomas"); h.Add("Date", DateTime.Now);
// Appel la fusion en précisant le document modèle et le document généré MergeDocument(h, "c:modele.dot", "c:generated.doc"); } } }
maintenant faut y faire appel depuis un bouton et je ne trouve pas la syntaxe online
voila j'espere avoir eté claire et bien informative pour que vous puissiez m'aidé encore merci ;-)