計算を含むワークブックである VBA を使用してアドインを作成しました。アドインには、アクセス データベースから関連情報を抽出し、ワークブックに入力するためのユーザー フォームがあります。データが入力された後、Sheet1 で計算が実行されます。アドイン マクロの実行時に、アドイン ワークシートから新しいワークブックにワークシート "Sheet1" を貼り付ける必要があります。
しかし、アドインを実行すると、ワークシートが非表示になっているように見えるため、データが更新されません。次のエラーが表示されます:「実行時エラー '1004': オブジェクト '_Global' のメソッド 'Worksheets' が失敗しました」。
必要な計算が実行されるワークシートを含むアドインの操作方法を誰か教えてもらえますか?
興味深いのは、アドインを Excel のアドインのリストから削除した後にロードすると、完全に実行されることです。しかし、マクロを再実行すると、ワークシートが非表示になり、同じエラーが表示されます。私はVBAにかなり慣れていないので、何か提案をいただければ幸いです。
編集
コード:
Private Sub OptionOK_Click() 'On selecting OK from userform
Dim ws1 As Worksheet
Sheets("Sheet1").Visible = True
Set ws1 = Worksheets("Sheet1")
'User Form Validation
If Trim(Me.cboData.value) = "" Then
Me.cboData.SetFocus
MsgBox "Please complete the form"
Exit Sub
End If
'copies data to given cell in excel
ws1.Range("A1").value = Me.cboData.value
'To copy selection from "Sheet1" into new workbook
Workbooks("myaddin.xlam").Sheets(1).Copy
End Sub
...> Sheets("Sheet1").Visible = True でエラーが発生します。