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

EXCEL2002を使っています。
現在A1のセルに=HYPERLINK("C:\My Documents\1.xls")という式を入れています。A2のセルには左記式と同じでファイル名が2.xls、以降順番にA2000(2000.xls)まで同様の式を入れています。
現在、A1からA2000のセルまで関数の式が表示されてしまっているのですが、できれば関数の式は見せずに任意の文字を表示させ、さらにその文字をクリックすればリンクがはられるようにしたいのです。

文字を先に入力してメニューの挿入→ハイパーリンクとやれば希望通りの物ができるのですが、2000件ものマニュアル作業は避けたいと思います。

HYPERLINKの式を先に入力した場合でクリックのできる文字表示にする良い方法はないでしょうか?

A 回答 (2件)

こんにちは!



 HYPERLINK()関数の数式は
 =HYPERLINK(リンク先,表示文字)
 となっているのでご質問の例の場合
 =HYPERLINK("C:\My Documents\1.xls",表示する文字)
 となります。

 数式としては
 A列に好みの表示文字を記載した場合
・セルB1に
 =HYPERLINK("C:\My Documents\"&ROW()&".xls",A1)
 書式設定 保護 表示しない
 以降B2000まで複写
 A列を非表示
・ツール 保護 シート

 ではどうでしょうか?
    • good
    • 0
この回答へのお礼

comvさん、今感激しています。
悩み事が一気に解決してしまいました。本当にありがとうございました。
「&ROW()&」を使う方法もいいですね。私はフィルを使って連続データを作り、関数の組み合わせをするところでした。

あっもしも他の方がここをご覧になった時のために、私から少しだけ付け加えさせていただきますね。
表示する文字は""で囲まないとうまく表示されないようです(常識なのかもしれませんが・・・)私のケースの場合では、実際の式は以下になるようです。
=HYPERLINK("C:\My Documents\1.xls","表示する文字")

お礼日時:2001/10/22 17:04

こんな感じのマクロで対応してはいかがでしょう。



 例えば、 A列に表示したい文字、 B列にリンクしたいアドレスを書いておきます。

A    B
1 aaa  c:\abcd.pdf
2 bbbb  c:\cass.pdf
3 ssss  c:\asasd.pdf
4 あいうえ d:\asssd.pdf

この状態で、A1をアクティブにして、下記のマクロを実行すると、A列のデータに対して B列のファイルがハイパーリンクされます。

===== VBA マクロ =====
Sub sample()
 dim link_fname as String
While ActiveCell.Value <> ""
link_fname=ActiveCell.Offset(0, 1).Value
'もし既にリンクが設定していた場合エラーになるので、前もってリンクのクリアーしておきます。
ActiveCell.Hyperlinks.Delete
ActiveCell.Hyperlinks.Add Anchor:= _
ActiveCell.Offset(0, 0), _
Address:=link_fname
ActiveCell.Offset(1, 0).Activate
Wend
End Sub

これとは少し似た利用例で、作成したリストを使いリンクを張り、XML&XSLデータとしてはき出すVBAのマクロを以前作ったのが有るので、Upしています。
 http://homepage2.nifty.com/urk/softindex.html
もし良かったら、参照してみてください。

参考URL:http://homepage2.nifty.com/urk/softindex.html
    • good
    • 0
この回答へのお礼

すばらしい!こんな風にマクロを使用して、式が作れるのですね。
マクロは多少使った事があるのですが、私はまだ中身をよく理解できていません。
是非この機会に勉強したいと思います。
どうもありがとうございました。

お礼日時:2001/10/22 17:28

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