그래, 비슷한 질문을 찾으려고했지만 엑셀의 VBA 편집기를 처음 보던 때부터 논의 된 내용을 많이 이해하지 못했습니다. 간단한 측면에서 병합으로 스프레드 시트를 하나의 스프레드 시트로 만들 수 있습니다.
, 나는이 스프레드 시트를 가지고 : "Sheet1의"와 "시트 2"시트 1 :
A B
1 Header1 Header2
2 Text1 Info1
3 Text2 Info2
시트 2 :
A B
1 Header1 Header2
2 Text3 Info3
3 Text4 Info4
그리고 내가하고 싶은 다음과 같이 두 시트를 새 시트 (Sheet3)로 병합하는 매크로 :
A B
1 Header1 Header2
2 Text1 Info1
3 Text2 Info2
4 Text3 Info3
5 Text4 Info4
매크로 기록을 시도하고 나중에 사용하기 위해 저장했습니다. 이렇게하려면 새 시트를 만들고 Sheet1에서 Sheet3까지 모두 복사하여 붙여 넣은 다음 Sheet2에서 Sheet3까지의 모든 정보를 복사합니다.
글쎄,이 매크로는 작동하지만 Excel에서 생성 한 코드가 데이터를 붙여 넣기 전에 셀 A4 (여기)를 선택하도록 만듭니다. 이 데이터에 대해서는 작동하지만 각 시트의 레코드 수가 계속 변경되면 작동하지 않습니다. 기본적으로
1) 다음 데이터 집합을 붙여 넣기 전에 자동으로 마지막 관련 셀로 이동하는 함수가 있는지 궁금합니다. (이 예제에서는 셀 A4이고 하나 이상의 테이블이 있으면 셀 A6).
2) "ActiveCell.SpecialCells (xlLastCell) .Select"(Ctrl + End를 사용할 때 활성화 됨) 기능을 보았지만 시트 끝까지 이동합니다. 그 기능을 잘 사용하려면 "Home"및 "Down"화살표 키와 비슷한 것이 필요할 것입니다.
이러한 옵션 중 하나는 나에게 좋을 것입니다. 나는 정보의 유용한 조각을 잊지 않았다 희망
Sub Collate_Sheets()
Sheets.Add After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Select
Sheets(Sheets.Count).Name = "Sheet3"
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy
Sheets("Sheet3").Select
ActiveSheet.Paste
ActiveCell.SpecialCells(xlLastCell).Select
' I need to select one cell below, and the cell in column A at this point
Sheets("Sheet2").Select
Range("A2").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveSheet.Paste
End Sub
:^_^
여기에 엑셀 2010에서 매크로 레코더에서 녹음 된 내 현재 VBA 코드입니다. 내가 그랬다면 알려줘!
아 감사합니다. 포럼에서 적절한 구문 강조를 선택했는지는 몰랐습니다 ^^; – Jerry
마지막으로 실제로 사용 된 셀 아래의 행을 가져 오려면'Range ("A"& Rows.Count) .End (xlup) .Offset (1)'을 쓸 수 있습니다. ''A ''를 당신이 필요한 컬럼으로 대체하십시오. –
제리를 환영합니다. 강조 표시를하려면 코드를 강조 표시 한 다음 맨 위에있는 코드 아이콘을 클릭하십시오. 그것은'{}'처럼 보입니다. –