计算多列的中位数

时间:2015-06-02 17:06:38

标签: excel vba excel-vba multiple-columns median

在我的工作表中,名为“Sheet1”,列A到列J,每列包含各种值(因此它们都具有不同的行数)。

如何计算这些列的中值并将计算出的中位数放在第9行,将列M到V? 我知道如何将计算的中位数存储到所需位置,但实际上不确定如何计算中位数。

我知道这可以通过使用excel中值函数来解决,但这不是我想要做的。我有超过10个工作表,所以VBA效率最高。

1 个答案:

答案 0 :(得分:1)

您只需设置M9 = MEDIAN(A2:A8)并将A2:A8设置为您想要的范围。

然后将其复制并粘贴到其他列M9:V9。 Excel会自动将列更改为B,C,D等,并将填写您想要的信息。

编辑 for VBA:

这是一个快速而又脏的VBA宏,可以全部应用它们:

@Override
public Class getColumnClass(int column)
{
    int row = getSelectedRow();

    if (row == -1) return super.getColumnClass( column );

    PropertySheetDelegate controller = getPropertySheetDelegate();

    if (controller == null || column == 0)
    {
        return super.getColumnClass( column );
    }
    else
    {
        PropertySheetModel model = (PropertySheetModel) getModel();
        Property property = model.getPropertyAt(row);
        return property.getType();
    }
}