0

私は Excel スプレッドシートを持っています。そのスプレッドシートには、自分で作成した VBA スクリプトがあります。

頻繁にコードにいくつかの変更を加え、(ctrl-V) を使用して (オンクリック イベントによって) ボタンの後ろのフォームにこのコードをコピー (ctrl-C) する必要があります。

この VBA コードを Access 2007 にインポートできるように、スプレッドシート (VBA コード) に変更を加えたときに Access プロシージャでこれを自動的に行うことはできますか?

4

1 に答える 1

0

VBA でのメタプログラミングは興味深いトピックです。VBIDE ライブラリを検索する必要があります。おそらく、CodeModuleオブジェクトとChip Pearson の「Programming The VBA Editor」から始めると思います。

次の例では、モジュールの名前を含むモジュール スコープのプライベート定数をアクティブなコード ペインに挿入します。

Private Sub insertModuleName()
' inserts a module name constant into every module in active project

    Dim oPrj As VBProject
    Set oPrj = VBE.ActiveVBProject
    Dim oMod As CodeModule
    Dim oCom As VBComponent

    Dim str As String
    str = "Private Const MODULE_NAME As String = "

    Dim i As Long
    For i = 1 To oPrj.VBComponents.count
       oPrj.VBComponents.Item(i).CodeModule.InsertLines 3, str & Chr(34) & oPrj.VBComponents.Item(i).NAME & Chr(34)
    Next i
End Sub
于 2014-04-28T20:32:09.853 に答える