• 締切済み

エクセルVBAで全てのマクロを実行するには?

エクセルVBAの初心者です。 エクセルの他のワークブックからマクロのあるワークブックを開き、値を入れる式は成功したのですが、マクロにはパスワード保護がかかっており、マクロの実行式を入れることができません。 DoCmd.RunMacro で マクロ名は必須のようです。 マクロボタンは1つだけです。 すべてのマクロを実行、というようなコマンドは可能でしょうか?

みんなの回答

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.1

こんにちは DoCmd.RunMacro って事はAccessですよね? Excel VBAでAccessを操作しているのですか? Sub test1() '参照設定要:Microsoft Dao 3.* Object Library   Dim fNm As String   Dim dbs As DAO.Database   Dim ctr As DAO.Container   Dim doc As DAO.Document   Dim iC As Integer   Dim iD As Integer   Dim i As Integer   Dim j As Long   Dim mdl As Module   fNm = "C:\temp\test.mdb"  'DBへのフルパス   Set dbs = DBEngine.OpenDatabase(fNm, False, False, "MS Access;")   iC = 6: j = 1   If dbs.Containers(iC).Documents.Count > 0 Then     For iD = 0 To dbs.Containers(iC).Documents.Count - 1       Cells(j, 1) = dbs.Containers(iC).Documents(iD).Name        j = j + 1     Next iD   Else     MsgBox "マクロ無し"   End If   dbs.Close   Set doc = Nothing   Set ctr = Nothing   Set dbs = Nothing End Sub とかで、マクロ名抽出出来ますか? 出来たらそれを元にマクロ実行してみてはどうですか?

関連するQ&A