Numérotation automation word

kmtaz Messages postés 26 Date d'inscription samedi 27 septembre 2008 Statut Membre Dernière intervention 16 juillet 2010 - 5 mai 2009 à 15:12
kmtaz Messages postés 26 Date d'inscription samedi 27 septembre 2008 Statut Membre Dernière intervention 16 juillet 2010 - 11 mai 2009 à 11:57
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

kmtaz Messages postés 26 Date d'inscription samedi 27 septembre 2008 Statut Membre Dernière intervention 16 juillet 2010
7 mai 2009 à 10:11
kmtaz
Personne ne peut m'aider svp?
0
kmtaz Messages postés 26 Date d'inscription samedi 27 septembre 2008 Statut Membre Dernière intervention 16 juillet 2010
11 mai 2009 à 11:45
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);
0
kmtaz Messages postés 26 Date d'inscription samedi 27 septembre 2008 Statut Membre Dernière intervention 16 juillet 2010
11 mai 2009 à 11:57
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
0
Rejoignez-nous