我想知道是否有办法在excel或open office中执行此条件:
if the cell is empty then
the cell will have the same value as the cell above it
else
do nothing.
我应该使用宏吗? 请帮帮我我对Excel的经验很少。
c 1 | 2011年10月21日
c 2 |
c 3 |
c 4 | 10/24/2011
c 5 |
c 6 |
c 7 | 10/25/2011
c 8 |
c 9 |
C10 | 10/26/2011
答案 0 :(得分:23)
选择包含需要填充的空白单元格的范围。
点击主页>找到&选择>转到特殊...,将出现一个转到特殊对话框,然后选中空白选项。
单击“确定”,并选择了所有空白单元格。然后在不改变选择的情况下将公式“= B2”输入到活动单元格B3中。可以根据需要更改此单元格引用。
按Ctrl + Enter,Excel会将相应的公式复制到所有空白单元格。
此时,填充的内容是公式,我们需要将形式转换为值。然后选择整个范围,右键单击以选择“复制”,然后按Ctrl + Alt + V以激活“选择性粘贴...”对话框。从Paste中选择Values选项,然后从Operation中选择None选项。
然后单击“确定”。并且所有公式都已转换为值。
答案 1 :(得分:3)
在Excel中:
如果你有一个表已经有人合并了单元格,或者你正在从一个html站点复制一个表,在那里复制的数据中可能存在很多不一致的地方,比如空行真的应该与前一行有相同的值,这很简单要解决此问题,请转到空列并创建后面的公式。
这假定您在A1中有一个标题,而A2包含第一个数据和一个有效的行值
如果只有其他每个单元格都是空的,您可以执行以下操作:
= if(A2="",A1,A2)
上面的函数检查A2是否为空白,如果是空白,则指定A1的值,如果不是,则指定A2的值。
但是,如果需要填充多个空行,最好执行以下操作:
(假设您要在所有后续空单元格中复制的值的单元格从A2开始,您愿意手动设置以下列中的前两个单元格,第I列:我是表格中的第一个空列)
< / p>
第一步:在单元格I2和I3中,确保相关行存在正确的值
第二步:在单元格I4中输入以下公式:
= if(A4="",if(A3<>"",A3,I3),A4)
上面的函数检查A4是否为空白,如果是空白,它检查A3是否为空白,如果确实不是,则指定A3的值,如果它也是空白,则在I3中指定值,最后,如果A4不是空白,它指定A4的值。
您必须手动拖动公式(因为有空行)。
通过按键字段对列进行排序,可以轻松识别出您不想要的数据后面的任何空行。
如上面Robert所示,您正在处理公式值,因此您不能只是移动它们,覆盖它们的源单元格,但如果您执行“特殊”粘贴,则可以将值直接粘贴到源单元格上。 / p>
答案 2 :(得分:2)
这就是我曾经写过的:
Sub FillInBlankCellsInColumns()
'Go down and when you find an empty cell, put the value from the previous cell in there.
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Dim MyCounter As Long
MyCounter = 0
For Each r In Selection
On Error Resume Next
If r.Value = "" Then
r.Value = r.Offset(-1, 0).Value
End If
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
答案 3 :(得分:1)
Debra Dalgleish提供了
答案 4 :(得分:0)
或者,您可以在新列中使用以下公式:
D2:=IF(ISBLANK(C2),D1,C2)
这是一个“工作”,但由于你说你没有Excel的经验,写宏可能很有挑战性。
此致
罗伯特·伊尔布林克答案 5 :(得分:0)
使用Vlookup
=+VLOOKUP("Output",D1:G7,1)
Apple 1 Apple 2 Apple 7 Apple Mango 3 Mango ===================== col1 Col2 Formula