如何使用唯一值替换每行中的空白单元格

时间:2018-03-11 05:17:40

标签: excel vba excel-vba

我有一个看起来像这样的Excel文件:

 Person1,Person2,Person3,Person4,Median
 GeneA 1,0,2,,1
 GeneB 1,,2,1,1
 GeneC 2,,,0,0
 GeneD 0,1,1,2,1
 GeneE 0,0,0,,0

第5列是每行的中位数。我想用这个中值替换每行中缺少的数据。

关于我如何做到这一点的任何想法?我有超过160列和60,000行数据。

2 个答案:

答案 0 :(得分:1)

以下是一个如何使用IF语句填写空白的示例:

animated screenshot example

另外,关于你的中位数的说明:也许这些不是实际的计算,但至少有一个样本行的中位数不正确。 Excel有一个内置函数来计算MEDIAN(你甚至可以使用它而不是IF语句,如果填充空白是唯一的目标)。

更多信息:

答案 1 :(得分:1)

VBA解决方案

Sub main()
    With Intersect(ActiveSheet.UsedRange, Range("B:F"))
        .SpecialCells(XlCellType.xlCellTypeBlanks).FormulaR1C1 = "=RC6"
        .Value = .Value
    End With
End Sub