使用VBA高度功能时,我得到了奇怪的数字

时间:2016-03-04 10:38:10

标签: excel vba excel-vba

我正在尝试在VBA中使用高度功能,但我得到了奇怪的数字。它不是返回范围的高度,而是返回范围的高度乘以15.例如,以下简单函数:

Function h(c1 As Range) As Double
h = c1.Height
End Function
如果c1是单个单元格,

将给出值15,如果c1是两个单元格高,则给出30,依此类推。我应该澄清一点,我使用它作为更大功能的一部分,但正是这个问题导致了这个问题。我想让函数尽可能简单,看看问题是否仍然存在,而且它有。我真的不明白为什么会发生这种情况,我之前使用过高度函数没有问题。任何建议将不胜感激, 感谢

1 个答案:

答案 0 :(得分:1)

你误解了身高属性是什么。高度是它的高度......

从这里开始.. https://msdn.microsoft.com/en-us/library/office/aa215509%28v=office.11%29.aspx?f=255&MSPPError=-2147217396

返回指定范围内所有行的高度,以磅为单位。如果指定范围内的行的高度不同,则返回Null。读/写Variant。 备注

您可以使用“高度”属性返回一系列单元格的总高度。 RowHeight和Height之间的差异包括以下内容: 高度是只读的。 如果返回多行的RowHeight属性,您将获得每行的行高(如果所有行都是相同的高度)或Null(如果它们是不同的高度)。如果返回多行的Height属性,则将获得所有行的总高度。 实施例

此示例将Sheet1上第一行的高度加倍。 使用工作表(“Sheet1”)。行(1)     .RowHeight = .RowHeight * 2

结束