office文章のハイパーリンクでCookie情報が紛失することがあるらしいよ。
タイトルの件、認証システムのあるサイトに対して、
「ハイパーリンクでURL指定したサイトが認証エラーで開かないよ?なんで?」っていうことがあった。
100%エラーになるんじゃなくて、
何回かやってるとうまく行くとかいうこともあって「?」だらけ。
マクロとか関数が悪いのかな?
タイミングが悪いのかな?
といろいろやってみてたけど、既出の問題だったみたい。
こちらのブログさんがしっかりまとめてくださっていてとても勉強になった。
はじめ@Blog「Office製品のハイパーリンクとログイン認証画面」
http://hajimesan.net/blog/?p=875
原因はどうやらMSの不具合らしい…
Microsoft サポートオンライン 「Office 文書内のハイパーリンクを開くと Cookie が紛失する」
http://support.microsoft.com/kb/811929/ja
ログオン ページまたは、エラー ページにリダイレクトされますまたは SSO の Web サイトで、Office ドキュメントへのハイパーリンクをクリックすると認証情報が要求されます
http://support.microsoft.com/kb/899927/ja
ハイパーリンクは使えないってことがわかったので、
マクロでリンクボタンを作ってやることで対応してみた。
ハイパーリンクおいてたあたりに適当にボタンを作って、
以下の処理を登録してあげる。
*************************
*************************
IEオブジェクトの操作を検索すると、
「処理の終了を待つ」を一緒に設定する以下の処理が紹介されているけど、
*************************
*************************
今回はリンク先を開くだけで後続処理はないので何もせずに放置。
ちなみに「InternetExplorer.Application」は
基本的に同一セッションでブラウザを操作するらしい。
新規セッションで開くには+αが必要らしいので、そのうち調べようかな…
「ハイパーリンクでURL指定したサイトが認証エラーで開かないよ?なんで?」っていうことがあった。
100%エラーになるんじゃなくて、
何回かやってるとうまく行くとかいうこともあって「?」だらけ。
マクロとか関数が悪いのかな?
タイミングが悪いのかな?
といろいろやってみてたけど、既出の問題だったみたい。
こちらのブログさんがしっかりまとめてくださっていてとても勉強になった。
はじめ@Blog「Office製品のハイパーリンクとログイン認証画面」
http://hajimesan.net/blog/?p=875
原因はどうやらMSの不具合らしい…
Microsoft サポートオンライン 「Office 文書内のハイパーリンクを開くと Cookie が紛失する」
http://support.microsoft.com/kb/811929/ja
ログオン ページまたは、エラー ページにリダイレクトされますまたは SSO の Web サイトで、Office ドキュメントへのハイパーリンクをクリックすると認証情報が要求されます
http://support.microsoft.com/kb/899927/ja
ハイパーリンクは使えないってことがわかったので、
マクロでリンクボタンを作ってやることで対応してみた。
ハイパーリンクおいてたあたりに適当にボタンを作って、
以下の処理を登録してあげる。
*************************
Sub ボタンクリック()
'IEのオブジェクト
Dim objIE As Object
Set objIE = CreateObject("InternetExplorer.Application")
'IE表示
objIE.Visible = True
'遷移
objIE.Navigate ("遷移させたいURL")
'オブジェクト解放
Set objIE = Nothing
End Sub
*************************
IEオブジェクトの操作を検索すると、
「処理の終了を待つ」を一緒に設定する以下の処理が紹介されているけど、
*************************
'完全にページが表示されるまで待機する
Do While objIE.Busy = True Or objIE.ReadyState <> 4
DoEvents
Loop
*************************
今回はリンク先を開くだけで後続処理はないので何もせずに放置。
ちなみに「InternetExplorer.Application」は
基本的に同一セッションでブラウザを操作するらしい。
新規セッションで開くには+αが必要らしいので、そのうち調べようかな…
"office文章のハイパーリンクでCookie情報が紛失することがあるらしいよ。" へのコメントを書く