Excel 통합 문서의 첫 번째 시트에 입력 한 정보 ("항목")를 동일한 통합 문서의 별도 시트 인 "데이터베이스"에 붙여 넣는 VBA 서브 루틴에 다소 어려움이 있습니다. 필요한 것은 데이터베이스의 다음 빈 행에 데이터를 추가하는 것입니다.Excel VBA 빈 행에 복사
나는 이것이 아주 일반적인 질문이지만, 나는 오늘 아침 최고의 부분을 구글에서보고 있었고 그것을 얻을 수 없다는 점에 감사한다! 지금까지 관리 한 코드는 데이터를 복사하지만 항상 첫 번째 행 덮어 쓰게됩니다 :
Sub CopyDataToDatabase()
Application.ScreenUpdating = False
Dim r As Range
Set r = Sheets("Entry").Range("B6:M6")
For Each cell In r
If IsEmpty(cell) Then
MsgBox ("Error - all boxes must be filled in!")
Cancel = True
Exit Sub
Exit For
End If
Next
Dim NextRow As Range
Set NextRow = Sheets("Database").Range("A2:L2").End(xlUp).Offset(1, 0)
' Set NextRow = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row + 1
Sheets("Entry").Range("B6:M6").Copy
NextRow.PasteSpecial (xlValues)
MsgBox ("Data added successfully!")
Sheets("Entry").Range("B6:M6").ClearContents
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
설정 NextRow에 대한 댓글이 작동하지 않았다 내가 노력 다른 방법은,입니다 (오류가 있었다 '객체 필수 ').
감사의 말을 전하면서 도움이 되었으면 설명해 주시면 감사하겠습니다. VBA에 조금 익숙해졌습니다.
미리 감사드립니다.
내가이 링크 http://stackoverflow.com/questions/11169445/error-finding-last-used-cell-in-vba 한 번 봐 가지고 추천이 골 A의 마지막 셀을 찾아보십시오 아래 @ChrisNeilson에 지정된 메소드를 사용하십시오. 그러나 Col A Last 셀이 Col B - Col L과 같지 않을 수도있는 경우에는 .Find를 사용하여 마지막 셀을 찾은 다음이를 사용하여 범위를 만듭니다. –