Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


687 / 2272 ツリー ←次へ | 前へ→

【10497】個人用マクロブックのマクロを実行したい みみ 08/8/6(水) 15:49 質問[未読]
【10513】Re:個人用マクロブックのマクロを実行したい YU-TANG 08/8/18(月) 1:03 回答[未読]
【10531】有難うございました。 みみ 08/8/29(金) 12:13 お礼[未読]

【10497】個人用マクロブックのマクロを実行したい
質問  みみ  - 08/8/6(水) 15:49 -

引用なし
パスワード
   宜しくお願いいたします。

AccessからExcelのpersonal(個人用マクロブック)マクロを実行
させたいのですが、「・・マクロ名が見つかりません」と表示され実行できません。

以下コードです。

------------------------------ここから(Class module)

Private objXls As Excel.Application
Public Property Set objExcel(ByRef objExcel As Excel.Application)
  Set objXls = objExcel
End Property

Public Property Get objExcel() As Excel.Application
Set objExcel = objXls
End Property

Public Property Let objExcel(ByRef objExcel As Excel.Application)
  Set objXls = objExcel
End Property

Public Function Excel_Exe(FileName1)
objXls.Workbooks.Open FileName:=FileName1
 objExcel.Application.Run ("マクロの名前")
objXls.Workbooks.Close
End Function

------------------------------ここまで(Class module)
------------------------------ここから(module)

Sub MS読込前処理()
 
 Dim xls As Excel.Application
 Dim cls As Class1
 Set xls = New Excel.Application
 Set cls = New Class1
  
 cls.objExcel = xls
 cls.Excel_Exe ("C\ファイル名.xls")
  
 Set xls = Nothing
 Set cls = Nothing
 
End Sub

------------------------------ここまで(module)

修正点を教えていただけると大変助かります。

宜しくお願いします。

【10513】Re:個人用マクロブックのマクロを実行し...
回答  YU-TANG  - 08/8/18(月) 1:03 -

引用なし
パスワード
   こんばんは、YU-TANG です。

▼みみ さん:
>AccessからExcelのpersonal(個人用マクロブック)マクロを実行
>させたいのですが、「・・マクロ名が見つかりません」と表示され実行できません。
>
>以下コードです。

コードを拝見しましたが、どこにも個人用マクロブックを
Open している箇所が見当たらないようですが。

個人用マクロブックのマクロを実行したいのであれば、
個人用マクロブックを事前に開いておかないと参照
できません。

ちなみに CreateObject() ではなく GetObject() を使えば
暗黙的に個人用マクロブックをロードしてくれますが、
その代わりホスト PC の設定によってはマクロのセキュリティ
アラートが上がったりする(要するに、ユーザが手動でファイル
をダブルクリックして開いた場合とほぼ同じ挙動になる)ので、
要件仕様によっては使い物にならない可能性があります。
それで問題ない場合は、それでもいいでしょう。

それでは。

【10531】有難うございました。
お礼  みみ  - 08/8/29(金) 12:13 -

引用なし
パスワード
   YU-TANG さん、丁寧な回答を頂きまして有難うございました。

他の仕事に忙殺され、先程回答を読ませて頂きました。
お礼が遅くなりまして、大変申し訳ありません。

これから取り掛かってみます。

今後とも宜しくお願いいたします。



>こんばんは、YU-TANG です。
>
>▼みみ さん:
>>AccessからExcelのpersonal(個人用マクロブック)マクロを実行
>>させたいのですが、「・・マクロ名が見つかりません」と表示され実行できません。
>>
>>以下コードです。
>
>コードを拝見しましたが、どこにも個人用マクロブックを
>Open している箇所が見当たらないようですが。
>
>個人用マクロブックのマクロを実行したいのであれば、
>個人用マクロブックを事前に開いておかないと参照
>できません。
>
>ちなみに CreateObject() ではなく GetObject() を使えば
>暗黙的に個人用マクロブックをロードしてくれますが、
>その代わりホスト PC の設定によってはマクロのセキュリティ
>アラートが上がったりする(要するに、ユーザが手動でファイル
>をダブルクリックして開いた場合とほぼ同じ挙動になる)ので、
>要件仕様によっては使い物にならない可能性があります。
>それで問題ない場合は、それでもいいでしょう。
>
>それでは。

687 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078199
(SS)C-BOARD v3.8 is Free