根据上一行中的单元格内容重复复制数据

时间:2014-01-04 12:43:18

标签: excel vba

我正在做一个Excel VBA项目。

我在excel文件中有数据,第1行和第2行如下

Ann <blank> Ben <blank> Sam <blank>

P      S      

我想在我的第2行中重复复制PS,直到上面的单元格为blank + 1,以便我的表格如此填充:

Ann <blank> Ben <blank> Sam <blank>

P      S     P     S     P     S

如何为此编写VBA代码?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用此功能(将变量firstRowNumbersecondRowNumber更改为适合您的行号):

Sub test()
   Dim lastColumn As Long
   Dim firstRowNumber As Integer, secondRowNumber As Integer
   Dim firstCollumnNumber As Integer
   Dim rng as Range
   'number of first row'
   firstRowNumber = 3
   'number of second row'
   secondRowNumber = 4
   'number of first column where you data starts'
   firstCollumnNumber = 1 
   'determining column number of last non empty cell in first row'
   lastcolumn1 = Cells(firstRowNumber, Columns.Count).End(xlToLeft).Column

   'initial values in first and second column'
   Cells(secondRowNumber, firstCollumnNumber) = "P"
   Cells(secondRowNumber, firstCollumnNumber+1) = "S"

   'fill second row with values'
   Set rng = Cells(secondRowNumber, firstCollumnNumber)
   Range(rng, rng.Offset(0, 1)).AutoFill _
      Destination:=Range(rng, rng.Offset(0, lastcolumn1 - firstCollumnNumber + 1)), _
      Type:=xlFillDefault
End Sub