エクセル(2003)で画像を挿入した際に
その画像の右のセルにファイル名も入れたいのですが
このようなマクロがあれば教えていただきたいです

それと上記のとは別に画像にポインタを会わせた時に
ファイル名をその場かもしくは
どこかに表示させることは可能ですか?

それと既に挿入してしまった画像のファイル名を知ることは可能ですか?

あまりマクロには詳しくないので
分かりやすいとありがたいです

このQ&Aに関連する最新のQ&A

A 回答 (3件)

http://www.excel.studio-kazu.jp/kw/2008021515105 …
のコードをじっくり、1行1行しゃぶりつくすほど勉強したら、わかると思う。でも難しいと思う。初心者が手がける課題ではないように思う。
後半は1行追加して
Sub disp_name()
Dim shp As Shape
If TypeName(Application.Caller) = "String" Then
Set shp = ActiveSheet.Shapes(Application.Caller)
MsgBox shp.TopLeftCell.Value
Cells(10, "A") = shp.TopLeftCell.Value '<-追加
End If
End Sub
とすると、クリックした画像のファイル名がA10セルにセットされる
ようだ。画像が多数有る場合は、ずらしたセルにファイル名を表示するテクニックは略。
ーーー
ほかにGoogleで「エクセル 挿入画像 ファイル名」で照会し、出てくる多数の記事の中で、良さそうなものを読んで勉強のこと。
    • good
    • 0
この回答へのお礼

ありがとうございます
参考にさせていただきます

お礼日時:2009/05/28 02:08

私もあまりマクロには詳しくないので


>画像にポインタを会わせた時に
>ファイル名をその場かもしくは
>どこかに表示させることは可能ですか?

挿入した画像の上で右クリック「ハイパーリンク」をクリック
画像の元のアドレスを入力もしくは指定しておけば可能です。

>既に挿入してしまった画像のファイル名を知ることは可能ですか?
難しいでしょう。
「エクセルでの画像挿入」の回答画像2
    • good
    • 0
この回答へのお礼

ありがとうございます
参考にさせていただきます

お礼日時:2009/05/28 02:07

≪画像挿入と画像名書き出し≫


