掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VBでエクセルVBAを登録 (ID:81416)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ApplicationオブジェクトのVBEプロパティを使います。 「VBE オブジェクト」について調べてみてください。 参照設定: [Microsoft Excel ** Object Library] [Microsoft Visual Basic for Application Extensiblity **] Dim oXL As Excel.Application Dim oVBE As VBIDE.VBE Dim oMod As VBIDE.VBComponent Dim oCode As VBIDE.CodeModule Set oXL = CreateObject("Excel.Application") oXL.Workbooks.Add ' oXL.Visible = True Set oVBE = oXL.VBE Set oMod = oVBE.VBProjects(1).VBComponents.Add(vbext_ct_StdModule) Set oCode = oMod.CodeModule 'oCode.InsertLines 1, "Option Explicit" oCode.InsertLines 2, "Public Sub Test()" & vbCrLf _ & " MsgBox ThisWorkbook.Name" & vbCrLf _ & "End Sub" Set oCode = Nothing Set oMod = Nothing Set oVBE = Nothing Set oXL = Nothing ただし、Excel 97等の古いバージョンであれば上記だけで良いのですが、Excel 2002等を使っている場合は、これだけでは動作しない可能性があります。最近のバージョンでは、マクロウィルスへの対策が強化されているため、既定のセキュリティ設定ですと、VBEプロパティへのアクセスは許可されていません。それらのバージョンを使っている場合は、Excelの[ツール]-[オプション]設定にて、『セキュリティ』タブから、[Visual Basic プロジェクトへのアクセスを信頼する]を有効にしておく必要があります。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.