Le dilemme est plutôt simple. Je dois créer une petite application qui effacera toutes les couleurs d'arrière-plan des polices (laisser les couleurs d'arrière-plan des cellules inchangées), et supprimer tout le texte barré dans un document Word, puis enregistrer le document dans un autre dossier. Sinon, la mise en forme du document doit rester intacte. Ci-dessous un grand exemple tiré d'exemples aléatoires disponibles dans google montrant comment appliquer des types spécifiques de mise en forme à des chaînes aléatoires trouvées avec Find.Execute(). Je n'ai aucune idée cependant, sur comment faire seulement comme décrit ci-dessus.C# Word Document - Comment nettoyer le formatage?
public static string searchDoc(string fileNameRef)
{
Microsoft.Office.Interop.Word._Application word = new Microsoft.Office.Interop.Word.Application(); ;
Microsoft.Office.Interop.Word._Document doc = new Microsoft.Office.Interop.Word.Document();
object missing = System.Type.Missing;
try
{
System.IO.FileInfo ExecutableFileInfo =
new System.IO.FileInfo(System.Reflection.Assembly.GetEntryAssembly().Location);
object fileName =
System.IO.Path.Combine(ExecutableFileInfo.DirectoryName, fileNameRef);
doc = word.Documents.Open(ref fileName, ref missing, ref missing, ref missing
, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing
, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
doc.Activate();
//object findStr = "hello"; //sonething to find
// THIS is the part where I fail, I can't find of a way to Find.Execute on formatting
// as opposed to mere strings.
//while (word.Selection.Find.Execute(ref findStr)) //found...
//{
// //change font and format of matched words
// word.Selection.Font.Name = "Tahoma"; //change font to Tahoma
// word.Selection.Font.ColorIndex = Microsoft.Office.Interop.Word.WdColorIndex.wdRed; //change color to red
//}
object saveFileName = ExecutableFileInfo.DirectoryName + "\\New\\" + fileNameRef;
doc.SaveAs(ref saveFileName, ref missing, ref missing, ref missing, ref missing
, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing
, ref missing, ref missing, ref missing, ref missing, ref missing);
}
catch (Exception)
{
}
finally
{
doc.Close(ref missing, ref missing, ref missing);
word.Application.Quit(ref missing, ref missing, ref missing);
}
return fileNameRef;
}
Merci pour toute aide! Et je veux dire tout, simplement commencer à trouver le formatage aiderait beaucoup, j'imagine. :)