Sub 가 A 1 계획 일괄 실행 ( ) 가 A 계획 불러 붙이 기 가 B 문자 바꾸 기 가 C 텍스트 나누 기 가 D 빈 열 삭 제 가 E 소요 일 뿌리 기 End SubSub 가 A 계획 불러 붙이 기 ( ) ' ERP 에서 생산 계획 ( ZPPPR 0210 ) 자료 다운 받 아서 바탕 화면 에 저장 , 저 장시 하 기 파 일 명 및 경로 준수 ( 또는 매크로 수정 ) ' 플랜트 R 100 프로젝트 코드 , 대 공정 * 표 Sheets ( " ERP 계획 "). Select Range ( " A 1 "). Select Cells . Select Selection . Delete Shift : = xlUp Range ( " A 1 "). Select Workbooks . Open Filename : =" C : \ Users \ user \ Desktop \ PR 구성 계획 . xlsx " Cells . Select Selection . Copy Windows ( " PR 구성 표 ( 양식 rev 3 ) . xlsm "). Activate ActiveSheet . Paste Range ( " A 1 "). Select Sheets ( " 원본 "). Select Range ( " A 1 "). Select Cells . Select Selection . Delete Shift : = xlUp Range ( " A 1 "). Select Workbooks . Open Filename : =" C : \ Users \ user \ Desktop \ PR 구성 계획 . xlsx " Cells . Select Selection . Copy Windows ( " PR 구성 표 ( 양식 rev 3 ) . xlsm "). Activate ActiveSheet . Paste Range ( " A 1 "). Select Windows ( " PR 구성 자재 진도 . xlsx "). Activate ActiveWindow . Close Sheets ( " 계획 일 "). Select Cells . Select Application . CutCopyMode = False Selection . Delete Shift : = xlUp Range ( " A 1 "). Select Sheets ( " 원본 "). Select Columns ( " A : H "). Select Selection . Copy Sheets ( " 계획 일 "). Select ActiveSheet . Paste Range ( " I 3 "). Select Application . CutCopyMode = False Selection . Copy Range ( " A 1 "). Select ActiveCell . CurrentRegion . Select Selection . PasteSpecial Paste : = xlPasteAll , Operation : = xlAdd , SkipBlanks : = _ False , Transpose : = False Range ( " A 1 "). Select Range ( " I 3 "). Select Application . CutCopyMode = False Selection . Copy Sheets ( " 원본 "). Select Range ( " A 1 "). Select ActiveCell . CurrentRegion . Select Selection . PasteSpecial Paste : = xlPasteAll , Operation : = xlAdd , SkipBlanks : = _ False , Transpose : = False Range ( " A 1 "). SelectEnd SubSub 가 B 문자 바꾸 기 ( ) ' 행의 수 가 150 이상 일 때 매크로 FOR ~ NEXT 문 수정 필요 Sheets ( " 원본 "). Select Range ( " A 1 "). Select ActiveCell . CurrentRegion . Select Selection . Replace What : ="&", Replacement : ="" KK = 8 Set 품 번 1 = Worksheets ( " 원본 "). Range ( " A 1 ") Do Set 품 번 2 = 품 번 1 . Offset ( 0 , KK ) 품 번 2 . Offset ( 0 , 1 ) . Select Selection . EntireColumn . Insert For JJ = 1 To 150 Set 품 번 3 = 품 번 2 . Offset ( JJ , 0 ) If 품 번 3 <> "" Then 품 번 3 . Offset ( 0 , 1 ) . FormulaR 1 C 1 = "= SUBSTITUTE ( RC [ - 1 ] , ""*"","""")" 품 번 3 . Value = 품 번 3 . Offset ( 0 , 1 ) . Value Else End If Next 품 번 2 . Offset ( 0 , 1 ) . Select Selection . EntireColumn . Delete KK = KK + 1 Loop While Not IsEmpty ( 품 번 2 ) End SubSub 가 C 텍스트 나누 기 ( ) ' 행의 수 가 150 이상 일 때 매크로 FOR ~ NEXT 문 수정 필요 Sheets ( " 원본 "). Select Range ( " I 1 "). Select Selection . EntireColumn . Insert Range ( " J 1 "). Select Selection . End ( xlToRight ) . Select Set 품 번 1 = ActiveCell . Range ( " A 1 ") KK = 0 Do Set 품 번 2 = 품 번 1 . Offset ( 0 , KK ) For JJ = 1 To 150 Set 품 번 3 = 품 번 2 . Offset ( JJ , 0 ) If Len ( 품 번 3 ) > 3 Then 품 번 2 . Offset ( 0 , 1 ) . Select Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert Selection . EntireColumn . Insert ActiveCell . Offset ( 0 , - 1 ) . Columns ( " A : A "). EntireColumn . Select Selection . TextToColumns Destination : = ActiveCell , DataType : = xlDelimited , _ TextQualifier : = xlNone , ConsecutiveDelimiter : = False , Tab : = False , _ Semicolon : = False , Comma : = True , Space : = False , Other : = False , FieldInfo _ : = Array ( 1 , 1 ) , TrailingMinusNumbers : = True 품 번 2 . Select Selection . Copy ActiveCell . Offset ( 0 , 1 ) . Range ( " A 1 : J 1 "). Select ActiveSheet . Paste GoTo sss : Else End If Nextsss : KK = KK - 1 Loop While Not IsEmpty ( 품 번 2 ) Range ( " I 1 "). Select Selection . EntireColumn . Delete End SubSub 가 D 빈 열 삭제 ( ) ' 행의 수 가 150 이상 일 때 매크로 FOR ~ NEXT 문 수정 필요 Range ( " A 2 "). Select Selection . EntireRow . Insert KK = 8 Set 품 번 1 = Worksheets ( " 원본 "). Range ( " A 1 ") Do Set 품 번 2 = 품 번 1 . Offset ( 1 , KK ) Set 품 번 3 = 품 번 1 . Offset ( 0 , KK + 1 ) 품 번 2 . FormulaR 1 C 1 = "= SUM ( R [ 1 ] C : R [ 1000 ] C ) " If 품 번 2 = 0 Then 품 번 2 . Select Selection . EntireColumn . Delete Else KK = KK + 1 End If Loop While Not IsEmpty ( 품 번 3 ) Cells . Select Cells . EntireColumn . AutoFit Range ( " A 2 "). Select Selection . EntireRow . Delete End SubSub 가 E 소요 일 뿌리 기 ( ) Sheets ( " 원본 "). Select bb = 2 Do Set 품 번 1 = Worksheets ( " 원본 "). Range ( " H " & bb ) Set 데이트 = Worksheets ( " 계획 일 "). Range ( " H " & bb ) For KK = 1 To 50 Set 품 번 2 = 품 번 1 . Offset ( 0 , KK ) If 품 번 2 > 0 Then ww = 품 번 2 cc = bb - 1 데이트 . Offset ( 0 , ww ) . Value = 품 번 1 . Offset ( - cc , KK ) . Value Else End If Next bb = bb + 1 Loop While Not IsEmpty ( 품 번 1 ) End SubSub 가 F 소요 처 가져오 기 ( ) Sheets ( " PR 구성 표 "). Select bb = 2 Do Set 품 번 1 = Worksheets ( " 원본 "). Range ( " H " & bb ) Set 데이트 = Worksheets ( " 계획 일 "). Range ( " H " & bb ) For KK = 1 To 50 Set 품 번 2 = 품 번 1 . Offset ( 0 , KK ) If 품 번 2 > 0 Then ww = 품 번 2 cc = bb - 1 데이트 . Offset ( 0 , ww ) . Value = 품 번 1 . Offset ( - cc , KK ) . Value Else End If Next bb = bb + 1 Loop While Not IsEmpty ( 품 번 1 ) End Sub 공유 하 기 글 요소