2017-11-13 15 views
-1

전이 매크로에 익숙하지 않으며 이전에는 사용하지 않았으므로 약간의 도움이 될 수 있습니다.정보 목록에서 매크로를 사용하십시오. 각 정보 행에 대한 새로운 워크 시트가 필요합니다.

템플릿과 정보 목록에서 새로운 견적을 만들기 위해 매크로를 설정했습니다. 고객 정보 등을 포함하는 Summery라는 시트가 있으며이 모든 정보는 견적 템플릿에 추가해야합니다. 나는 기본적인 매크로를 만들었지 만 그 일을한다. 그러나 이제는 나열된 각 고객에 대해 동일한 매크로를 수행해야한다. 현재로서는 첫 번째 행에서만 실행됩니다. 누군가가 전체 고객 목록을 실행하는 데 사용해야하는 코드를 도와 줄 수 있습니까?

Sub Macro2() 
' 
' Macro2 Macro 
' Create New Quote for each customer 
' 
' Keyboard Shortcut: Ctrl+q 

    Sheets("Master").Select 
    Sheets("Master").Copy After:=Sheets(2) 
    Range("A13").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-9]C[1]" 
    Range("A15").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-11]C[2]" 
    Range("E13").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-9]C[-1]" 
    Range("E15").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-11]C" 
    Range("B19").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-15]C[5]" 
    Range("B20").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-16]C[6]" 
    Range("B21").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-17]C[7]" 
    Range("B22").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-18]C[8]" 
    Range("B23").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-19]C[9]" 
    Range("B24").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-20]C[10]" 
    Range("B25").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-21]C[11]" 
    Range("B26").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-22]C[12]" 
    Range("B27").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-23]C[13]" 
    Range("B28").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-24]C[14]" 
    Range("B30").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-26]C[15]" 
    Range("B31").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-27]C[16]" 
    Range("B32").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-28]C[17]" 
    Range("B33").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-29]C[18]" 
    Range("B34").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-30]C[19]" 
    Range("B35").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-31]C[20]" 
    Range("B36").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-32]C[21]" 
    Range("B37").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-33]C[22]" 
    Range("B38").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-34]C[23]" 
    Range("B39").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-35]C[24]" 
    Range("A40:D40").Select 
    ActiveWindow.SmallScroll Down:=9 
    Range("B41").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-37]C[25]" 
    Range("B42").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-38]C[26]" 
    Range("B43").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-39]C[27]" 
    Range("B45").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-41]C[28]" 
    Range("B47").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-43]C[29]" 
    Range("B48").Select 
    ActiveWindow.SmallScroll Down:=-9 
    Range("C19").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-15]C[30]" 
    Range("C20").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-16]C[31]" 
    Range("C21").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-17]C[32]" 
    Range("C22").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-18]C[33]" 
    Range("C23").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-19]C[34]" 
    Range("C24").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-20]C[35]" 
    Range("C25").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-21]C[36]" 
    Range("C26").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-22]C[37]" 
    Range("C27").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-23]C[38]" 
    Range("C28").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-24]C[39]" 
    Range("C30").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-26]C[40]" 
    Range("C31").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-27]C[41]" 
    Range("C32").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-28]C[42]" 
    Range("C33").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-29]C[43]" 
    Range("C34").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-30]C[44]" 
    Range("C35").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-31]C[45]" 
    Range("C36").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-32]C[46]" 
    Range("C37").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-33]C[47]" 
    Range("C38").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-34]C[48]" 
    Range("C39").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-35]C[49]" 
    Range("A40:D40").Select 
    ActiveWindow.SmallScroll Down:=15 
    Range("C41").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-37]C[50]" 
    Range("C42").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-38]C[51]" 
    Range("C43").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-39]C[52]" 
    Range("C45").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-41]C[53]" 
    Range("C47").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-43]C[54]" 
    Range("C48").Select 
    ActiveSheet.Name = Range("A13").Value 


End Sub 

감사

+0

안녕 루시, 귀하의 궁금한 점은 무엇입니까? 읽어보십시오> [왜 누군가가 나를 도울 수 있습니까?] 실제 질문이 아닙니까?] (https://meta.stackoverflow.com/questions/284236/why-is-can-someone-help-me-not-an- 실제 질문) 또한 [읽는 방법] (https://stackoverflow.com/help/how-to-ask) –

+0

죄송합니다. 원본 게시물을 업데이트했습니다. – Lucy

+0

Hello Lucy, 귀하의 매크로가 기록 된 것으로 보입니다. , 당신이 요구하는 것은 누군가가 당신을 위해 매크로를 수정한다는 것입니다. 매크로를 수정하는 방법에 대해 알고 있습니까? 나는 누군가가 너의 일을 자유롭게 할 수 있다고 생각하지 않는다. –

답변

0

당신의 요구 사항은 매우 불분명 우리는 심지어 '여름'시트 (거기에 아마도 오타)처럼 보이는 방법을 모르겠어요. 그래서이 코드를 작성하여 어떻게 달성 할 수 있는지에 대해 알려줄 것입니다. 귀하의 요구 사항에 따라 '여름'시트에 대한 참조를 변경하거나 동적으로 만드십시오.

Sub do_random() 
last_row = ThisWorkbook.Worksheets("Summery").Cells(1, 1).End(xlDown).Row 

For i = 1 To last_row 

    Sheets("Master").Select 
    Sheets("Master").Copy After:=Sheets(2) 
    Range("A13").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-9]C[1]" 
    Range("A15").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-11]C[2]" 
    Range("E13").Select 
    ActiveCell.FormulaR1C1 = "=Summery!R[-9]C[-1]" 
    .... 
    'Do what ever you want in here. 

Next i 
End Sub