[[20101113010341]] 『エクセルのシートに画像を取り込む際に予め大きさ』(ちーちー) >>BOT

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

 

『エクセルのシートに画像を取り込む際に予め大きさを設定した枠内に画像を入れたい場合どのように設定すればできるでしょうか』(ちーちー)Excel2000,2003

 イメージコントロール(ActiveXControl)を使って下さい。

 ichinose


ichinoseさん
お答え有難うございます。ところで私は初心者なのでイメージコントロール(ActiveXControl)と
いわれてもどのようにすばいいのかわかりませんもし差し支えなければお教え願えませんか。
ついでにエクセル2003で画像を枠付で表示する方法についてご教示願えませんか。

 マクロの例ですが、表示したいセル範囲を選んで、名前を付けてください。
 (ここでは PIC_AREA とします。)そのセルの外周に罫線を引いてください。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/name.htm
 名前の付け方参照

 Sub pixcel()
    Dim OpenFileName As String
    OpenFileName = Application.GetOpenFilename("画像ファイル,*.jpg")
    If OpenFileName = "False" Then Exit Sub

    Dim sp As Shape
    For Each sp In ActiveSheet.Shapes
        If sp.Top = Range("PIC_AREA").Top + 1 And sp.Left = Range("PIC_AREA").Left + 1 Then
            sp.Delete
        End If
    Next

    With ActiveSheet.Pictures.Insert(OpenFileName).ShapeRange
        .LockAspectRatio = msoFalse
        .Parent.Visible = msoTrue
        .Left = Range("PIC_AREA").Left + 1
        .Top = Range("PIC_AREA").Top + 1
        .Height = Range("PIC_AREA").Height - 2
        .Width = Range("PIC_AREA").Width - 2
    End With
 End Sub
 を実行してどうでしょうか。
 (Mook)

 Excel2000や2003なら、コマンドバーに「コントロールツールボックス」というのが
 あります。目印は、三角定規のアイコンがあるコマンドバーです。

 このコマンドバーの最後の方(既定値なら、Aと書かれているラベルアイコンの隣に
 イメージコントロールのアイコンがあります)、これをクリック後に

 シート上に適当なサイズでこのイメージコントロールを作成してください。
 作成時は、何の変哲もないグレーの四角形が作成されます。これがイメージコントロールです。

 このイメージコントロールを選択し、選択した状態で
 コマンドバー「コントロールツールボックス」のプロパティ(三角定規のアイコンの隣)
 のアイコンをクリックしてください。
 イメージコントロールのプロパティ設定ダイアログが表示されます。

 まず、Pictureというプロパティをクリックしてください。
 Pictureを選択すると、その右端(なし と記述してある右側)をクリックして下さい。

 ピクチャーの読み込みというダイアログが表示されますから、表示する画像を選択してください。
 OKボタンのクリックでイメージコントロールにその画像が表示されます。

 次に PictureSizeModeというプロパティを選択してください。
 選択すると、右端に矢印が表示され選択が可能になっています。
 選択項目は、以下のとおりですから、希望にあった設定を行ってください。

 fmPictureSizeModeClip 0 フォームまたはページに表示しきれない部分は切り捨てます (既定値)。 

 FmPictureSizeModeStretch 1 フォームまたはページのサイズに合わせて、
 ピクチャを引き伸ばします。
 この場合、ピクチャは水平方向または垂直方向にゆがむことがあります。 

 FmPictureSizeModeZoom 3 必要に応じてピクチャを引き伸ばしますが、
 水平方向または垂直方向にピクチャがゆがまないように引き伸ばします。 

 VBAを知っているなら、既投稿のコードでもよさそうですし、
 今回取り上げたイメージコントロールを使っても可能です。
 これは、VBAを知っているなら、イメージコントロールで調べてみてください。

 ポイントは、Loadpicture VBA関数あたりかなあ・・・。

 ichinose


 枠というのがセル範囲なら、以前こんな回答をしたことがあります。
[[20101013081455]] 『写真の挿入』(64歳老人)

 参考になれば。
 よく使うならアドインの方が便利です。
 (momo)

コメント返信:

[ 一覧(最新更新順) ]


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