Office Interop Word c#.net : Copying a table at a special location
I'm currently working on tables in a Word template with Interop.
In my template I have a table which I want to copy (Copying will make it easier for me to fill in the data rather than inserting rows and column, because the template has a lot of write formatting). The new tabl开发者_StackOverflow中文版e should be inserted right under the original table. The best would be that they would look like one single table.
My problem is that I get a paragraph between the two tables. How can I avoid this?
Here is my code:
object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;
Word.Range rng = table.Range;
rng.Collapse(ref oCollapseEnd);
Word.Table tableCopy = document.Tables.Add(rng, 1, 1, ref missing, ref missing);
table.Range.Copy();
tableCopy.Range.Paste();
Clipboard.Clear();
Any help would be very appreciated! :)
So, was working more on this issue and found a solution. Guess it was just me that got confused about the range stuff. Just thought i should post it. :)
Word.Range range = table.Range;
range.Copy();
Word.Range rng = table.Range;
rng.SetRange(table.Range.End, table.Range.End);
Word.Table tableCopy = document.Tables.Add(rng, 1, 1, ref missing, ref missing);
tableCopy.Range.Paste();
// got an extra row for some reason -> need to delete it
table.Rows[table.Rows.Count].Delete();
精彩评论