私はPowerPointアドインを作成したプロジェクトで作業しています。つまり、これはリストボックスを持つユーザーフォームのみを含むということです。ユーザの選択に基づいて、他のモジュール(ベースファイル)がプレゼンテーションに追加またはインポートされ、コードが実行されます。アドインにアドインを動的にインポートまたは追加する
要件に応じてすべてのモジュールをアドインに含める必要はありません。変更を行い、共有フォルダに保存することができます。したがって、ユーザーがアドインを使用するたびに、更新されたバージョンを持つことができます。だから私はすべての変更でアドインを再循環させる必要はありません。
テキストファイル(テキストとして保存されたベースファイルのコード)からコードをインポートして実行するブランクモジュールがあります。
私はテキストファイルからコードをインポートすることができますが、inserFromファイルオプションを使用して、基本ファイルをインポートできますが、問題は常に現在のプレゼンテーションコードウィンドウに追加されています。しかし、コードをaddinコードペインに追加したいと思います。
アドインに「tempCode」という空白のモジュールがありますが、インポートされたコードを更新したいのですが、これを行うことはできません。
アドインをpptとして編集しているときにうまく動作しますが、pptをアドインに変換するとコンセプトは機能しません。
アドインコードペインにどのようにコードを追加して、アクティブなpptに追加することができますか。
コードの詳細:
私はリストボックスで、ユーザーフォームを持っています。 には3つのアイテムがあります。 オプション1 オプション2 オプション3 ユーザーが任意のオプションを選択した場合は、オプション2のコードをテキストファイルから作業モジュールにインポートします。
そして、選択したものを実行するコマンドボタン。以下は
は、私が使用していたコードです:
Sub ImportSelected()
With ActivePresentation.VBProject.VBComponents(“Mod_Working”).CodeModule
.DeleteLines 1, .CountOfLines 'it deletes any existing code
.AddFromFile “C:\Code\Option2.txt”
End With
End Sub
Code in text file:
Sub Test
Msgbox “You selected Opt 2”
End sub
Code of Command Button:
Private Sub Cmd_run_Click()
Application.Run “Mod_Working.Test”
End Sub
をこれはで動作します。作業モジュールの
名は「Mod_Working」テキストファイルの 名前が「\コード\ Option2.txt C」でありますpptモードになりますが、addinに変換されたときは表示されません。
既存のコードを表示すると、変更を提案しやすくなります。ただし、アドインを共有フォルダから「実際の」アドインをロードする「スタブ」にするほうが簡単かもしれません。こうすることで、常に最新の状態になり、作成するリボンアイテムの変更を管理することもできます。 (フォルダ内の共有アドインに「読み取り専用」としてタグを付けてください) –
プロジェクトエクスプローラでPowerPointアドインを表示するためにレジストリキーを設定しましたか? – ThunderFrame
私が使用しているコード: Sub ImportSelected() With ActivePresentation.VBProject.VBComponents( "Mod_Working")。CodeModule .DeleteLines 1、.CountOfLines「は既存のコード .AddFromFile 『C:\コード\ Option2.txt』削除テキストファイルに End Subの コードで 終了します。MsgBox「あなたはオプト2選択 小テスト」コマンドボタンの End Subの コード: ます。Private Sub Cmd_run_Click() Application.Run 『Mod_Working.Test』 End Subのこれは、PPTモードで動作しますが、アドインに変換されないとき 。 Tim、スタブの概念のビットをもっと説明してください。 また、私はオフィスシステムのようにレジストリにアクセスすることはできません –