0

我正在编写一个将 Excel 工作表粘贴到 Word 文档中的 C# 应用程序。

using Excel = Microsoft.Office.Interop.Excel;
using Word = Microsoft.Office.Interop.Word;

Excel.Worksheet ws = wb.Worksheets[1];        
// select all then copy to clipboard
ws.get_Range("a1").EntireRow.EntireColumn.Copy();
var wordApp = new Word.Application();
wordApp.Visible = true;
wordApp.Documents.Add();
wordApp.Selection.PasteSpecial(Link: true);

上面的代码可以正常工作,但 Word 默认将对象粘贴为 HTML,并且会打乱文档布局。

所以我尝试手动粘贴(ctrl-alt-v)并选择“Microsoft Office Excel 2003 Worksheet object”(期望这也可以通过C#完成),这次粘贴整个工作表(可能是65535 * 65535)并且重要单元格被最小化。

工作表包含图表和位图,因此很难计算图表/位图末尾下方的单元格坐标。

是否有任何快捷方式可以仅选择 Excel 中的非空单元格?

4

1 回答 1

0

是否有任何快捷方式可以仅选择 Excel 中的非空单元格? - 是的。尝试这样做: .要wholeRange = sheet.Cells.SpecialCells(XlCellType.xlCellTypeConstants, Type.Missing);测试此功能,您可以按 F5->Special.. 并尝试其他选项。

于 2012-11-15T17:06:24.583 回答