我有兩張包含員工記錄的工作表。 Sheet1中包含事件日期,CardNo,員工姓名,部門編號,員工號,進入和退出時間,累計工作時間,狀態,ConcatinatedColumn和備註使用VBA將一行從一張紙複製到另一張
Sheet2中包含ConcatinatedColumn,活動日期(通過從Sheet2的VLOOKUP複製),員工號,姓名,備註。
如果sheet2的備註欄中的數據是「Sick Off」,那麼應將該行插入Sheet1而不影響以前的記錄。
我已經爲它編寫了代碼,但它不起作用。
如果有人能幫助我,我會很感激!
感謝提前!
我的代碼:
Sub SickOff()
Dim objWorksheet As Sheet2
Dim rngBurnDown As Range
Dim rngCell As Range
Dim strPasteToSheet As String
'Used for the new worksheet we are pasting into
Dim objNewSheet As Sheet1
Dim rngNextAvailbleRow As Range
'Define the worksheet with our data
Set objWorksheet = ThisWorkbook.Worksheets("Sheet2")
'Dynamically define the range to the last cell.
'This doesn't include and error handling e.g. null cells
'If we are not starting in A1, then change as appropriate
Set rngBurnDown = objWorksheet.Range("G2:G" & objWorksheet.Cells(Rows.Count, "G").End(xlUp).Row)
'Now loop through all the cells in the range
For Each rngCell In rngBurnDown.Cells
objWorksheet.Select
If rngCell.Value = "Sick Off" Then
'select the entire row
rngCell.EntireRow.Select
'copy the selection
Selection.Copy
'Now identify and select the new sheet to paste into
Set objNewSheet = ThisWorkbook.Worksheets("Sheet1" & rngCell.Value)
objNewSheet.Select
'Looking at your initial question, I believe you are trying to find the next available row
Set rngNextAvailbleRow = objNewSheet.Range("A1:A" & objNewSheet.Cells(Rows.Count, "A").End(xlUp).Row)
Range("A" & rngNextAvailbleRow.Rows.Count + 1).Select
ActiveSheet.Paste
End If
Next rngCell
objWorksheet.Select
objWorksheet.Cells(1, 1).Select
'Can do some basic error handing here
'kill all objects
If IsObject(objWorksheet) Then Set objWorksheet = Nothing
If IsObject(rngBurnDown) Then Set rngBurnDown = Nothing
If IsObject(rngCell) Then Set rngCell = Nothing
If IsObject(objNewSheet) Then Set objNewSheet = Nothing
If IsObject(rngNextAvailbleRow) Then Set rngNextAvailbleRow = Nothing
End Sub
'如果Sheet 2中的備註欄中的數據是「病關「,那麼該行應插入sheet1而不影響previo我們記錄。「插入行不是一個問題,但是兩張表都有不同位置的標題。這不是問題嗎? –
是的,它會..但現在我無法找出複製粘貼行也知道如何根據他們特定的標題獲取行?如果你能幫助我,那會很好..請! –
我可以看到工作簿的樣本嗎?如果是,那麼你可以在www.wikisend.com上傳相同的內容並在此分享鏈接? –