0
Excelワークフローを自動化するためにVBAに簡単に入り込んでいます。私はワークシートを作成し、それを返す関数を持っています。VBA関数の戻り値を設定する際にエラーが発生する
Dim ws As Worksheet
Dim wb As Workbook
Set wb = Application.ActiveWorkbook
Set ws = makeNewWorksheet(wb)
機能は次のとおりです:
Function makeNewWorksheet(wb) As Worksheet
Dim wsName As String
Dim ws As Worksheet
Dim newWs As Worksheet
wsName = "Bounced " & Format(Now, "dd-mm-yyyy")
For Each ws In wb.Worksheets
If ws.Name = wsName Then
Set newWs = ws
Exit For
End If
Next
If newWs Is Nothing Then
Set ws = wb.Sheets.Add
With ws
.Name = wsName
.Move after:=Sheets(Sheets.Count)
End With
End If
makeNewWorksheet = ws
End Function
私は最後の行(makeNewWorksheet = ws
)上の関数の戻り値を代入しようとすると、私はエラーを取得:
この状況では、私が見つけることができるオンラインドキュメントはありません。すべてが定義され、ws
変数に値があります。
編集:Re。受け入れられた答えは以下の通りです。 Here'sキーワードの説明はset
です。
おかげで、私がどんなBASICバリアントを使用していたので、長い時間がかかりました。私はちょうど 'set'キーワードを調べて上記の関連する質問にリンクしました。 – edoloughlin