Sub test1()
  Dim ppath As String
  Dim pname As String

  ppath = "C:\Users\nekonatsu\Pictures\無題.jpg" '--画像のフルパス
  pname = Right(ppath, Len(ppath) - InStrRev(ppath, "\")) '--名前
  ActiveCell.Offset(-1).Value = pname     '--名前書き出し
  With ActiveSheet.Pictures.Insert(ppath)   '--挿入
    .Left = ActiveCell.Left         '--セル左枠線基準
    .Top = ActiveCell.Top         '--セル上枠線基準
    .ShapeRange.LockAspectRatio = msoTrue '--縦横比保持
    '.ShapeRange.LockAspectRatio = msoFalse '--縦横個別変更
    .ShapeRange.Height = 200        '--高さ
    .ShapeRange.Width = 360         '--幅
  End With
End Sub

≪ポップヒント≫
最後に挿入した図形・画像が対象
Sub test2()
  ActiveSheet.Hyperlinks.Add _
    Anchor:=ActiveSheet.Shapes(ActiveSheet.Shapes.Count), _
    Address:=ActiveWorkbook.Name, _
    ScreenTip:="画像の名前"
End Sub

≪画像名抽出≫
Excel2007以外は未検証
最後に挿入した図形・画像が対象
Sub test3()
  MsgBox ActiveSheet.Shapes(ActiveSheet.Shapes.Count).AlternativeText
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます
参考にさせていただきます

お礼日時:2009/05/28 02:05

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q添付画像のファイルはどんな状態のファイルなのでしょうか?クリってもエラ

添付画像のファイルはどんな状態のファイルなのでしょうか?クリってもエラーしか出た事がないのですが

Aベストアンサー

他の回答者様の記入通り、拡張子が無い事には判断出来ません。
また、クリックしてもエラーとありますが、webから探すとか出ませんか?
憶測ですが、多分質問者様のPCにこのファイルを開くアプリケーションが
インストールされていないのではないかな?って思います。
参考までに
よくありがちなのは、XPで作ったエクセルファイル等(逆だったかな^^;)を
ビスタのPCで見ると似たようなアイコンになります。
オフィスの互換パックをインストールすると見れます。

Qエクセルのシートに挿入した画像を別シートに挿入している画像と差し替えマクロ

表題の通り、
ある条件の元、エクセルのシートに挿入した画像の入れ替えが発生するのですが、そのようなマクロを組んだこともなく、
どこから手をつけていいのか分かりません。

シート上に貼り付けただけの画像の差し替えなどはできるのでしょうか?ご教授頂けると助かります。
よろしくお願い致します。

Aベストアンサー

http://www.moug.net/faq/viewtopic.php?t=39446
に格好の解説が有るのでは。
ーー
別にイメージ=喩えの話をしてみる。
写真は挿入とは言うが、シートに置かせてもらって、浮いている存在のように思う。その写真の位置は、Top,Lehtの位置を指定できて、別途シートのセルのTop,Leftが捉えられるから、それと関連付けて、繋ぎ止めておく場所はセルに関連付けられるようなイメージです。セルと言う家の門の前に写真を置かせてもらうイメージ。
しかし決して家の中に入りこむ、と喩えられる、セルの属性たる、値やコメントや数式などとは異質の物です。山田さんの家の前においてある写真も、山田さんの家の写真を取り除けと言うわけには行かず、別途何番の写真を取り除けという指示になる。
ーー
2002,2003では
マクロの記録は
Sub Macroi()
ActiveSheet.Pictures.Insert( _
"C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg" _
).Select
End Sub
となる。これが2007で動かないかやってみてください。
ーーー
シートに2つの写真を貼り付けると
Sub test01()
Dim shp As Object
For Each shp In ActiveSheet.Shapes
MsgBox shp.Name
Next
End Sub
を実行すると、Picture 1、Picture 2と返る。これが写真のオブジェクトの名前だ。
これで、Picture 2を削除するのは
Sub test02()
ActiveSheet.Shapes(2).Delete
End Sub
名前で指定するなら
Sub test03()
ActiveSheet.Shapes("Picture 2").Delete
End Sub
ーー
上記から、写真以外のオブジェクトがシートに張り付いてないとして
セル番地(Top,Leftで座標的な位置指定に使う)ーPicture番号(オブk\ジェクトの名前)ー写真ファイル名ー内容(何の写真か)
の対応関係を管理しないと行けなくなると思う。
靴の何番の写真を抹消ー>Picture番号(オブジェクト名)ー>上記コードで抹消となり、入れ替える商品の写真については、新たに上記の4要素を管理する必要が出て来る。挿入すると、Picture番号は変わるので厄介だ。
以上2007でもやってみてください。並みのVBAの経験では難しいと思うな。
ACCESSのテーブルにも商品コードなどと対応して、写真を持てる仕組みがあるので、ACCESSの解説書ででも、そちらも勉強してみてください。

http://www.moug.net/faq/viewtopic.php?t=39446
に格好の解説が有るのでは。
ーー
別にイメージ=喩えの話をしてみる。
写真は挿入とは言うが、シートに置かせてもらって、浮いている存在のように思う。その写真の位置は、Top,Lehtの位置を指定できて、別途シートのセルのTop,Leftが捉えられるから、それと関連付けて、繋ぎ止めておく場所はセルに関連付けられるようなイメージです。セルと言う家の門の前に写真を置かせてもらうイメージ。
しかし決して家の中に入りこむ、と喩えられる、セルの属性たる、値...続きを読む

Q右クリで画像保存が出ない!

画像を取りたくて矢印を画像に置くと!手のマークに代わり!右クリができなくなりました。
どうしたらよいのでしょうか?

Aベストアンサー

最近のサイトでは著作権の問題もあり、勝手に保存ができないように右クリックができないように設定しいるところが多くなっているであります。法律に抵触する場合もあるであります。

方法としては、色々あるでありますが、ただ見えてる画像が欲しいのであれば、プリントスクリーンでPC画面全体をコピーして、ペイントソフトにペースト、余分な部分を削除して保存すればいいと思うであります。

プリントスクリーンはググってほしいであります。

Qファイル名を変更するマクロを作成したが「ファイル名または番号が不正です」と表示されます

Webサイト(http://bit.ly/1SszVqL)より、以下のサンプルのマクロをコピーして実行しました。ですが、「×ファイル名または番号が不正です。:52」というエラーで、マクロが機能しません。こちらのマクロのおかしいところを教えてください。詳細は下の通りです。

---------------

Sub A()

Dim fp As String
Dim i As Long
Dim fo As String
Dim fn As String

'パスを変数に格納
fp = Range("A1").Value & "\*.*"

On Error GoTo ERR_HANDL

Range("C4").Value = "実行結果"

'5行目から最終行までループ処理を実行
For i = 5 To Cells(Rows.Count, 1).End(xlUp).Row
'現在のファイル名を取得
fo = Cells(i, 1).Value
'新しいファイル名を取得
fn = Cells(i, 2).Value
'新しいファイル名が入力されているときのみ処理を実行
If fn <> "" Then
'正常処理の実行結果を先に入力
Cells(i, 3).Value = _
"○ファイル名を" & _
"「" & fo & "」から" & _
"「" & fn & "」に変更しました。"
'ファイル名を変更
Name fp & fo As fp & fn
End If
Next i

Exit Sub

ERR_HANDL:

Cells(i, 3).Value = _
"×" & Err.Description & ":" & Err.Number
Resume Next

End Sub

---------------

1)EXCELのバージョンは2010、2013、両方で試しましたが同じ症状でした。

2)仕事でフォルダー内にある大量のファイル名を変更するマクロが必要です。
マクロの基本、etc.はともかく、とりあえずこちらのマクロが機能するようにしたいです。
※連番作成ソフトと組み合わせて、このマクロをそのまま利用する予定です。

3)今、MOS-スペシャシストの勉強中です。合格後、エキスパートも受験予定です。なので、具体的な説明が無理でしたら、マクロの勉強(特にファイル名変更)について簡単なヒント、アドバイスでもOKです。

