[[20110315151458]] 『画像のファイル名を入力すると表示ができるように』(mabu) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『画像のファイル名を入力すると表示ができるように…』(mabu)

写真台帳の名称部分に「1」と入力すれば、「1.jpg」の画像ファイルが呼び込めるようにするにはどうすればよいのでしょうか?
宜しくお願い致します。

画像は下記のサイトを参考にして、マクロにてセルの範囲内で自動縮小するように設定はしています。

http://plaza.rakuten.co.jp/plaplanet2007/diary/200705100000


 Sub Sample_Prg()

 Dim iPicture As String
 Dim iSheet As String
 Dim iCell As String
 Dim iStr As String     '追記)ファイル名称

 '***************** サンプル変数値の設定 ****************
 iStr = Cells(1, 1).Value '追記)セルA1
 iPicture = "C:\MY DOCUMENTS\MY PICTURES\" & iStr & ".jpg"  '挿入する画像ファイル ⇒ 注1 変更)セル番地
 iSheet = "Sheet1" '挿入先のシート名称
 iCell = "C4:C5" '挿入先のセルの範囲

 '***************** 画像ファイルの挿入 ******************
 Call MovPicture(iPicture, iSheet, iCell)

 End Sub

 上記一部変更しました。
 A1セルに呼び出したいファイル名称を入れてマクロを実行で出来ると思います。

 (Yujin)

(Yujin)様
早速のアドバイスありがとうございました。
無事変更して使えました。
ただ、昨日初めてマクロを使用したのと質問が単純でしたので、私が思うような感じにはなりませんでした。
今一度、詳細な質問をいたしますので、もしよければ、回答をお願い致します。

●写真5000枚を写真台帳に6枚づつ貼りつけて整理するのが目的です。
●セルに写真名称を入力→保存してあるフォルダから自動的に挿入されるようにしたい。

例)A3サイズの写真台帳(6枚貼りつけられる)の各セル「E10,E17,E24…」に画像フォルダの「23-1から23-100」までの100枚の個々のタイトル画像名を順次入力する。(ページが17ページまでになる。)

※問題点、貼りつける個々のセルごとにマクロを設定したいのに、シート全体の設定になります。generalとworksheetの設定ですか?初心者の稚拙な質問で申し訳ありません。

(mabu)


 各シートのE列にはファイル名が記載されているものとします。
 貼り付け位置はファイル名称のある行のG列〜J列に6行分としています。
 マクロを実行したシートから右にあるシートに対して実行されます。
 ファイル名がなくなるところまで(各シートのE列に値がなくなるまで)実行されます。
 ファイル名が存在しない場合はエラーが出て止まります。

 Sub Sample_Prg()

 Dim iPicture As String
 Dim iSheet As String
 Dim iCell As String
 Dim iStr As String     '追記)ファイル名称
 Dim maxRow As Long
 Dim iRow As Long
 Dim ShCount As Integer
 Dim Sht As Integer

 '***************** サンプル変数値の設定 ****************

    ShCount = ThisWorkbook.Worksheets.Count

    For Sht = ActiveSheet.Index To ShCount
        With Sheets(Sht)
            maxRow = .Range("E" & Columns("A").Rows.Count).End(xlUp).Row
            For iRow = 10 To maxRow
                If .Cells(iRow, 5) <> "" Then

                    iStr = .Cells(iRow, 5).Value
                    iPicture = "C:\MY DOCUMENTS\MY PICTURES\" & iStr & ".jpg"  '挿入する画像ファイル ⇒ 注1
                    iSheet = .Name '挿入先のシート名称
                    iCell = "G" & iRow & ":J" & iRow + 6 '挿入先のセルの範囲

                    '***************** 画像ファイルの挿入 ******************
                    Call MovPicture(iPicture, iSheet, iCell)
                End If
            Next iRow
        End With
    Next Sht

 End Sub

 このような感じでいかがでしょうか。

 (Yujin)


(Yujin)様 重ねがさねありがとうございました。
折角、ご指導して頂いて、昨日今日と頑張ってみましたが、残念ながら成功しませんでした。
すこしマクロ初心者にはハードルが高かったように思います。
せめて画像で質問できれば、明確に伝達できたのかも知れません。
(Yujin)様の大切な時間を割いて指導して頂いたのに悔しいです。
また、機会があれば宜しくお願い致します。
(mabu)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.