Bonjour,

JE travaille actuellement sur un projet ou je pilote word.
J'ai créé une fonction qui me permet d'ecrire des valeurs sur mon documents Word par rapport a des signets que j'ai placé auparavant.
Mon probleme est que je veux mettre le contenu de certain signet a jour mais cela ne marche pas. Mon signet prend bien ma nouvelle valeur mais contient toujours la valeur précédente.
J'ai meme essayé de supprimer un signet, celui ci est bien supprimé mais sa valeur reste sur le document Word.

Voici ma fonction qui me permet de mettre a jour la valeur d'un signet :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
private void WriteToBookMark(string BookMarkName, string BookMarkText)
{
	try
	{
	        Word.Document wd = objWinWordControl.document;
		Word.Application wa = wd.Application;
		int bookmark_cnt = wd.Bookmarks.Count;
		int i;
 
		for(i=1;i<=bookmark_cnt;i++)
		{
			object o = (object)i;
			if(BookMarkName.ToLower().Trim() == wd.Bookmarks.Item(ref o).Name.ToLower().Trim())
                       {
 
                               wd.Bookmarks.Item(ref o).Select();
                               string name = wd.Bookmarks.Item(ref o).Name;
                               Word.Range oRange = wd.Bookmarks.Item(ref o).Range;
 
                              object oR = (object)oRange;
 
                              ((Word.Range)oR).Text = "test";
 
                              wd.Bookmarks.Add(name, ref oR);
 
			}
		}
	}
	catch(Exception ex)
	{
		String err = ex.Message;
	}
}

Merci pour votre aide


Cordialement