ワークシート関数のIF関数に慣れているならVBAではIf Then とElseIfを使う。優先する条件を先に書くのはワークシート関数のIFと同じです。
Function 優良可if(x)
If "" = x Then
優良可if = ""
ElseIf x >= 80 Then
優良可if = "優"
ElseIf x >= 70 Then
優良可if = "良"
ElseIf x >= 60 Then
優良可if = "可"
Else
優良可if = "不可"
End If
End Function
Function 優良可(x)
Select Case x 'Select CaseはCaseの右の値だけを判断して上から順に処理する
Case "" 'xが空白文字の場合
優良可 = ""
Case Is >= 80 'xが80以上の場合
優良可 = "優"
Case Is >= 70 'xが70以上の場合
優良可 = "良"
Case Is >= 60 'xが60以上の場合
優良可 = "可"
Case Else 'その他
優良可 = "不可"
End Select
End Function
Function reiwaDate(y, m, d, 平成令和セル As Range)
If InStr(平成令和セル, "平成") Then '平成令和セルの文字列に平成はあれば
reiwaDate = VBA.DateSerial(y + 1988, m, d)
Else '令和
reiwaDate = VBA.DateSerial(y + 2018, m, d)
End If
End Function