Excel宏将值插入另一个单元格


0

好吧,我需要一些帮助excel我是新手。我有一个电子表格,将所有这些值加在一起,并将它们放在单元格M3中。但是这是我将要使用的每日电子表格,所以我想添加一个按钮来运行宏,以便在我第一次点击它时将值从M3复制到N7。但是下次我点击它时我希望它将值从M3复制到N8,依此类推,直到N37,持续一个月。

我一直试图把这件事做了一段时间,似乎找不到任何东西可以帮助我以为我会问这里,也希望有人能为我解释一下代码,这样我就能更好地理解它。我已经添加了按钮,因此无需告诉我该怎么做。


2
欢迎来到超级用户!你能发帖到目前为止吗?这需要使用Visual Basic。你有代码吗?你被困在哪里?您是否尝试过将宏录制器用于某些基本功能?
Engineer Toast

Answers:


2

通过使用该功能 工具 - >宏 - >记录新宏... ,你可以像之前一样(使用键盘和鼠标)完成所有操作,之后( 停止记录 你可以看一下 产生 宏代码。
这在许多情况下都有帮助。

如果您有任何特殊问题,请发布您的代码。


2

在工作表上放置任何Shape或AutoShape并将此宏指定给它:

Sub SaveResults()
    Dim N As Long
    If Range("N7").Value = "" Then
        N = 7
    Else
        N = Cells(Rows.Count, "N").End(xlUp).Row + 1
    End If
    Cells(N, "N").Value = Range("M3").Value
End Sub

2

这样做你想要的。

当你运行VBa时,没有撤消,所以先备份你的文件然后玩一个副本!!

请注意代码中的注释,这是您需要更新的内容

我还假设你没有使用workheet2所以这段代码使用它!

Option Explicit
Sub SaveAsNewRow()

Dim sourceData As String
sourceData = "A1"                          'the column and row from where you want to copy FROM

Dim destinationData As String
destinationData = "B"                          'the column from where you want to copy TO

Dim newRow As Integer
newRow = 1
Do While (Range(destinationData & newRow).Value <> "")
    newRow = newRow + 1
Loop

Worksheets("sheet1").Range("B" & newRow).Value = Worksheets("sheet1").Range(sourceData).Value

End Sub

如何在MS Office中添加VBA?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.