将单元格行复制到另一张纸以重复使用

问题描述 投票:0回答:1

上下文:我正在制作一个 Excel 工作簿,其他人可以打开它并在 3 个单元格中连续输入 3 个单独的值(见下文),并附上它们的缩写。

列表 价值观
x 值输入1
y 值输入2
z 数值输入3
缩写 值首字母

问题:理想情况下,我会有一个 VBA 按钮,一旦用户按下该按钮,它会将数据复制到另一个工作表或一些隐藏单元格中,这样当下一个人打开电子表格时,他们将无法查看前一个人的数据输入。对于每次按下按钮,理想情况下都会将数据行输入到单独的行中,这样就不会覆盖前一个人的数据。因此,如果三个人输入上面的值并按下按钮,那么这三个人就会形成三行。我希望这是有道理的。

我尝试了 stackoverflow 和 stackexchange 的一些解决方案,但他们还没有完成完整的任务。

我找到了一种解决方案,其中数据确实复制到单独的工作表中,并将数据放置在预先输入的缩写列表下方(将输入的缩写与单独工作表中存储的内容相匹配),但仅限于单个数据单元格。这与我上面描述的不同,但尝试以这种方式看看是否可以让它工作。该解决方案:Excel vba 按钮使用日期条件将数据从一个单元格粘贴到另一个单元格

excel vba button copy-paste
1个回答
0
投票

此代码将

Reg
表上的指定范围记录为一行,并添加发生时的日期/时间。

Sub data_copier()

Set inp_range = Worksheets("base").Range("B2:B5")  'the name of the input sheet

Set reg_sheet = Worksheets("Reg")    ' the name of the backup sheet

last_row = reg_sheet.Cells(reg_sheet.rows.Count, 1).End(xlUp).Row
If last_row <> 1 Then
  last_row = last_row + 1
End If
reg_sheet.Range(reg_sheet.Cells(last_row, 1), reg_sheet.Cells(last_row, 4)) = WorksheetFunction.Transpose(inp_range)
inp_range.Clear
reg_sheet.Cells(last_row, 5) = Now

End Sub
© www.soinside.com 2019 - 2024. All rights reserved.