我在创建excel时使用excel互操作。现在,我必须获取一列的大小作为下一列大小的基础。我尝试了以下代码:
width = xlWorksheet.Range[xlWorksheet.Cells[1, 4], xlWorksheet.Cells[1, 11]].Width;
xlWorksheet.Columns[5].ColumnWidth = width;
width_of_first_col = xlWorksheet.Range[xlWorksheet.Cells[1, 1], xlWorksheet.Cells[1, 1]].Width;
xlWorksheet.Columns[6].ColumnWidth = width_of_first_col;
结果应该是第4列和第5列的大小以及第1列和第6列的大小相同。但这并不完全符合实际结果。
将一个单元格的with设置为另一个单元格的最佳做法是什么。谢谢。
[Range.Width
是只读属性,为您提供以磅为单位的宽度。
Range.ColumnWidth
是读/写属性,它为您提供了我喜欢的字符单位宽度。字符单位代表由工作簿的0
样式定义的字体类型和大小下的字符Normal
的宽度。
在您的情况下,由于不需要计算点的宽度,因此始终使用.ColumnWidth
。
n = ColumnNumberOfYourChoice;
width = xlWorksheet.Range.Columns.Item[n].ColumnWidth;
xlWorksheet.Columns[5].ColumnWidth = width;
width_of_first_col = xlWorksheet.Range.Columns.Item[1].ColumnWidth;
xlWorksheet.Columns[6].ColumnWidth = width_of_first_col;