2014-11-17 1 views
2

sheet1에 2000 행과 50 열의 Excel 파일이 있습니다. . 동일한 통합 문서에서 3 행부터 900 행까지 다른 모든 행을 복사하여 붙여 넣기해야합니다. 그리고 나서 901 행부터 2000 행까지 매 6 행마다 이전에 붙여 넣은 행 바로 다음에 sheet1에서 sheet2로 이동합니다. 나는 VBA를 처음 접했습니다.복사 n1 번째 행부터 x2 번째 행 (시트 1)까지 복사 한 다음 매 n 번째 행마다 매 x2 번째 행을 복사합니다.

Dim strValue As String 
    Dim strCellNum As String 
    Dim x As String 
    x = 1 
    For i = 1 To 700 Step 7 
    strCellNum = "A" & i 
    strValue = Worksheets("Sheet1").Range(strCellNum).Value 
    Debug.Print strValue 
    Worksheets("Sheet2").Range("A" & x).Value = strValue 
    x = x + 1 
    Next 
+0

'R = 3-900 단계 2' ....'R의 = 901-2000 단계 : 사람이

노력 ...이 매크로를 작성 좀 도와 주실 래요 6' –

+0

r = 3 ~ 899 2 단계 ... r = 901 ~ 1999의 경우 6 단계? 내가 원하는 경우 –

+0

어떻게 행에 대한 strigs을 설정, 내가 아는 그냥 문자열 X = 1 으로 문자열로 문자열 희미한 strCellNum으로 희미한 X를 코드 희미한 strValue의이 유형을 사용할 수 있습니다 값 I = 1 (700)하려면 Step 7 strValue = Worksheets ("Sheet1"). 범위 (strCellNum) .Value Debug.Print strValue 워크 시트 ("Sheet2"). 범위 ("A"& x). 값 = strValue x = x + 1 다음 하지만 행을 복사하기위한 매크로를 작성하는 방법을 모르겠다. – Nipa

답변

1
Sub CopyNew() 
    Dim NextDest As Long 
    Dim CurRow As Long 

    NextDest = 1 

    For CurRow = 3 To 900 Step 2 
     Sheets("Sheet1").Rows(CurRow).Copy 
     Sheets("Sheet2").Range("A" & NextDest).PasteSpecial 
     NextDest = NextDest + 1 
    Next CurRow 
    For CurRow = 901 To 2000 Step 6 
     Sheets("Sheet1").Rows(CurRow).Copy 
     Sheets("Sheet2").Range("A" & NextDest).PasteSpecial 
     NextDest = NextDest + 1 
    Next CurRow 

End Sub 
관련 문제