Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 参考不同工作表的最后一行_Vba_Excel - Fatal编程技术网

Vba 参考不同工作表的最后一行

Vba 参考不同工作表的最后一行,vba,excel,Vba,Excel,目前我在第二张纸上有这个 Range("A2").Select Selection.AutoFill Destination:=Range("A2:A1001") Range("A2:A1001").Select Range("B2").Select Selection.AutoFill Destination:=Range("B2:B1001") Range("B2:B1001").Select Range("C2").Select Selection.AutoFill Destination

目前我在第二张纸上有这个

Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A1001")
Range("A2:A1001").Select
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B1001")
Range("B2:B1001").Select
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C1001")
Range("C2:C1001").Select
Range("D2").Select
Selection.AutoFill Destination:=Range("D2:D1001")
Range("D2:D1001").Select
Range("E2").Select
Selection.AutoFill Destination:=Range("E2:E1001")
Range("E2:E1001").Select
Range("G2").Select
Selection.AutoFill Destination:=Range("G2:G1001")
Range("G2:G1001").Select
Range("H2").Select
Selection.AutoFill Destination:=Range("H2:H1001")
Range("H2:H1001").Select
Range("I2").Select
Selection.AutoFill Destination:=Range("I2:I1001")
Range("I2:I1001").Select
Range("J2").Select
Selection.AutoFill Destination:=Range("J2:J1001")
Range("J2:J1001").Select
Range("K2").Select
Selection.AutoFill Destination:=Range("K2:K1001")
Range("K2:K1001").Select
与目标范围A2到A1001不同,我希望A2到与表1相同的最后一行,例如,如果表1中的最后一行是第147行,我希望代码填充
Selection。自动填充目标:=范围(“A2:A147”)

我不知道如何做到这一点


谢谢

假设您的原始数据在Sheet1上,并且您正在复制到Sheet2,以下是您的操作方法:

Dim intLastrow As Integer

intLastrow = Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row
Sheets("Sheet2").Range("A2").Select
Selection.AutoFill Destination:=Range(cells(2,"A"),cells(intLastrow, "A"))
Sheets("Sheet2").Range(Cells(2, "A"), Cells(intLastrow, "A")).Select

intLastrow = Sheets("Sheet1").Cells(Rows.Count, "B").End(xlUp).Row    
Sheets("Sheet2").Range("B2").Select
Selection.AutoFill Destination:=Range(cells(2,"B"),cells(intLastrow, "B"))
Sheets("Sheet2").Range(Cells(2, "B"), Cells(intLastrow, "B")).Select   

假设您的原始数据在Sheet1上,并且您正在复制到Sheet2,下面是您的操作方法:

Dim intLastrow As Integer

intLastrow = Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row
Sheets("Sheet2").Range("A2").Select
Selection.AutoFill Destination:=Range(cells(2,"A"),cells(intLastrow, "A"))
Sheets("Sheet2").Range(Cells(2, "A"), Cells(intLastrow, "A")).Select

intLastrow = Sheets("Sheet1").Cells(Rows.Count, "B").End(xlUp).Row    
Sheets("Sheet2").Range("B2").Select
Selection.AutoFill Destination:=Range(cells(2,"B"),cells(intLastrow, "B"))
Sheets("Sheet2").Range(Cells(2, "B"), Cells(intLastrow, "B")).Select   

这应该对你有用

Sub LastRowAutofill()
    On Error Resume Next
    Dim wsSheet1 As Worksheet: Set wsSheet1 = Worksheets("Sheet1")
    Dim LastRow As Long
    LastRow = wsSheet1.Columns(1).Find("*", LookIn:=xlValues, SearchDirection:=xlPrevious).Row

    Dim i As Long
    With Worksheets("Sheet2")
        For i = 1 To 11
            If i <> 6 Then .Cells(2, i).AutoFill Destination:=.Range(.Cells(2, i), .Cells(LastRow, i))
        Next i
    End With

End Sub

这应该对你有用

Sub LastRowAutofill()
    On Error Resume Next
    Dim wsSheet1 As Worksheet: Set wsSheet1 = Worksheets("Sheet1")
    Dim LastRow As Long
    LastRow = wsSheet1.Columns(1).Find("*", LookIn:=xlValues, SearchDirection:=xlPrevious).Row

    Dim i As Long
    With Worksheets("Sheet2")
        For i = 1 To 11
            If i <> 6 Then .Cells(2, i).AutoFill Destination:=.Range(.Cells(2, i), .Cells(LastRow, i))
        Next i
    End With

End Sub

谷歌如何找到最后一行。编辑:我这么说是因为在你写问题的时候,谷歌已经告诉你了;因为我已经把它标记为书签。
带工作表(“原始”)lastrow=.Range(“I”和.Rows.Count)。End(xlUp)。行结束带工作表(“修复器”)Range(“A2”)。选择Selection.AutoFill Destination:=Range(“A2:A&lastrow”)Range(“A2”)。像这样选择
谷歌如何查找最后一行。编辑:我这么说是因为在你写问题的时候,谷歌已经告诉你了;因为我已将其标记为书签。
带图纸(“原始”)lastrow=.Range(“I”和.Rows.Count)。End(xlUp)。行结束带图纸(“修复器”)Range(“A2”)。选择Selection。自动填充目标:=Range(“A2:A和lastrow”)Range(“A2”)。像这样选择
????