VBA: 버튼 설명을 사용하여 분기 처리

개시하다


버튼에 어떤 프로그램이 할당되어 있는지 모르십니까?
내가 될 거야.머릿속에 이거야.
그림 1.살벌한 거.
먼저 코드를 표시한 다음에 초보자를 대상으로 하는 해설을 기록한다.

기본 코드


다음 코드를 표준 모듈로 복사하면 누구나 사용할 수 있습니다.
지침 획득 과정
Function CapFBtn()
    'ボタン名取得
    NmFBtn = Application.Caller
    'キャプション取得
    With ActiveSheet
        CapFBtn = .DrawingObjects(NmFBtn).Characters.Text
    End With
End Function
버튼에 등록하는 과정
Sub DoCap()
    '-----共通処理があれば


    '-----共通処理ここまで
    'ボタンのキャプション取得
    TgtProc = CapFBtn
    'キャプション名のプロシージャ実行
    Application.Run TgtProc
    '-----共通処理があれば


    '-----共通処理ここまで
End Sub
DoCap 매크로를 버튼에 등록하면 설명과 동일한 절차를 수행할 수 있습니다.

무슨


프로세스 이름과 설명을 동일하게 함으로써 처리 지점을
  • 코드는 고정된 가시성과 유지보수성을 가지고 있다.
  • 여러 개의 단추가 공동 처리된 후 개별 처리로 갈라질 때 간단하다.
  • 다음은 읽고 싶은 사람만 읽어주세요.

    해설


    용어를 대략적으로 설명하면서 견본 버튼의 제작 방법을 설명한다.

    ①일반적인 방법


    우선 문장 첫머리의 기본 코드를 사용하지 않는 방법으로 두 가지 샘플 버튼을 설치해 보세요.

    1) 버튼 생성


    우선 두 개의 버튼을 만듭니다.단추는 창 컨트롤과 기록된 단추를 사용하십시오. (동작 X가 아닌 사용자)
    그림 2.사용할 컨트롤
    버튼 설명은 버튼을 마우스 오른쪽 버튼으로 클릭하여 텍스트 편집에서 수정할 수 있는 텍스트입니다.그림 3과 같이 ReportPDF 및 ReportCSV를 덮어쓰십시오.
    그림 3.버튼 설명
    칠칠은 버튼 이름과 버튼 설명이 다르다.왼쪽 위 모서리의 이름 상자에 표시되는 객체 이름입니다.이거 그냥 해도 돼.
    그림 4.버튼 이름
    대충 설명은 했지만 버튼 이름은 이번에 언급하지 않았다.

    2) 샘플 제작 과정


    실험을 위해 아래의 샘플 과정을 써 보세요.
    Sub 뒤에 있는 이름, ReportPDF 및 ReportCSV는 프로그램 이름입니다.
    샘플 프로세스
    'Report_PDFプロシージャ
    Sub Report_PDF()
        '印刷
        ActiveSheet.PrintOut
        'PDF出力
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:="C:\test\test.pdf"
    End Sub
    
    'Report_CSVプロシージャ
    Sub Report_CSV()
        '印刷
        ActiveSheet.PrintOut
        'CSV出力
        ActiveWorkbook.SaveAs Filename:="C:\test\test.csv", FileFormat:=xlCSV
    End Sub
    
    버튼 설명과 프로세스 이름은 일치하지 않지만 코드의 가시성이 높아져서 이렇게 합니다.본 기사의 ②에서 이름의 일치성을 이용하여 버튼 설명을 통해 지점을 처리한다.

    3) 버튼에 매크로 지정


    아까 샘플 프로그램을 버튼에 등록하세요.
  • Report PDF가 적힌 버튼을 마우스 오른쪽 버튼으로 클릭합니다.
  • 컨텍스트 메뉴에서 매크로 등록 을 선택하여 Report PDF 프로세스를 등록합니다.
  • Report CSV에도 Report CSV 프로그램을 등록합니다.

  • 그림 5.등록 매크로
    여기까지는 일반적인 샘플 버튼의 실현 방법이다.
    Report PDF라고 적힌 버튼을 누르면 Report PDF 프로그램이 Report CSV라고 적힌 버튼을 누르면 Report CSV 프로그램이 제대로 작동해야 합니다.

    ② 분기 처리 방법을 버튼으로 설명


    그럼 기본 코드를 사용해서 두 개의 샘플 버튼을 설치해 보세요.

    1) 기본 코드를 작성합니다.


    우선 두 개의 기본 코드를 쓴다.
    지침 획득 과정
    Function CapFBtn()
        'ボタン名取得
        NmFBtn = Application.Caller
        'キャプション取得
        With ActiveSheet
            CapFBtn = .DrawingObjects(NmFBtn).Characters.Text
        End With
    End Function
    
    는 문장의 시작 코드와 완전히 같다.그렇게 써 보세요.
    버튼에 등록하는 과정
    Sub DoCap()
        '-----共通処理があれば
        '印刷
        ActiveSheet.PrintOut
        '-----共通処理ここまで
        'ボタンのキャプション取得
        TgtProc = CapFBtn
        'キャプション名のプロシージャ実行
        Application.Run TgtProc
        '-----共通処理があれば
    
        '-----共通処理ここまで
    End Sub
    
    견본 프로세스(Report PDF, Report CSV)에서 개별 처리를 하기 전에 반드시 일반 처리로 Print Out을 진행해야 한다.그러면 이번에는 버튼에 등록하는 과정(Docap)의 공동 처리 부분에 Print Out 처리를 추가합니다.

    2) 샘플 작성 과정.


    1) 에서 일반 프로세스는 등록 버튼 프로세스(Docap)에 기록되어 있으므로 개별 샘플 프로세스는 Print Out 프로세스가 필요하지 않습니다.
    샘플 프로세스
    'Report_PDFプロシージャ
    Sub Report_PDF()
        'PDF出力
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:="C:\test\test.pdf"
    End Sub
    
    'Report_CSVプロシージャ
    Sub Report_CSV()
        'CSV出力
        ActiveWorkbook.SaveAs Filename:="C:\test\test.csv", FileFormat:=xlCSV
    End Sub
    

    3) 버튼에 매크로 지정


    버튼에 샘플 과정을 등록해 보세요.
  • Report PDF가 적힌 버튼을 마우스 오른쪽 버튼으로 클릭합니다.
  • 컨텍스트 메뉴에서 매크로 등록을 선택하여 DoCap 프로세스를 등록합니다.
  • Report CSV에도 DoCap 프로그램을 등록합니다.
  • 이렇게 하면 두 가지 샘플 버튼에서 ①와 같은 처리를 할 수 있다.
    좋아하기는 하지만 도구의 성질에 따라 사용하기도 한다.

    살벌한 그거.


    감각적으로 이해하고 싶은 사람은 이쪽을 보세요.

    돌출점을 연기하게 하는 규칙.

  • 시바견의 이름을 볼록점으로 한다.
  • 에는'빵밭','인도코끼리'등의 예술이 있다.
  • 볼록점에 절대 "야옹!"그 다음에 연기하라고 해.
  • 명령 예

  • "'포키, 야옹야옹!'하고 찍자!"
  • "'포키, 야옹야옹!'하고 다시 코끼리를 만들자!"
  • 그림 1.살벌한 거.
    아니, 하고 싶은 일이니까 네 이름이 어떻든 상관없어.그리고 "야옹!"라는 부분은 일일이 명령하지 말아야 한다.
    나는'파타','인도코끼리'라고 적힌 버튼을 누르기만 하면 포치에게 정확하게 명령을 내리고 싶었다.
    아.. 아, 얼마나 어려운지 알아?
    SATUBATU
    그림을 빌렸어요.

    좋은 웹페이지 즐겨찾기