• ベストアンサー

エクセル関数のハイパーリンクについて

初めて質問します。よろしくお願いします。 エクセル2000を使っています。 A列に商品番号 B列にハイパーリンクを下記の関数で入力しています。 =HYPERLINK("c:\windows\デスクトップ\○○\"&A1&".jpg") デスクトップの○○というフォルダ内に商品の画像を商品番号の名前で保存してあります。 B列のハイパーリンクをクリックすればその名前の商品の画像が見れるようになっています。 商品が1000個ほどあるため、B列の関数はコピーしたのですが、今現在、どの商品の画像があるのかないのかわからない状態です。 そこで、C列にリンク先が存在するかどうかを関数で入力したいのです。そのような方法はあるでしょうか?出来ればマクロではなく関数でお願い致します。 また、その方法はエクセル2003でも問題ないかどうかもお願い致します。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 今、試しに関数で考えてみました。1000個ですと、かなり重くなります。 私の示すものは、Excel2003 では、マクロに分類されてしまいますが、Excel 2002 以下では、マクロには分類されません。 位置の確認: B1: =HYPERLINK("c:\windows\デスクトップ\○○\"&A1&".jpg") A1 に、ファイル名 つまり、B1の表示は、 c:\windows\デスクトップ\○○\×××.jpg と表示されていることにします。 式の作り方: まず、セルポインターをC1に置き、 メニューバーから、挿入-名前-定義 名前(W) MYFILE (任意) 参照範囲(R) =FILES(B1)&LEFT(NOW(),0) ※ 相対位置ですから、C1 に対して、B1 の位置に表示されているものを調べるように出来ています。つまり、ひとつセル左隣 にあるものということです。 「OK」をクリック C1:~ =IF(ISERROR(MYFILE),"ナシ","") このようにし、ドラッグダウン・コピーしてください。 ない場合は、"ナシ" と出てきます。

staff1
質問者

お礼

エクセル2000で試したところうまくいきました。 助かりました!ありがとうございます。

その他の回答 (1)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。KenKen_SP です。 > 出来ればマクロではなく関数で... Excel の組み込み関数には外部ファイルの存在チェックができる ものがありません。したがって、マクロを使って独自の関数を作る 以外には方法はないと思います。 > 今現在、どの商品の画像があるのかないのかわからない状態です。 画像があるのかないのかチェックする、、これが目的なのですよね? マクロを含んだブックにしたくないのであれば、別ブックにマクロ を記述する方法もありますよ? 余談ですが、 =HYPERLINK("c:\windows\デスクトップ\○○\"&A1&".jpg") について、A1セルにでも画像ファイルのあるパスを書いておいて、 次の数式を書くとパスの変更が容易になります。 A1セル: c:\windows\デスクトップ\○○\ A2セル: 商品番号=画像ファイル名(拡張子なし) B2セル: =HYPERLINK($A$1 & A2 & ".jpg")

staff1
質問者

お礼

ご回答ありがとうございます! 現在臨時的に作っている訳ですが、今後動作が重くなるなどの不都合が出てくると思いますので、マクロ化も検討してみます。 また、ハイパーリンクの記述についてもあわせて検討してみます。ありがとうございます!

関連するQ&A

  • Excelのhperlink関数で作ったモノをハイパーリンクに置き換えたい

    Excel2007を利用しています。 A1にSONY ハイパーリンクの挿入で文字列SONY、アドレスhttp://www.sony.co.jp B1に=hyperlink("http://www.sony.co.jp","sony") と入っているとします。B1の形式を全てA1の形式に変換したいと思っていますがどのようにやればよいかわかりません。 Hyperlink関数を使った方がいろんな面で便利とは知っているのですが、B1のhyperlink関数からA1のハイパーリンク挿入への変換を教えていただきたく思います。B列には数百社のhyperlink関数で定義された企業名があるのですが、それをAの形式に手動でなおすには時間が恐ろしくかかってしまいます。よろしくお願いいたします。

  • エクセル ハイパーリンクで画像を表示

    ハイパーリンクで画像を呼び出す際、クリックしてブラウザを立ち上げるのでなく、エクセルの画面上(セル内)にそのまま表示させる書式設定や関数などはありますか?ご存知でしたら教えて下さい。 <詳細> 画像入りの商品タグを自動で作成する表を作っています。 商品一覧表(シート(1))からタグを作りたいものにチェックを入れると、別シート(シート(2))にタグの体裁で情報が配置され、そのまま印刷できる…というものです(A4用紙1枚に縦型のタグが60枚程度)。 関数を使って文字情報を配置するところまでは何とかできたのですが、画像の配置のところでつまずいています。 取り急ぎ画像を直接ドラッグして配置し、1つ1つ並べ直していますが、商品数が多いのと(1万点ほど)情報の変更が頻繁にあるので、方法があれば画像も自動配置したいと思っています。 シート(1)     A列     B列     C列(画像リンク) 1 商品番号 | 棚番A1 | C:\Dcuments (略) 001.jpg 2 商品番号 | 棚番A2 | C:\Dcuments (略) 002.jpg 3 商品番号 | 棚番B1 | C:\Dcuments (略) 003.jpg    : シート(2) | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| ̄ ̄ |商品番号|商品番号| |‥‥‥‥|‥‥‥‥| |商品画像|商品画像|←※ |‥‥‥‥|‥‥‥‥| |棚番:A1|棚番:A2| |____|____|__ | ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄| ̄ ̄ ※=HYPERLINK(シート(1)!C1,"■")) (別名(■)のところをどうにかすればいいのでしょうか…) どうぞよろしくお願いいたします。

  • Hyperlink関数 元データ削除

    Excel2010 Hyperlink関数で以下のようにハイパーリンクを設定しました。  A列:(パス入力)  B列:(別名入力)  C列:=Hyperlink(A列,B列) C列に作成されたハイパーリンクを有効な状態で、 元データ(A列、B列)を削除する事は可能でしょうか?

  • Hyperlink関数をクリックしてくれるマクロ

    どなたか詳しい方教えていただけないでしょうか? ExcelのセルA1に以下のhyperlink関数を入れています。 =HYPERLINK(″#C″&MATCH(B1,C:C),″クリック″) 隣のB1に入れた数字を元にC列に存在する同じ数字先にジャンプするように関数を作ってます。 A1にできたリンクをクリックしたは、B1に入力されているものと同じ数字先のC列に飛ぶようにマクロを組みたいのですが、どうしたらいいでしょうか? ハイパーリンク関数がマクロに組み込めないのと色々調べてみましたがうまくいかないのでお手上げです。 どなたか詳しい方教えていただければと思います。 どうぞよろしくお願いします!

  • エクセルの関数で画像ファイルを開く

    エクセル97をつかってます 任意の画像「ファイル名「99999999.tif」(99999999は任意)」があり そのファイル名をA列のセルに表示し、B列のハイパーリンク =HYPERLINK("C:\Users\フォルダ名\" & A2 & ".tif) をクリックすると開くようにしております。 ところが 開きたい画像名が「99999999-1.tif」というファイル名が まざっており、この場合”ファイルがありません”となり開くことができません。 (VBAでやれば簡単ですが、エクセル関数でやらなくてはならいので困っております) どちらでも開く関数がくめないでしょうか? 詳しいかた教えて下さい。

  • エクセルの関数

    宜しくお願い致します。 エクセルで以下の関数を入力したいのですが、ご存知のかた教えて頂けませんでしょうか。 WIndows8, エクセル2013 です。 シート1、 シート2と、2つございます。 どちらのシートもA列に商品管理番号が入力されております。 ただ、並び順がバラバラで、列の数もあっておりません。 シート1は商品数10000、 シート2は8000で、どの商品が少ないのか分からない状態です。 シート2のB列にだけ、仕入れ金額が入力されております。 やりたいことは シート2のA列の中から一緒の管理番号を探し、B列の仕入れ金額を 引っ張ってきて、シート1のB列に仕入れ金額を入力したいです。 宜しくお願い致します。

  • エクセル2003でハイパーリンクのセルからURLアドレスを取得する関数はありますか?

    エクセル2003でハイパーリンクのセルからURLアドレスを取得する関数はありますか? ハイパーリンクを作成する関数は、=HYPERLINK("URLアドレス", "表示名称")で可能ですが、この逆で、"URLアドレス"を取得する関数を探しています。 例えばこのセルが、A1にあったとして、B1に =A1とすると、B1には「表示名名称」が表示されます。 C1に「URLアドレス」を表示させるVBAでなく関数が知りたいです。 無ければ、VBAでも構いません。 よろしくお願いいたします。

  • エクセル・ハイパーリンクの関数処理

    エクセル・ハイパーリンクの関数処理 Excel 2007を使っています。 セルC列にハイパーリンクを含むデータが並んでいます。 このURLをD列に取り出したいのですが、 関数処理で出来ますか。出来るのでしたら教えてください。 出来ない場合は、マクロでも結構です。お願いします。

  • エクセルの関数を教えて下さい。

    エクセルの関数の質問です。 例えば、A列に1~10までの数字があったとします。 そしてB列に、偶数(2、4、6、8、10)を入力したとします。 そしてC列に、A列にはあって、B列には無いものを抜き出す関数は何になりますでしょうか? (B列を入力した時点で、C列には1、3、5、7、9が自動で入るようにしたい) 宜しくお願い致します。

  • エクセル2007 ハイパーリンクについて

    シート名は4月だとした時   A   B    C      D  E F G H I J K L M 6  1  田中  港区    1000 7  2  佐藤  品川区   2000 8  3  高橋  江戸川区  3000 9  4  井上  荒川区   4000 10  5  山田  練馬区 と行も列も沢山ある表とします A列には1~順番に数字が入ってますので検索の基準にしたい。 表が大きいので A列を基準としてvlookup関数で検索しジャンプする式を作成したいのですが うまく出来ません 検索する数字をH2にいれた時H3をクリックするとその行に飛ぶ関数を教えて下さい。 =hyperlink(vlookup,h2,a1:a8000,2,false) と入力してもエラーになります。 確かに右クリックでハイパーリンク作成でA1とした場合(book1-sheet1!A1)と 直接入力 =hyperlink("sheet1!A1) では表示される数式が違います 上記数式では駄目と分かりますがどうすればよいのか私の知識では無理です どなたか教えて下さい

専門家に質問してみよう