Numérotation automation word

Signaler
Messages postés
26
Date d'inscription
samedi 27 septembre 2008
Statut
Membre
Dernière intervention
16 juillet 2010
-
Messages postés
26
Date d'inscription
samedi 27 septembre 2008
Statut
Membre
Dernière intervention
16 juillet 2010
-
Bonjour,

mon application en c# génère un document word, dans celui-ci je souhaite intégrer une numérotation pour bien distinguer les modalités du documents.

Comment dois-je faire? est-ce que quelqu'un a déjà été confronté à ce problème

Merci de votre aide

kmtaz

3 réponses

Messages postés
26
Date d'inscription
samedi 27 septembre 2008
Statut
Membre
Dernière intervention
16 juillet 2010

kmtaz
Personne ne peut m'aider svp?
Messages postés
26
Date d'inscription
samedi 27 septembre 2008
Statut
Membre
Dernière intervention
16 juillet 2010

J'ai trouvé la solution

Il faut d'abord définir une "ListTemplate" et l'associer au document word créé, puis une "Globalclass" pour personnaliser (position text...)la numérotation que va produire la "ListTemplate".

Enfin, on applique la numérotation au texte ou paragraphe voulu avec "ListFormat".


object derniereligne = true;
object nomlist = "numdoc";
object index1 = 0;




ListTemplate lt = docword.ListTemplates.Add(ref derniereligne, ref nomlist);
GlobalClass gc = new GlobalClass();


for (int i = 1; i < 3; i++)
{
//lt.ListLevels[i].LinkedStyle = "Titolo " + i;
lt.ListLevels[i].NumberStyle = (WdListNumberStyle)index1;
lt.ListLevels[i].TextPosition = gc.CentimetersToPoints((float)1.27);
lt.ListLevels[i].TrailingCharacter = 0;
lt.ListLevels[i].NumberPosition = gc.CentimetersToPoints((float)0.63);
lt.ListLevels[i].TabPosition = gc.CentimetersToPoints((float)1.27);
lt.ListLevels[i].Alignment = 0;
lt.ListLevels[i].StartAt = 1;
lt.ListLevels[i].ResetOnHigher = i - 1;


}

lt.ListLevels[1].NumberFormat = "%1.";
lt.ListLevels[2].NumberFormat = "%2.";
lt.ListLevels[3].NumberFormat = "%3.";



object param = System.Reflection.Missing.Value;
modal1.Range.ListFormat.ApplyListTemplate(lt, ref param, ref param, ref param);
Messages postés
26
Date d'inscription
samedi 27 septembre 2008
Statut
Membre
Dernière intervention
16 juillet 2010

Excusez-moi pour le précédent message

object derniereligne = true;
object nomlist = "numdoc";
object index1 = 0;

ListTemplate lt docword.ListTemplates.Add(ref derniereligne, ref nomlist); GlobalClass gc new GlobalClass();
for (int i = 1; i < 3; i++)
{

lt.ListLevels[i].NumberStyle = (WdListNumberStyle)index1;
lt.ListLevels[i].TextPosition = gc.CentimetersToPoints((float)1.27); lt.ListLevels[i].TrailingCharacter = 0;
lt.ListLevels[i].NumberPosition = gc.CentimetersToPoints((float)0.63); lt.ListLevels[i].TabPosition = gc.CentimetersToPoints((float)1.27); lt.ListLevels[i].Alignment = 0; lt.ListLevels[i].StartAt = 1;
lt.ListLevels[i].ResetOnHigher = i - 1;
}

lt.ListLevels[1].NumberFormat = "%1.";
lt.ListLevels[2].NumberFormat = "%2.";
lt.ListLevels[3].NumberFormat = "%3.";


object param = System.Reflection.Missing.Value; modal1.Range.ListFormat.ApplyListTemplate(lt, ref param, ref param, ref param);

Si sa peut d'autres personnes