Functionの解説(意外とほとんどの人が分かってないよねって話)


プロシージャには「Subプロシージャ」と「Functionプロシージャ」があります。両者の違いは何でしょう?そして、それぞれ、どう使い分けるべきものなのでしょう?Functionプロシージャを完全に理解するため、この動画では(たぶん)世界で一番分かりやすい"動き"で解説します。また、最後に、実務であるあるのFunctionプロシージャと、色をカウントするという、ちょっと変わったFunctionプロシージャをご紹介します。すべてのVBAユーザー必見の動画です。

↓左上にあるをクリックすると、チャンネル登録できます。ぜひ、チャンネル登録をお願いします。あなたのチャンネル登録が、私のやる気を維持向上してくれます(笑)

【シートを追加して名前を変える】

Sub Macro1()
    Dim i As Long
    For i = 2 To 11
        If 存在確認(Sheets(1).Cells(i, 1)) = "ない" Then
            Sheets.Add After:=Sheets(Sheets.Count)
            ActiveSheet.Name = Sheets(1).Cells(i, 1)
        End If
    Next i
    Sheets(1).Activate
End Sub

Function 存在確認(A As String)
    Dim i As Long
    For i = 1 To Sheets.Count
        If Sheets(i).Name = A Then
            存在確認 = "ある"
            Exit Function
        End If
    Next i
    存在確認 = "ない"
End Function

【色をカウントする】

Sub Macro1()
    Dim i As Long
    For i = 2 To 5
        Cells(i, 4) = 色数(Cells(i, 3).Interior.Color)
    Next i
End Sub

Function 色数(A As Long)
    Dim i As Long, N As Long
    For i = 2 To 17
        If Cells(i, 1).Interior.Color = A Then
            N = N + 1
        End If
    Next i
    色数 = N
End Function

動画で使用したブックのダウンロード(20200717a.xlsm)シートを挿入するやつ

動画で使用したブックのダウンロード(20200717b.xlsm)色をカウントするやつ

Office TANAKAのYouTubeチャンネルはこちら(動画一覧ページ)