이 기사에서는 Excel 통합 문서에 새 모듈을 삽입하는 매크로를 만듭니다.

매크로를 실행하기 전에 모듈의 유형과 이름을 지정해야합니다.

ArrowMain

ArrowRaw

스크린 샷에서 볼 수 있듯이 통합 문서에는 모듈이 하나만 있습니다. 이 예제에서는 통합 문서에 클래스 모듈을 추가합니다.

ArrowOutput

논리 설명

이 기사에서는“CreateNewModule”과“CallingProcedure”라는 두 개의 매크로를 만들었습니다.

“CreateNewModule”매크로는 제공된 입력에 따라 새 모듈을 추가하는 데 사용됩니다.

“CallingProcedure”매크로는 입력을 제공하고 기본 모듈을 호출하는 데 사용됩니다.

코드 설명

ModuleComponent = Wbook.VBProject.VBComponents.Add (ModuleTypeIndex)

위의 코드는 VBA 프로젝트에 새 모듈을 추가하는 데 사용됩니다.

ModuleComponent.Name = NewModuleName 위 코드는 삽입 된 구성 요소의 이름을 바꾸는 데 사용됩니다.

ModuleTypeConst = Cint (Range ( “D12”). Value)

위의 코드는 D12 셀에서 정수 값을 가져 오는 데 사용됩니다.

ModuleName = Sheet1.TextBox2.Value 위 코드는 텍스트 상자에서 값을 가져 오는 데 사용됩니다.

아래 코드를 따르세요

Option Explicit

Sub CreateNewModule(ByVal ModuleTypeIndex As Integer, ByVal NewModuleName As String)

'Declaring variables

Dim ModuleComponent As VBComponent

Dim WBook As Workbook

'Creating object of active workbook

Set WBook = ActiveWorkbook

Set ModuleComponent = Nothing



On Error Resume Next

'Adding new module component

Set ModuleComponent = WBook.VBProject.VBComponents.Add(ModuleTypeIndex)

If Not ModuleComponent Is Nothing Then

'Renaming the new module

ModuleComponent.Name = NewModuleName

End If

On Error GoTo 0

Set ModuleComponent = Nothing

End Sub

Sub CallingProcedure()

'Declare variables

Dim ModuleTypeConst As Integer

Dim ModuleName As String

'Getting value of module name and type of module

ModuleTypeConst = CInt(Range("D12").Value)

ModuleName = Sheet1.TextBox2.Value

'Calling CreateNewModule

CreateNewModule ModuleTypeConst, ModuleName

End Sub

이 블로그가 마음에 들면 Facebook 및 Facebook에서 친구들과 공유하십시오.

여러분의 의견을 듣고 싶습니다. 작업을 개선하고 더 나은 서비스를 제공 할 수있는 방법을 알려주십시오. [email protected]로 문의 해주세요