【问题标题】:How to copy added value to cells in Excel Worksheet如何将附加值复制到 Excel 工作表中的单元格
【发布时间】:2019-09-02 03:14:16
【问题描述】:

Now Expect Result

我想在用户按下“CommandButton1”后将所有输入数据复制到右侧单元格 现在我的代码可以复制输入,但它会重复第一个输入单元格数据(如您在第一张图片中所见)

这是我的代码,它只复制第一个单元格值并将其作为输出重复(这是错误的)

Private Sub CommandButton1_Click()
Dim wks As Worksheet
Dim AddNew As Range
Dim i As Integer, j As Integer
Set wks = Sheet1

Set AddNew = wks.Range("M65356").End(xlUp).Offset(2, 0)
For i = 1 To 15
        For j = 0 To 6


    AddNew.Offset(i, j).Value = Me.Range("B2:H16").Value
        Next j
Next i

End Sub

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    假设你的范围没问题。 (它与示例中的不匹配)。试试这个:

    For i = 1 To 15
        For j = 0 To 6
            AddNew.Offset(i, j).Value2 = Cells(i + 1,j + 1).Value2
        Next j
    Next i
    

    如果你只想复制信息,然后在输入区删除前一个,只需添加:

    For i = 1 To 15
        For j = 0 To 6
            AddNew.Offset(i, j).Value2 = Cells(i + 1,j + 1).Value2
            Cells(i + 1,j + 1).Value2 =""
        Next j
    Next i
    

    希望对你有帮助

    【讨论】:

    • 谢谢您,但您的代码只能使用一次。如果我再次按下按钮,它将不会复制输入。我怎么解决这个问题?如果我想重复这个过程
    【解决方案2】:

    试试下面的代码:

    Private Sub CommandButton1_Click()
        ' Don't use Integers, they are stored as Long anyway
        Dim i As Long, j As Long
        Dim wks As Worksheet
        Set wks = Worksheets("Sheet1")
    
        For i = 1 To 15
            For j = 1 To 7
                wks.Range("M4").Cells(i, j) = wks.Range("B2").Cells(i, j)
            Next j
        Next i
    
    End Sub
    

    只需将两个单元格(B2M4)设置为要复制数据的范围的“锚点”。然后使用Cells,您可以针对这些“锚点”引用单元格(这与使用Offset 非常相似)。

    或者你可以更简洁:

    Private Sub CommandButton1_Click()
        Dim wks As Worksheet
        Set wks = Worksheets("Sheet1")
    
        wks.Range("B2:H18").Copy wks.Range("M4")
    End Sub
    

    【讨论】:

    • 谢谢,但我确实有一些问题。如果用户按下按钮并出现结果。我想删除输入,以便用户可以重新输入新数据。这种代码怎么写?
    • @CeeSupa 如果答案对您有所帮助,您应该通过选中左侧的绿色复选标记来接受它。如果您还有其他问题,请在单独的帖子中提问或谷歌它:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多