advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 6617 for リンク (0.004 sec.)
[[20230526093932]]
#score: 3108
@digest: 19ac7c46f006b4d99c2c7258fac58928
@id: 94329
@mdate: 2023-05-29T07:09:08Z
@size: 7611
@type: text/plain
#keywords: 件選 (24186), c1000 (13380), イパ (12187), 果") (11438), ーリ (10603), ハイ (8720), パー (7762), 冗長 (5062), 索結 (4384), taka (3640), hyperlinks (3234), ンク (3093), リン (3022), 大事 (2228), 値貼 (2218), 2023 (2108), pastespecial (1918), (ta (1878), 金) (1688), xlpastevalues (1656), myrng (1655), destination (1465), 有効 (1459), コピ (1433), ソー (1403), メソ (1316), 普通 (1266), 現状 (1242), ルク (1234), ピー (1208), ソッ (1180), ダブ (1132)
『別のシートにコピーしたURLのハイパーリンクを有効にする方法』(Taka)
シートAの内容を条件選択してシートBにコピーします。 コピーした内容にはURLが含まれていて シートAではワンクリックでハイパーリンクが起動するのですが コピーしたシートBのURLは一度ダブルクリックをしないと ハイパーリンクが有効になりません。 マクロで範囲(C5:C1000)を指定してハイパーリンクを有効にする方法はないでしょうか? < 使用 Excel:Microsoft365、使用 OS:Windows10 > ---- 普通にコピペすればよろし。 (大事) 2023/05/26(金) 09:52:24 ---- すみません。説明が足りませんでした。 コピーはマクロを使用しています。 A列に会社名、B列に事業内容、C列にURLが入っています。 A列、B列の内容を条件選択して別のシートにコピー〜ソートしていますが ソートしたURLのハイパーリンクが有効になりません。 (Taka) 2023/05/26(金) 10:09:29 ---- おっしゃる意味が解りません。 マクロだろうが普通にコピペすればよろし。 (大事) 2023/05/26(金) 10:16:42 ---- ■1 >コピーはマクロを使用しています。 具体的なコードを提示された方が回答者側で状況が把握しやすいです。 ■2 >A列、B列の内容を条件選択して別のシートにコピー〜ソートしています 【条件選択】というのがよくわかりません。 ■3 想像するに【値貼り付け】をしていて、コピーした直後はURLがハイパーリンクになっていないけど、ダブルクリックすることによって、オートコレクトが働きハイパーリンクが設定されているとかではないですか? ならば、普通の(ハイパーリンク状態のまま)貼り付けをすればよいように思いますが如何でしょうか? (もこな2) 2023/05/26(金) 10:25:13 ---- もなこ2さん、ありがとうございます。 Sub コピー() Range("A5:C1000").Copy Destination: Sheets("検索結果").Range("A5:C1000").PasteSpecial Paste:=xlPasteValues End Sub Sub ソート() Call Sheets("検索結果").Range("A5:C1000").Sort( _ Key1:=Sheets("検索結果").Range("C5"), Order1:=xlDescending) End Sub マクロはWebサイトの例をコピーして書いているので 文法はよくわかっていません。 「.PasteSpecial Paste:=xlPasteValues」 このあたりが問題なのかと思うのですが いろいろ変えてみてもエラーが出てしまいます。 (Taka) 2023/05/26(金) 10:39:31 ---- 何度もすみません。 条件選択はマクロではなく、IF文で抽出しています。 =IF($H5=1,E5,0) このとき既にハイパーリンクになっていませんでした。 結果の表示なのでハイパーリンクにできません。 ※IF文のセルは先に書いたものと一致していません。 実際には$H5の文字列が含まれるものを抽出してコピーし ソートして空白の行を取り除いています。 (Taka) 2023/05/26(金) 10:53:52 ---- $H5も間違いでした。(泣) 〔H5の計算式〕 =IF(COUNTIF(B5:F5,"*"&$C$2&"*"),1,0) 〔I5の計算式〕 =IF($H5=1,B5,0) $C$2の文字列に含まれるものをH列に1とし H列に1が入っているものをI〜L列に抜き出して別のシートにコピーしています。 そもそもの作り方が邪道かも知れません。 (Taka) 2023/05/26(金) 11:06:18 ---- ■4 >このあたりが問題なのかと思うのですが 既にコメントしていますが以下の通りです。 # 無駄なラベルの削除等ちょっと修正しました。 Sub コピー() ActiveSheet.Range("A5:C1000").Copy Sheets("検索結果").Range("A5:C1000").PasteSpecial Paste:=xlPasteValues ‾‾‾‾‾↑‾‾‾‾‾ ‾‾‾‾‾‾‾‾‾↑‾‾‾‾‾‾‾‾‾‾‾ 形式を選択して貼り付け の 値貼り付け をしなさい End Sub なので、たとえば↓のように(形式を選択して貼り付けの)値貼り付けじゃない【普通の】貼り付けにしたらどうですか?という話です。 Sub コピーと普通の貼り付け() ActiveSheet.Range("A5:C1000").Copy Destination:=Sheets("検索結果").Range("A5") ‾↑‾‾ ‾‾‾‾‾‾‾‾‾‾‾‾‾↑‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ コピーしたセル範囲 を 検索結果シートのA5セル以降に貼り付けなさい End Sub ※普通の貼り付けは本来「Pasteメソッド」のお仕事ですが、Copyメソッドの引数である「Destination」に 貼り付け先を指定すると代用ができますので、上記のような書き方を採用するケースが多いです。 ■5 PasteSpecialメソッドでも「すべて」「罫線を除くすべて」や「値」を貼り付けたあと、そのまま「書式」を貼り付ければハイパーリンクになるようです。 (冗長に思えるのでお勧めしませんが、参考まで。) ■6 >条件選択はマクロではなく、IF文で抽出しています。 こちらは理解できなかったので考慮していません。 (オートフィルタで抽出してると想像しましたが違うようですね) (もこな2) 2023/05/26(金) 11:40:26 ---- もこな2さん、ありがとうございます。 現状は計算式の値を貼り付けるようになっているので 修正頂いた内容だと計算式がそのままコピーされてしまいます。 現状の仕組みを変えないと駄目そうなので、別の方法を考えます。 (Taka) 2023/05/26(金) 13:21:42 ---- ■5の冗長についても試してみましたが URLがダブルクリックしなければハイパーリンクにならない 状況は変わりませんでした。 (Taka) 2023/05/26(金) 14:19:35 ---- だから、セルには完全に編集したという事にって無いので ハイパーリンクもされないのだと思います。 この辺は、MSしかわからないかと。 ダブルクリックの代わりにF2キー、Enterでも 編集したとされ、ハイパーリンクされると思います。 (大事) 2023/05/26(金) 15:40:24 ---- ■7 >現状は計算式の値を貼り付けるようになっているので〜 >冗長についても試してみましたが〜 ちょっと理解してもらえなかったようですが、【ハイパーリンクが設定されている】セルをそのままコピペすれば、1行で済むのにPasteSpecialメソッドを使って2行なり3行で表現することを冗長(むだがある)と表現しました。 >このとき既にハイパーリンクになっていませんでした。 ↑のようにご自身で認識されている通り、【ハイパーリンクが設定されていない】ものからコピーしてもそりゃダメでしょう。 ■8 >現状の仕組みを変えないと駄目そう 「■6」で触れましたが、元のデータ(C列がハイパーリンクになっている表)からオートフィルタで抽出してコピペじゃダメなんですか? (オートフィルタで"含まれるもの"という条件だと、少し難しくはなりますができないことではないと思います。) いやいや、どうしても値貼り付けした結果をハイパーリンクにしたいのだということならば、そのままズバリ、セルの値を使ってセルにハイパーリンクを設定すればよいです。 【参考】 https://www.moug.net/tech/exvba/0050064.html https://kokodane.com/mini_macro50.htm https://www.moug.net/tech/exvba/0050064.html たぶん(量にもよります)、1セルずつ編集モードにして(オートコレクタでハイパーリンクの設定をして)確定するよりは早いと思います。 (もこな2) 2023/05/26(金) 16:12:23 ---- もこな2さん、ありがとうございます。 Sub ハイパーリンク() Range("A2").Hyperlinks.Add Anchor:=Range("A2"), Address:=Range("A2").Value End Sub 上記の応用でひとつのセルにハイパーリンクをつけることができました。 範囲の指定方法がうまくいかないのですが、あとは頑張って直します。 助かりました。 (Taka) 2023/05/26(金) 17:24:56 ---- ■9 >範囲の指定方法がうまくいかない どのように"うまくいかない"のか説明がないのでわかりませんが、1セルずつ作業(設定)していけばよいはずです。 >マクロで範囲(C5:C1000)を指定してハイパーリンクを有効にする方法はないでしょうか? ということならば↓のようにすればよいでしょう。 #完成品のプレゼントではなく、研究用資料として提供します。 Sub 研究用() Stop 'ブレークポイントの代わり Dim MyRNG As Range For Each MyRNG In Sheets("検索結果").Range("C5:C1000") MyRNG.Hyperlinks.Add Anchor:=MyRNG, Address:=MyRNG.Value Next MyRNG End Sub ※標準モジュールでシートを指定しないとActiveSheetを指定したことになりますから、きちんと指定することを推奨 (もこな2) 2023/05/26(金) 20:20:21 ---- もこな2さん、ありがとうございます。 中身は理解していませんが、なんとか出来ました。 Sub Sample() Dim i As Long With ActiveSheet.Hyperlinks For i = 5 To 1000 .Add Anchor:=Cells(i, 5), Address:=Cells(i, 5).Value Next i End With End Sub (Taka) 2023/05/29(月) 16:09:08 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202305/20230526093932.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97048 documents and 608239 words.

訪問者:カウンタValid HTML 4.01 Transitional