• 締切済み

エクセル2007 セル内の画像の位置をいっせいに

A4からA100まで、一つのセルに1画像ずつ貼っています。 が、並びがバラバラにつき、それらを一斉にセルの中心に並べたいのですが、方法はありますか? また、セルからはみ出ている(縦)のもあるので、それも一斉にセル内に収まるようサイズ変更したいのです。 よろしくお願い致します。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.4

図形を配置したシートを表示する ALT+F11を押す 現れた画面で挿入メニューから標準モジュールを挿入する 現れたシートに下記をコピー貼り付ける Sub macro1()  Dim s As Shape  Dim n  For Each s In ActiveSheet.Shapes   n = n + 1   s.Top = Cells(n, 1).Top   s.Left = Cells(n, 1).Left   s.LockAspectRatio = msoTrue   s.Width = Application.Min(s.TopLeftCell.Width, s.Width)   s.Height = Application.Min(s.TopLeftCell.Height, s.Height)   s.Top = Cells(n, 1).Top + (Cells(n, 1).Height - s.Height) / 2   s.Left = Cells(n, 1).Left + (Cells(n, 1).Width - s.Width) / 2  Next End Sub F5キーを押し,現れたダイアログでmacro1を選んで実行する。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

>並びがバラバラにつき、それらを一斉にセルの中心に並べたいのですが ホームタブの「検索と選択」から「オブジェクトの選択」をクリックし対象図形をドラッグして選択します(シート上に対象画像しかなければ、Ctrl+Gでジャンプダイアログを出して「セル選択」から「オブジェクト」で「OK」してもよい)。 リボンに表示された【描画ツール」の「書式」をクリックして、リボンの「配置」の中の右上の「配置」アイコンをクリックして「左右中央揃え」をクリックしてください。 >セルからはみ出ている(縦)のもあるので、それも一斉にセル内に収まるようサイズ変更したいのです。 一斉に画像の大きさを変更したいなら、すべての画像が選択された状態でどれか1つのサイズを変更します。 上下のセル位置を等間隔に配置したい場合は、配置アイコンをクリックして「上下に整列」を実行してください。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

本質的にエクセル関数の問題ではありません。 VBAなら割合簡単に出来る場合があります。 しかしエクセルは画像のサムネイル表示や画像そのものの編集のソフトではなく、エクセルの問題として考えるのは、要求の方向がずれています。 別のソフトで考えるべきことです。 基本的にエクセルは「セル」の「値」の処理学です。画像は「セルの値」でなく、たまたまVBAでセルの左辺などに画像の位置を動かせるだけです。 セルB1の辺りに見えている、たぶんPictureXX(XXは番号)の番号も、割り出すのが難しいように思う(不勉強で知らないだけだったらすみません。) 今回はセルの左辺から一律の距離に全部をそろえる、のようですからその点は逃げられますが。 ーー 「オブジェクトの選択」というボタンがあるが(左上向き中抜き矢印)、これで複数画像を掴み、一斉にそろえる手は無かったように思う。 アクセスのコントロールに対してなどは在るが。

回答No.1

手動案です。(XL2003) 4行目から100行目での行の高さが同じなら A4セルとA100セルの画像のみ手動で中心に合わせ A4:A100セルの画像を選択し、 [左右中央揃え]と[上下に整列]させればよいと思います。 サイズは、VBAの処理になると思いますが [Ctrl]キーを押しながらサイズを変更すれば中心がずれません

関連するQ&A