我知道,我知道。有很多建议如何解决这个特定的问题,但不知怎的,他们都倾向于失败。
我拥有(简化):A(Mac)Excel-Sheet"输出"用:
Name Time Date
Mike 08:00 01.01.2016
第二行是根据另一张纸上的某些输入产生数据。
我需要什么: 每当我改变第二行"输出" (即更改输入),我可以单击一个按钮将整个第二行添加到新工作表中#34; Log" (也会有一个标题)。基本上在单击按钮时记录数据。数据只能添加一次,删除相同数据的多个条目。在" Log"中记录数据后,第二行"输出"不需要清除,但我不能再添加相同的数据。
有什么想法吗?
*编辑
我从这里修改了代码:http://goo.gl/48jjDo。
Sub Submit()
Application.ScreenUpdating = False
Dim refTable As Variant, trans As Variant
refTable = Array("A = A2", "B = B2", "C=C2")
Dim Row As Long
Row = Worksheets("Log").UsedRange.Rows.Count + 1
For Each trans In refTable
Dim Dest As String, Field As String
Dest = Trim(Left(trans, InStr(1, trans, "=") - 1)) & Row
Field = Trim(Right(trans, Len(trans) - InStr(1, trans, "=")))
Worksheets("Log").Range(Dest).value = Worksheets("Output").Range(Field).value
Next
Application.ScreenUpdating = True
End Sub
* EDIT2
好的,这让我更进一步:
Sub CopyRangeFromSheet1toSheet2()
Dim lastRow As Long
lastRow = Sheets("Sheet2").Range("A100000").End(xlUp).Row + 1 ' then next free row in sheet2
Sheets("Sheet1").Range("A2:C2").Copy Destination:=Sheets("Sheet2").Range("A" & lastRow)
End Sub
但是,如何立即检查多个数据?我只需要粘贴值。
答案 0 :(得分:0)
到目前为止,这有效:
Sub CopyFormulas()
Dim sht1 As Worksheet, sht2 As Worksheet
Set sht1 = Sheets("Output")
Set sht2 = Sheets("Log")
sht1.Range("A2:C2").Copy
sht2.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
response = MsgBox("data was added")
End Sub
不仅仅是检查缺少的多个条目