Microsoft 製品に組み込まれている Visual Basic の実装。
きぬあさ様
お返事遅くなり申し訳ありません。
スクリプトで動くのは確認したのですが、ローカルに置いたファイルの場合、
「保護されたビューで開かれるのは1回だけ」ということが判りましたので、
不本意ではありますが「Excel2010を使用する場合は、必ずローカルで使用する事」
という運用で回避することにしました。
ご回答ありがとうございました。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
ネットワークドライブに置いてある2003で作成したxlsブックを2010で開くと、必ず保護されたビューで開かれます。
その後、「編集する」をすると、再読込?のような感じで編集可能なブックが開きますが、その際マクロのAuto_Openが動きません。
保護されたビューの設定を変えずに、どうにかして動かす方法はありませんか?
(マクロは全て許可の設定にしています)
Microsoft 製品に組み込まれている Visual Basic の実装。
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
質問作成者が受け入れた回答
きぬあさ様
お返事遅くなり申し訳ありません。
スクリプトで動くのは確認したのですが、ローカルに置いたファイルの場合、
「保護されたビューで開かれるのは1回だけ」ということが判りましたので、
不本意ではありますが「Excel2010を使用する場合は、必ずローカルで使用する事」
という運用で回避することにしました。
ご回答ありがとうございました。
こんばんは。
たしかにマクロの設定を「すべてのマクロを有効にする」にしていると
Auto_Openは動作しないですね。
根本的な解決にはなっていませんが、下記のような方法ではいかがでしょうか。
「編集を有効にする」をクリックした後「コンテンツの有効化」をクリックする。
With CreateObject("Excel.Application")
.Visible = True
.Workbooks.Open("\192.168.0.1\share\Auto_Open.xlsm").RunAutoMacros 1
End With
こんにちは。
運用上でカバーできるなら、スクリプトを通すことで処理できるかと思います。
例えば下記のようなスクリプトを用意すれば、
[RunAutoOpen.vbs]
Option Explicit
Dim oArgs
Set oArgs = WScript.Arguments
If oArgs.Count <> 0 Then
With CreateObject("Scripting.FileSystemObject")
Select Case LCase(.GetExtensionName(oArgs(0)))
'拡張子指定
Case "xls", "xlsm"
With CreateObject("Excel.Application")
.Visible = True
.Workbooks.Open(oArgs(0)).RunAutoMacros 1
End With
End Select
End With
End If
Set oArgs = Nothing
Excelファイルを開く。
ショートカットを用意して、ショートカットからファイルを開く。
上記いずれかのような方法をとることができます。
きぬあさ様
ご回答ありがとうございます。
デジタル署名もつけたりして試してみましたが、マクロの設定がなんであれ
「保護されたビュー」から「通常のビュー」になる時に、Auto_Openが動作しない事
(VBAからブックをOpenした時のような動き)が問題でした。
手動を介するのは不可なので、ローカルに置くか、諦めるしかなさそうですね...