【问题标题】:excel macro vba - what is the code for populating the data?excel宏vba - 填充数据的代码是什么?
【发布时间】:2014-09-26 06:23:58
【问题描述】:

我是 vba excel 宏的新手。通常在excel中我会双击单元格,然后数据将自动生成到最后一行。但是在vba中如何制作呢?下面是我的代码。目前我正在选择 BF2 进行 vlookup。在我得到 vlookup 的值之后。我想填充数据直到最后一行。通常以 excel 方式,我只需双击单元格,然后它就会填充。那么我们如何在vba宏中做呢?请建议。

Set myValues = Application.InputBox("Please select on the CON2:", 
Default:=Range("BE2").Address(0, 0), Type:=8)
Set myResults = Application.InputBox("Please select previous CON2 to VLOOKUP:", Type:=8)

On Error Resume Next

Set myValues = myValues.Offset
FirstRow = myValues.Row
FinalRow = Cells(65536, myResults.Column).End(xlUp).Row

Range("BF2").Formula = _
"=VLOOKUP(" & Cells(FirstRow, myValues.Column).Address(False, False) & ", " & _
"  " & myResults.Address(External:=True) & " , 1, 0)"

【问题讨论】:

  • 你能举例说明你的意思吗?你的问题不是很清楚。
  • 我是新用户,无法在此处粘贴图片。
  • 没问题,我们在下面给出了答案;)
  • 答案似乎与我的代码不匹配。你能给我建议吗? :) 谢谢
  • 那是因为我们在您将代码放入问题之前已回答。但我肯定会看看

标签: vba excel


【解决方案1】:

在 VBA 中你会做这样的事情:

Sub AutoFill()
    Dim sRng As Range, fRng As Range

    Set sRng = Worksheets("Sheet1").Range("B2")      '<~~ Range to AutoFill from
    Set fRng = Worksheets("Sheet1").Range("B2:B10")  '<~~ Range to AutoFill

    sRng.AutoFill Destination:=fRng
End Sub

此代码将根据单元格B2 的内容AutoFill 范围B2:B10

【讨论】:

    【解决方案2】:

    我想这就是你想要的。

    Sub AutoFill()
        Dim sRng As Range, fRng As Range
    
        FirstRow = myValues.Row
        FinalRow = Cells(65536, myResults.Column).End(xlUp).Row
    
        Range("BF2").Formula = _
        "=VLOOKUP(" & Cells(FirstRow, myValues.Column).Address(False, False) & ", " & _
        "  " & myResults.Address(External:=True) & " , 1, 0)"
    
        Set sRng = Worksheets("Sheet1").Range("BF2")
        Set fRng = Worksheets("Sheet1").Range("BF2:B" & FinalRow) 
    
        sRng.AutoFill Destination:=fRng
    End Sub
    

    【讨论】:

    • 还有一件事。如何在 A 和 B 之间添加列? :)
    • 带代码?我想你只是说:Range("A1").Column.Insert or something你应该可以很容易地用谷歌搜索
    猜你喜欢
    • 1970-01-01
    • 2013-05-11
    • 2012-01-29
    • 1970-01-01
    • 2021-07-25
    • 2022-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多