こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

-広告-

解決済みの質問

EXCELセル内に収まるよう画像サイズを設定したい

EXCELに画像をたくさん張り付けなきゃいけません。画像サイズが大きいためにセル内に収めるようサイズをいちいち調整してるんですが、セル内に最初から収まるように設定できないでしょうか?ちなみにフリッカーというサイトからダウンロードしたサイズがバラバラなものを張ってます。

あと保存先を最初からデスクトップに来るようにしたいのです。やり方がわかりません。よろしくお願いします。

投稿日時 - 2016-01-25 01:07:18

QNo.9116681

暇なときに回答ください

質問者が選んだベストアンサー

縮小専用
http://www.forest.impress.co.jp/library/software/shukusen/
このソフト使って一括で画像を指定サイズに変換して貼り付けるのはどうでしょうか。サイズも指定サイズ以下に変更できます。
ただし大本の画像を小さくするので、エクセルに貼り付けてから縮小するのと違って画像の質が落ちてしまいます。

貼り付けてから縮小したいなら、画像をまとめてエクセル内に貼り付けてから「サイズとプロパティ」をクリックして、大きさを打ち込みで指定すれば選択した画像のサイズをまとめて変更できます。

保存先を指定するのについて、画像をダウンロードする時の話なら、名前をつけて保存を選んで、特定の場所に保存すれば、次に保存するときもそこに保存できると思います。
質問を勘違いしてたらごめんなさい。

投稿日時 - 2016-01-25 10:12:54

お礼

ご丁寧にありがとうございました。

投稿日時 - 2016-01-25 17:49:26

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(2)

ANo.2

こんにちは
保存先はフリッカーからダウンロードする時にデスクトップ指定するとして、
マクロでそのダウンロードしたファイルを複数選択してセルA1から下方に
貼り付けるなら、
Sub test()
  Dim f As Variant
  Dim v As Variant
  Dim i As Long
  Dim x As Double
  Dim y As Double
  f = Application.GetOpenFilename("画像 ファイル (*.jpg;*.jpeg;*.png),*.jpg;*.jpeg;*.png", , , , True)
  If VarType(f) = vbBoolean Then
    Exit Sub
  End If
  i = 1
  For Each v In f
    With ActiveSheet.Pictures.Insert(v)
      x = Cells(i, 1).Width / .Width
      y = Cells(i, 1).Height / .Height
      If x > y Then
        .Height = .Height * y
      Else
        .Width = .Width * x
      End If
  
      .Left = Cells(i, 1).Left + (Cells(i, 1).Width - .Width) / 2
      .Top = Cells(i, 1).Top + (Cells(i, 1).Height - .Height) / 2
    End With
    i = i + 1
  Next
End Sub
こんな感じで。

投稿日時 - 2016-01-25 17:11:58

お礼

ありがとうございました。

投稿日時 - 2016-01-25 18:03:34

-広告-
-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-