, 다음 코드 왼쪽 해요 : 나는 ActiveSheet이 재산 index
을 가지고 볼 수있는 디버거 빠른 플레이로 그런
Sub insertRow()
Dim insertBeforeRow
insertBeforeRow = 1
ActiveSheet.Rows(insertBeforeRow).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
' The following two lines are the same - both active the second sheet in the book
Sheet2.Activate
Sheets(2).Activate
ActiveSheet.Rows(insertBeforeRow).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End Sub
- 이것이 Sheets 컬렉션의 색인 (ActiveSheet
을 클릭하고 오른쪽 클릭하여 시계 추가를 선택하십시오.)
나는 이것을 내놓으려고합니다. (오류를 체크하지 말고, 일부를 추가하는 것을 잊지 마십시오!) - 통합 문서의 마지막 시트를 선택하고 실행하면 두려워 당신은 당신의 목적에 맞는 방식으로 함께 두 개의 조각을 용접 할 수
Sub getActiveSheet()
Dim curSheetIndex, numSheets, secondSheetIndex
curSheetIndex = ActiveSheet.Index
secondSheetIndex = curSheetIndex + 1
' the following two lines are equivalent - both operate on the Active Sheet
ActiveSheet.Cells(1, 1) = "Active Sheet"
Sheets(curSheetIndex).Cells(1, 1) = "Active Sheet"
' finally, operate on the following sheet
Sheets(secondSheetIndex).Cells(1, 1) = "Sheet following Active Sheet"
End Sub
오류 사운드와 메시지 상자를) "어 - 어 더는 더미하지 않습니다." 사용 가능한 기능 및 속성을 발견 할 때 VBA 환경의 디버거는 유용합니다. 솔직히 말해서 VBA에서 이와 같은 작은 작업을 상당히 즐긴 이유 중 하나입니다. 디버거와 Excel의 객체 모델에 대해 적어도 조금은 잘 알고있을 때 종종 효과를 얻는 것이 매우 쉽습니다.
행이 맨 위 행, 미리 결정된 행 또는 사용자를 기반으로 한 선택 항목에 추가됩니까? –
이것은 두통처럼 들립니다. 누군가 행을 삭제하면 어떻게 될까요? 한 번에 여러 행을 제거하면 어떻게 될까요? 코드를 제외하고 행을 삽입하거나 제거 할 수 없도록 페이지를 잠글까요? 참조가 이미있는 경우 두 페이지를 완벽하게 동기화하면 안됩니다. Excel은 행 삽입시 참조 주소를 업데이트합니다. –
조 - 사용자 선택에 기반합니다. 하나의 광고 항목 아래에서 예산을 분석하기 위해 예산 워크 시트에 줄을 추가 할 수 있습니다. – user2993438