• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ハイパーリンクをコピペしてください)

マクロを使用してハイパーリンクをコピペする方法

このQ&Aのポイント
  • Excelのマクロを使用して、ハイパーリンクをコピペする方法について説明します。
  • 選択した各列の5行目以降に、単独または連続してハイパーリンク付きの文字列をコピペします。
  • そして、マクロを実行することで、各行の隣の列にテキストファイルにコピーした文字列を貼り付け、文字列の一部を省略します。

質問者が選んだベストアンサー

  • ベストアンサー
  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.3

サワリ程度にコードを書き動かしてみました。 本格的に作りこもうとすれば、 https://ja.wikipedia.org/wiki/Category:2022%E5%B9%B4%E6%B2%A1 このhtmlを objIE.document.body.innerHTML といったコードで取得し、 これを解析することで 「あ」用のurlを取得してアクセスし このhtmlを取得し、 これを解析し、。。。 といった繰り返しになりそうです。 最終的に取得する情報を明確にし、 上記実装が必要となりましょう。、 もはや「お遊び」の域を大きく超えますので これ以上の深追いは断念します。 VBAの限界にぶち当たりそうですので 必要であれば、 開発言語の選択も含め、業者への依頼を検討してください。 あるいは、このサイトの識者のコメントをお待ちください。 私は降ります。アシカラズ。

noname#252684
質問者

お礼

この度は、最初にSI299792さんをはじめありがとうございました

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.2

>リンク元を開けるとリンク先の一番最初に表示されるページです >リンク先の本文をテキスト形式 セルにハイパーリンクを設定する場合  別なブック、  自身のブックの任意なセル  任意なファイル  webサイト などが候補になるわけですが 今回はページと呼んでいるので、 urlを記述したwebサイトですか? あるいは、社内に設置したwebサーバーですか? 別な言い方をすると、httpやhttpsプロトコルですか? もしwebサイト、webサーバーですと、 VBAがIEを内部的に呼び出して使うこととなり ・サポートが終了していること ・WindowsがEDGEに誘導してくるだろうことから 少々厄介なことになるものと思います。

noname#252684
質問者

補足

どうもすいません ホープページの内訳は恥ずかしかしく、ご覧に供されるので伏せていました Wikipediaの「2022年没」の先頭ページです https://ja.wikipedia.org/wiki/Category:2022%E5%B9%B4%E6%B2%A1 「あ」から下をA列にコピペして使います あ シャハブッディン・アーメド ネッド・アイゼンバーグ あいはらひろゆき アイルランドの匿名男性 ジョン・アイルワード 青木新門 青木初夫 青木はるみ ・ ・ ・ その各々個人名の最初に開かれるページのリンク先をすべてテキスト形式にてB列にコピペです(恐らくこの時点でセル内の文字数規定に依り入りきらないものもあると思います)しかし幸いにもそのパターンがほとんど一緒なので数千文字から置換にて数十文字程度までに簡略化できます つまりA列が人名でB列には、その人物の肩書ということになります なるほどそう言えばIEは終了してしまうのでエッジその他のブラウザ(一番作成し易いものでも結構です)に切替対応しなければならないとのことで ・WindowsがEDGEに誘導してくるだろうことから 少々厄介なことになるものと思います。 厄介でもマクロコードが可能ということであれば誠に厚かましいのですがお願いできれば幸甚です 不可能ということであれば、またそれはそれで今回の質問は諦めて取り下げて解決とさせていただきます 可能ということであれば大変な労力をお掛けすると思われますので完成の暁には何かこちらでしてあげられることができれば(例えばご馳走をする等など)すいませんがOKチップということでご容赦ください いや~これが可能であれば非常に楽になり便利になると期待しております あと最後に付け加えさせていただきますとマクロコード作成にあたり何かこちらでも特別な知識が必要で、それをこちらで組み込まなければならないなどの処置がありましたらその節も誠に勝手ながらご容赦ください それは却下させてください もう研究・勉強は今更無理です 蛇足文誠に大変失礼つかまりました。

すると、全ての回答が全文表示されます。
  • SI299792
  • ベストアンサー率47% (764/1596)
回答No.1

「第二階層分」の意味が解らないのですが、 まさか「*)は、あいうえお。*」がリンク先はないと思うので、 ハイパーリンクでジャンプ先がF1なら、 F1に「*)は、あいうえお。*」が入っている、と勝手に解釈しました。 他ブック、やインターネットへのハイパーリンクでは、何も表示されません。 Option Explicit ' Sub HyperlinkFollowTest() Dim Hyperlink As Hyperlink Dim Address As String ' For Each Hyperlink In ActiveSheet.Hyperlinks On Error Resume Next Address = Range(Hyperlink.Name) Address = Replace(Address, "*)は、", "") Address = Replace(Address, "。*", "") Range(Hyperlink.Range.Address).Offset(, 1) = Address Next Hyperlink End Sub

noname#252684
質問者

補足

返信すいません 第二階層分とはそれぞれのリンク元を開けるとリンク先の一番最初に表示されるページです ここではA列に複数のリンク元をコピペします そのA列と同じ行のB列にリンク先の本文をテキスト形式をコピペしていってください その個々に開いたページ全体は、どのページもある一定のパターンが決まっていてB列上のセル内に置換にて短縮して編集します ※手作業でやる場合の作業工程 ①A列に連続されたリンク元の表題をコピペする ②A列1行目のリンク元を開いてリンク先の表示されたページをコピペして同じ行の隣の列(B列1行目)にコピペする ③あとは繰り返しA列2行目→B列2行目にコピペ ④B列全行を置換をする 1回目は「*)は、」アスクタリスはワイルドカード検索 2回目は「。*」アスクタリスはワイルドカード検索 ⑤完成(稀にこの置換指定では失敗するものもありますが、それはごく数例なので手作業にて訂正) ※今回のマクロの目的 A列に200行コピペしたとなるとB列に200行分ページを開きながらコピペ作業の繰返しです A列1行目→B列1行目 A2→B2 A3→B3 ・ ・ ・ A列200行目→B列200行目 最後にB列を一気に置換で短縮編集します

すると、全ての回答が全文表示されます。
このQ&Aのポイント
  • ヤフオクで購入した廃インクタンクがいっぱいになる問題について相談します。
  • Windows10で接続されたUSB経由で使用している環境です。
  • ブラザー製品に関する質問です。
回答を見る

専門家に質問してみよう