アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在ノートPCとデスクトップPCの2台所有しています。
以下のハイパーリンクのマクロを実行すると、ノートPCは正常にリンク先へ飛ぶのですが、デスクトップPCは反応している様ですが、リンク先へ飛びません。
同じバージョンのソフトを使用しているのですが原因についてご存知の方がいらっしゃれば教えて下さい。
マクロ本文

Sub 設定へのリンク()
Call ActiveWorkbook.FollowHyperlink( _
Address:="https://system......", _
SubAddress:="", _
ExtraInfo:="", _
Method:=msoMethodPost)
End Sub

OS Windows10 Home
エクセル365
セキュリテイソフト ウイルスセキュリティ

質問者からの補足コメント

  • その他試したこと
    1.「ウイルスセキュリティ」をオフにして実行。
    2.エクセルシートの「セル」にハイパーリンクを作成してクリック→正しい挙動
    3.エクセル365のオプション設定の比較→同様

    以上、補足させて頂きます。

      補足日時:2019/03/26 21:33

A 回答 (2件)

>ExtraInfo:="", Method:=msoMethodPostをつけた背景としては、会社のシステムへログインした状態であれば、「タイムアウト」のメッセージが出ない状態でリンクページを開く為に設定したと思います。



なんとなく、理由はわかりました。手動でログインするときに、セッションの開始命令が入っているのでしょうね。それを、私が示した回答のハイパーリンクではその情報は送られない、ということです。その情報を取るツールというものもありますが、英語オンリーで、専門的になってしまうので、当面、それは置いておきます。

話が最初に戻るけれども、実際問題としては、私は、ブラザーで開くようにコードを書くことが多いです。

もしよかったら、私の使っている方法を試してみますか?
例えば、ここの教えて!gooの場合。

Win10

Ret = Shell("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe " & myURL)

(注意:.exe の後に空白あり)
myURL は、myURL = ActiveCell.Value などとしてあげればよいです。私は、それに、ダブルクリック・イベントに取り付けてあります。

これは、Microsoft Edge なら、そこをEdge のフルパスで書いてあげればよいです。
    • good
    • 1
この回答へのお礼

別な方法を教えて頂きありがとうございます。
以下の方法で試した所期待値が得られました。
ありがとうございます。

Sub 設定へのリンク()

Dim Ret As Variant
Dim myURL As Variant
myURL = "https://system...."
Ret = Shell("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe " & myURL)

End Sub


また、片一方が通らない事が納得出来ず手間がかかりましたか、PCのリカバリーをしました。
途中office365のセットアップで64bit版がインストールされ別な問題が起こりましたが。。(笑)
再度32bit版をセットアップしたらリンク先へ正常に飛ぶ様になりました。

色々とお教え頂きありがとうございました。

お礼日時:2019/03/29 12:25

片方が通らない理由というものは分かりませんが、


ActiveWorkbook.FollowHyperlink( Address:="https://system......")
Call もなしで、それだけで実行してみたらどうでしょうか?

ExtraInfo:="", Method:=msoMethodPost
私は、この使い方を詳しくないのですが、たんなるハイパーリンクだけなら、Address:="!http://******"
だけでよいはずです。Method:=msoMethodPost を入れているというのは、ExtraInfoのオプションに対して送信方法ではないでしょうか。つまり、ExtraInfo:=****** になにか文字列が必要だと思います。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。

ActiveWorkbook.FollowHyperlink( Address:="https://system......")
Call もなしで、実行した所リンクページを開く事が出来ました。
ありがとうございます。

ただ、今度はリンクベージ側で「セッションはタイムアウトになりました」と表示されるようになってしまいました。
ExtraInfo:="", Method:=msoMethodPostをつけた背景としては、会社のシステムへログインした状態であれば、「タイムアウト」のメッセージが出ない状態でリンクページを開く為に設定したと思います。
どちらを取るか別として、一歩進みました。

ありがとうございます。

お礼日時:2019/03/27 15:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!