我是Excel的新手,我面临一些问题。
我有一张Excel表格,我必须将其导入我的另一个程序。请考虑以下格式:
Heading1 | Sub-heading1 | Sub-Sub-heading1
| | Sub-Sub-heading2
| | Sub-Sub-heading3
| | Sub-Sub-heading4
| Sub-heading2 | Sub-Sub-heading1
| | Sub-Sub-heading2
| | Sub-Sub-heading3
| | Sub-Sub-heading4
Heading2 | Sub-heading1 | Sub-Sub-heading1
and so on..
问题是,对于我的导入目的,我不能留下任何单元格空白。所以,我想要一些论坛,Heading1
可以将Heading2
复制到{{1}}以上的所有单元格,类似于第2列,以及之后出现在所有行中的所有数据。
这将是很有帮助的,因为它会消除我的障碍。
答案 0 :(得分:0)
使用具有xlBlanks集合的SpecialCells
可以手动(无代码)或以编程方式(简单代码)快速完成此操作
<强> 1。手动
这写好here,包括如何将这些公式转换为值
的说明<强> 2。 VBA 强>
提供了三个样本here
第二个代码的这个修改版本适用于列A:B(看起来是您的数据布局)
Sub FillColBlanks_Offset()
'by Rick Rothstein 2009-10-24
'fill blank cells in column with value above
'http://www.contextures.com/xlDataEntry02.html
'modified by brettdj
Dim Area As Range, LastRow As Long
On Error Resume Next
With Columns("A:B")
LastRow = .Find(What:="*", SearchOrder:=xlRows, _
SearchDirection:=xlPrevious, _
LookIn:=xlFormulas).Row
For Each Area In .Resize(LastRow). _
SpecialCells(xlCellTypeBlanks).Areas
Area.Value = Area(1).Offset(-1).Value
Next
End With
End Sub