如何选择列(基于列标题)填充到工作表的最后一行?

时间:2016-02-04 20:12:52

标签: vba excel-vba excel

我正在编写一个脚本来根据列的列标题/第一个值填充列的值。在这种情况下,我希望脚本使用标题" ||"标识所有列。并填写到工作表的当前区域。

我有以下内容,但不是填写所有列,而是只需要" ||"在标题中。可以在with语句中添加条件吗?或者有更好的方法吗?

Sub FillCellsFromAbove()
Option Explicit


On Error Resume Next


With Columns
.SpecialCells(xlCellTypeBlanks).formula = "=R[-1]C"
.Value = .Value
End With
Err.Clear
End Sub

电子表格截图:Imgur:互联网上最棒的图片

另外,||列有所不同。有时可能有3个,有时可能是6 +

2 个答案:

答案 0 :(得分:1)

Sub FillCellsFromAbove()
Dim lColumn As Long, yes As Integer

lColumn = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 1 To lColumn
    yes = InStr(Cells(1, i).Value, "||")

    If yes <> "0" Then
        'Add code to fill in the column
    End If
Next i
End Sub

答案 1 :(得分:0)

谢谢,调整了您的代码,并且它到目前为止已经开始工作。

For i = 1 To lColumn
    yes = InStr(Cells(1, i).Value, "||")
    If yes <> 0 Then
    Set Filldown = Range(Cells(1, i), Cells(lrc, i))
    Filldown.Select
    Selection.Filldown
    End If
Next i