在 Word 自动化中设置列宽会引发异常

本文关键字:异常 置列宽 Word 自动化 | 更新日期: 2023-09-27 18:30:48

我正在使用Word自动化来构造一个表,我需要一列非常窄,但是每次我使用Microsoft.Office.Interop.Word.Column.SetWidth方法来设置宽度时,它都会抛出"值超出范围异常"如果我让它成为一个更大的值,它会起作用,但尽可能小是至关重要的

有人建议将间距和填充设置为零,我做到了,但它仍然抛出异常

      table.LeftPadding = 0;
      table.RightPadding = 0;
      table.Spacing = 0;
      table.Columns[4].SetWidth(9f, WdRulerStyle.wdAdjustNone);

在 Word 自动化中设置列宽会引发异常

SetWidth以点为单位获取参数。试试这个

table.Columns[4].SetWidth(
    Globals.ThisAddIn.Application.MillimetersToPoints(9f), 
    WdRulerStyle.wdAdjustNone);

或使用此

table.Columns[4].PreferredWidth = 9f;