お手数ですが、説明の上手な方、よろしくお願いします。

Webサイト(http://bit.ly/1SszVqL)より、以下のサンプルのマクロをコピーして実行しました。ですが、「×ファイル名または番号が不正です。:52」というエラーで、マクロが機能しません。こちらのマクロのおかしいところを教えてください。詳細は下の通りです。

---------------

Sub A()

Dim fp As String
Dim i As Long
Dim fo As String
Dim fn As String

'パスを変数に格納
fp = Range("A1").Value & "\*.*"

On Error GoTo ERR_HANDL

Range("C4").Value =...続きを読む

Aベストアンサー

ポイント1

マクロの使用説明書通りに使用をしているか
・A1セルに変更したいファイル群の親フォルダのフルパスが記載されているか
・A5セル以降に変更前のファイル名が表示されている通りに記載されているか
・B5セル以降に変更後のファイル名を記載しているか

ポイント2
・A1セルに入力するフルパス名の最後には”¥”をつけない
・A5セル以降に入力するファイル名は、フォルダの内に表示されているとおりに入力されているか。
すなわち「拡張子を表示する」に設定している場合は拡張子を含めたファイル名を入力、そうでなければ、拡張子を省いたファイル名を入力

Q 友近さんの画像を探しています。本当にいい人で、美人で、セクシーだと思

 友近さんの画像を探しています。本当にいい人で、美人で、セクシーだと思います。着衣・水着・スカート、なんでもOKです(あまり小さいサイズじゃない方がよいです)。どうぞよろしくお願いします。

Aベストアンサー

こちらに数点ありました。
http://bsearch.goo.ne.jp/image.php?UI=web&TAB=web&STYPE=0&CC=1&SCRDEF=0&IMGST=0&IMGSZ=0&IMGC=3&IMGFT=0&IMGFT=1&IMGFT=2&IMGFT=3&MOVPT=0&MOVFT=0&MOVFT=1&MOVFT=2&MOVFT=3&AUDPT=0&NSDP=1&KWDP=1&DC=20&FR=1&SM=mc&OCR=1&SITE=&SITE2=&SITE3=&SITE4=&SITE5=&SITEH=&AUDST=0&AUDMST=0&MOVTHN=0&QGR=1&MOVSC=0&NOJSB=0&QGA=1&NOJS=0&AUDSITE=0&MT=%CD%A7%B6%E1&button=%B2%E8%C1%FC%B8%A1%BA%F7
画像を使用される場合は自己責任でお願いします。

Qエクセルマクロ 異なるファイル名でも実行してくれるマクロ

マクロ初心者です。よろしくお願いします。

ファイル名はすべて例えです。
「A」エクセルファイルを 「Z」というファイルに貼り付けるマクロを作りました。
そのマクロで「B」ファイルからも「C」ファイルからも 「Z」ファイルにコピーをしなくてはいけないのですが VBAには「A」で記録されているため
「B」と「C」にはそのマクロが使えません・・・。

VBAをどのようにデバックすればいいのでしょうか?

Aベストアンサー

Workbook("A").~ など、ブックを指定する部分を、ThisWorkbook.~ に変更すると、
マクロが書いてあるブックを基点に動作します。

Q●「美人アプリ」の画像を保存したい!

●「美人アプリ」というアプリを使用しています。

●ここで表示される画像を保存したいのですが、方法がわかりません。可能かどうかも。。

●もし、方法をご存知の方がいらっしゃいましたら教えていただけませんか?おねがいします。

Aベストアンサー

保存したい画像を表示させて、↓の方法で画面をキャプチャすると、写真アルバムから見れます。
http://blog.livedoor.jp/sakusakupocky/archives/50263981.html

Qファイル名のダブルクリックで、保存ファイルの呼び出しマクロにつてご教示ください。

同じホルダー内なら、ファイル名をダブルクリックすることで、保存しているファイルを開くことが出来ると聞きました。
 例えば、開いているファイルのA列に、保存している色々なファイル名を入力して、そのセルをダブルクリックすれば、保存ファイルが開くといったことです。
 A列に、保存している沢山のファイル名を入力して、ファイルオープンをスムーズに行いたいと考えております。
そうのような、マクロがあれば、ご教示ください。
 なお、使用しているエクセルは2010です。
どなたか、よろしく、お願いいたします。

Aベストアンサー

別にマクロを使わなくても
HyperLink関数で可能ですよ。

マクロならシートモジュールを使います。
ファイル名が A列とします。
シート名を右クリック
コードの表示をクリック
VBエディターが起動したら
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column=1 Then
Workbooks.Open Filename:=Thisworkbook.Path & "\" & Target.Value & ".xlsx"
End If
End Sub

Q右クリ禁止のサイトの画像を保存

質問の通りなのですが右クリック禁止のサイトの画像を保存できるようにする方法はないでしょうか?あと、よく海外でおもしろ動画とかを見せてるサイトがありますが、そういった動画を保存する方法はありますか?重ねて質問すいません^^;

Aベストアンサー

そのサイトを見ないとなんとも言えませんが、
JAVAをオフにしてみると右クリック禁止がはずれる事もあります。

それで駄目ならば、プリントスクリーンを取って画像を修正してください。
まぁ画像を持ち出されたくないサイトならばあまり持ち出さないほうがよろしいかと思います。

ちなみに動画を保存する場合は専用のソフトなどが必要。

Qエクセルマクロでファイル名やシート名変更できない

エクセルは初心者なのでマクロを自動記録して作成しています。
少しづつ動作を小分けにして記録して、まとめてボタンで連続実行させるようにしました。
(1)作成途中で失敗したら最初からの作業になると思い、
ある程度進んだら何度かファイルのコピーを作成して進めていました。
ある程度完成した時点でファイル名が「○○○4~コピー~」の様な名前だったので、正式に名前を決めて変更したらマクロの実行が出来なくなりました。(元の名前に戻すと実行可能)

(2)またシートも複数のシートに跨って参照するようなマクロです。
シート名を分かりやすい名前に変更したらこの場合もマクロ実行できなくなりました。

(3)コピーしたファイルもマクロ実行できないものがあります。
コピーしたファイルはマクロ実行できないのでしょうか?

(4)ファイル作成途中で何かの変更が生じて列や行の挿入を行った場合、
特定のセルを参照して計算するマクロは実行できなくなるのでしょうか?
その場合、簡単に修正する方法はありますか?

初心者にも分かるような回答をよろしくお願いいたします。

エクセルは初心者なのでマクロを自動記録して作成しています。
少しづつ動作を小分けにして記録して、まとめてボタンで連続実行させるようにしました。
(1)作成途中で失敗したら最初からの作業になると思い、
ある程度進んだら何度かファイルのコピーを作成して進めていました。
ある程度完成した時点でファイル名が「○○○4~コピー~」の様な名前だったので、正式に名前を決めて変更したらマクロの実行が出来なくなりました。(元の名前に戻すと実行可能)

(2)またシートも複数のシートに跨って参照するよ...続きを読む

Aベストアンサー

マクロの自動記録しか使ったことがないのですね。

「ツール」→「マクロ」→「Visual Basic Editor」を開き、左のプロジェクトエクスプローラで「標準モジュール」→「Moduke1」(複数あるかもしれません)を開くと、マクロのコードが表示されます。


その中で
Sheets("   ")
というコードがあったら、””で区切られた部分がシート名です。
マクロ記録後にシート名を変更したのなら、ここも修正する必要があります。

同様に、ファイル名は
Windows("    ")
というコードがあれば、””で区切られた部分がファイル名です。

行や列の挿入をした場合も、自動で修正というのはできないので、変更部分を追っていって、コードを修正していくしかないでしょうね。


人気Q&Aランキング

おすすめ情報