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

エクセル名簿でJPEG写真をセルに張っています。

◆他シートでその人のIDを入力すれば、写真を表示させるような参照したいのですが、もちろん、VLOOKUP関数ではできませんよね。

◆そのようなことは可能でしょうか?

◆可能ならばどのようにやればよいのでしょうか?ご指導お願いいたします。

◆参照先も表になっていて何人も同時に表示したいイメージです。

以上、ご指導よろしくお願いいたします。

A 回答 (6件)

確かJPEGでは無理だったと思います。

表示させるのは。
HYPERLINK関数を使い、BMPを利用してできた記憶があります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。簡単にできればよいなと思っていましたが、そうではないようですね。

お礼日時:2006/07/08 13:11

>参照先も表になっていて何人も同時に表示したいイメージです。


は、難しいかもしれませんが、
実際に似たような事をして、画像を表示させるようにしています。
私はここで検索して、何とかできるようになったので、
ちょっと説明に時間を要します。今は忙しいので、時間をもらえればゆっくりお答えします。
ヒントは、写真を表示したいところに四角いオブジェクト(写真の入る大きさ)を挿入します。
そのオブジェクトに表示ツール→挿入→名前→定義で
名前の定義で名前をつける
その中の下の方に参照範囲とありますので、そこに
INDEX関数やMATCH関数を組み合わせて数式を入力する
オブジェクトを選択している状態で数式バーに=名前
で良かったと思います。

参考になったURL貼っておきますが、私はすべてURLの通りにしたわけではないので説明がうまく出来ません。すみません…。

参考URL:http://www.officetanaka.net/excel/function/tips/ …
    • good
    • 0

関数だけで、動的な表示を画面内にすることは無理です。


VBAで構築する必要があります。
参考:http://www.excel.studio-kazu.jp/cgi-bin/kazuwiki …

パスを表示するだけ(それをクリックして別アプリで表示させる)だけで良いのであればHYPERLINK関数とINDIRECT関数を組み合わせることで(どこかのセルの値を参照させて)動的に画像へのパスを設定することができます。この場合は別にBMPでなくともどんな種類のファイル(アプリの関連付け次第)でも可能です。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。VBAは、ただいま本を何冊か購入して勉強をはじめましたが、私のスキルではまだまだ難しいところです。教えていただいたURLでも勉強してみます。本当にありがとうございました。

お礼日時:2006/07/08 13:10

#2のtakutekuです。


早速間違いがありました!すみませんが、訂正させて下さい。

>ヒントは、写真を表示したいところに四角いオブジェクト(写真の入る大きさ)を挿入します。
そのオブジェクトに表示ツール→挿入→名前→定義で

とありますが、オブジェクトではなくオートシェイプと書きたかったのですがそれも間違いです^^;
参考URLの図のリンク貼り付けというところがポイントです!

写真を抽出したいシート内で空白セル(どれでも良い)をとりあえずコピーして下さい
Shift押しながら編集で図のリンク貼り付けをクリック
そうするとセルと同じ大きさの四角が出ると思います。それに
>ツール→挿入→名前→定義で
名前の定義で名前をつける

と続けてください。以降は同じです。

この回答への補足

二度にわたるご指導を感謝します。補足欄ですが、お礼です。まだ飲み込めていないので、もうすこしお時間いただいて勉強してみます。またご指導依頼をお願いするかもしれません。よろしくお願いします^^

補足日時:2006/07/07 16:36
    • good
    • 0

連続投稿ですみません、takutekuです。



>参考になったURL貼っておきますが、私はすべてURLの通りにしたわけではないので説明がうまく出来ません。

たぶん、私が悪戦苦闘したようにyastaroさんも『?』がいっぱい出ていることと思います。私は、自分なりにアレンジして何とか解決しましたが、先ほどネットで検索したら偶然にも私がやった方法と似ているものを発見しました。
ただ、
参照範囲の中の数式が私とは違いますが…

#2で貼り付けたURLより、こちらのURL↓の方がわかりやすいと思いますので、そちらを参考にして下さい。わからないことがあったらまた補足します。

ここまで言っておいて、yastaroさんのやりたいことと趣旨が違ってたらすみません…。

参考URL:http://www.geocities.jp/chiquilin_site/data/0505 …
    • good
    • 1
この回答へのお礼

何度も心あたたまる優しいご回答をいただき、ありがとうございます。イメージ通りのURLです^^ ただ、私の理解不足とスキルの低さのため、できないのです^^; これからまだ試行錯誤を繰り返して挑戦してみたいと思います。長引きそうなので、いったん締め切りたいと思います。心からの感謝をこめて。本当にありがとうございました。またご指導いただける機会があればと思います。m(_ _)m

お礼日時:2006/07/08 13:06

VBAでやってみます。


これとて、私が出すぐらいだから、初等的で、アラを探せば出てくるかもしれない。
しかし質問の程度のものになると、VBAの勉強が必要でしょう。
自分や誰でもがしたいこととはいえ、二ーズばかり大きくて(実は難しくて)、それに必要なスキルを勉強してない質問者の質問がOKWAVEで増えるように思います。
ーーー
A1に1から4まで1つの数字(氏名コードの代わり)を入れます。
A2セルは写真を挿入するため、面積を少し大きくしておいてください。
F3:G6に
1blue hills
2sunset
3water lilies
4winter
F列は人間の写真のファイル名の代わり(拡張子除き)の、手近な画像ファイル名を使いました。
Sheet1のChangeイベントに下記を貼り付けます。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Worksheets("Sheet1").DrawingObjects.Delete
Application.ScreenUpdating = False
fn = WorksheetFunction.VLookup(Range("A1"), Range("e3:F6"), 2, False)
' MsgBox fn
ActiveSheet.Pictures.Insert( _
"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\" & fn & ".jpg" _
).Select
Selection.Top = Cells(2, "A").Top
Selection.Left = Cells(2, "A").Left
Selection.Width = Cells(2, "A").Width
Selection.Height = Cells(2, "A").Height
Application.ScreenUpdating = True
End If
End Sub
ーーーーー
1を入れるとA2セルにBlueHillsの画像が、4を入れるとwinterの画像が出ます。
    • good
    • 0

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