我需要帮助找出一个宏来复制和粘贴包含数据(而不是大的设置范围)的行中的值到另一个工作表。
名为DataEntry
的工作表是在A - J列中输入停机时间(可能有2行数据或可能有50行),只将值(而不是公式)粘贴到另一个名为{{1的工作表到列A和下一个可用行。
请帮忙!
答案 0 :(得分:-1)
您的问题有点令人困惑,但这可能是您想要开始的地方: (如果你能给出一个带有你想要的输出的示例表,那会有帮助)
Sub copyRange()
Dim dataSht As Worksheet, comboSht As Worksheet
Set dataSht = Sheets("DataEntry")
Set comboSht = Sheets("DataCombined")
Dim rngToCopy As Range
Set rngToCopy = dataSht.Range(Cells(2, 1), Cells(getLastFilledRow(dataSht), "J"))
rngToCopy.Copy
comboSht.Range("A" & (getLastFilledRow(comboSht) + 1)).PasteSpecial xlPasteValues
rngToCopy = dataSht.Range(Cells(2, 1), Cells(getLastFilledRow(dataSht), "J")).SpecialCells(xlCellTypeConstants)
rngToCopy.ClearContents
End Sub
'Gets the last row of the worksheet that contains data
Public Function getLastFilledRow(sh As Worksheet) As Integer
On Error Resume Next
getLastFilledRow = sh.Cells.Find(What:="*", _
After:=sh.Range("A1"), _
LookAt:=xlPart, _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
On Error GoTo 0
End Function