
エクセル貼り付けた画像をセルにあった大きさにしたいのですが、
その際、縦と横の比率を変更したくありません。
縦と横の比率を変更せず、セルにおさまる最大の大きさで画像のサイズを
変えることは可能でしょうか。
-----------------------------------------------------------------------------
縦と横の比率が関係なく、セルいっぱいのサイズに画像の大きさを変更するVBAは
下記URLから見つけられたのですが、、、、、
http://q.hatena.ne.jp/1240648036

No.2ベストアンサー
- 回答日時:
No.1です。
>画像が置いてあるセル上で処理を行う
画像のどこを基準にするか?によってコードは変わってきますが、
画像の左上端のセルにその画像を縦・もしくは横いっぱいに配置するコードにしてみました。
Sub Sample2()
Dim mySp As Shape, myRng As Range
Dim myHgt As Double, myWdt As Double
For Each mySp In ActiveSheet.Shapes
With mySp
Set myRng = .TopLeftCell
myHgt = myRng.Height
myWdt = myRng.Width
.Top = myRng.Top
.Left = myRng.Left
.Height = myHgt
If .Width > myWdt Then
.Width = myWdt
End If
End With
Next mySp
End Sub
こんな感じではどうでしょうか?m(_ _)m
基点などの考えが及ばず申し訳ありません、
>画像の左上端のセル
はい、こちらがやりたかったことでした!汲んで頂いて本当にありがとうございます!!
今までの作業がとても効率的になりますし、本当に嬉しいです!!!
ありがとうございました!!!!!神様です!!
No.1
- 回答日時:
こんばんは!
縦横固定は考えず、画像の縦・もしくは横がセルいっぱいに収まればよい!
という考え方のコードです。
A1セルからA列に順にセル内の収まるようにしてみました。
仮にアクティブSheet上に画像が5個あればA1~A5セル内に画像が収まるはずです。
Sub Sample1()
Dim cnt As Long, mySp As Shape
Dim myHgt As Double, myWdt As Double
Dim myRH As Double, myRW As Double
For Each mySp In ActiveSheet.Shapes
cnt = cnt + 1
myHgt = mySp.Height
myWdt = mySp.Width
myRH = Cells(cnt, "A").Height
myRW = Cells(cnt, "A").Width
With mySp
.Left = Cells(cnt, "A").Left
.Top = Cells(cnt, "A").Top
.Height = myRH '//一旦画像の高さをセルの高さに合わせる
'//▼ 画像がセル幅より大きい場合はセル幅に合わせる
If .Width > myRW Then
.Width = myRW
End If
End With
Next mySp
End Sub
こんな感じではどうでしょうか?m(_ _)m
ありがとうございます!!!
画像が奇麗なままでぴったりと収まりました!!
こちら、画像が置いてあるセル上で処理を行う(A列に並べない)場合は
どのようにすればよいでしょうか。説明が足りておらず申し訳ありません。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
エクセルで、セルのサイズに合わせて画像を挿入するには?
Excel(エクセル)
-
エクセル(2013)VBA-図の縦横比を変えずにセルにおさまる最大限の大きさにする
Excel(エクセル)
-
画像を結合セルの大きさで貼付(以前に回答されたマクロについて)
PowerPoint(パワーポイント)
-
4
任意フォルダから画像をすべてエクセルの指定マスに貼り付けをしたい
Visual Basic(VBA)
-
5
ExcelのVBAで画像読込→サイズ変更がしたい。
Excel(エクセル)
-
6
エクセルに画像を貼付け縮小する作業をマクロにしたいのですが、
Excel(エクセル)
-
7
Excel VBAでセル内の画像を選択したい
Excel(エクセル)
-
8
画像を削除したい(VBA)
Word(ワード)
-
9
VBAによるセル内の画像の位置調整
Excel(エクセル)
-
10
複数の画像ファイルを挿入したい
Excel(エクセル)
-
11
写真を指定したサイズで貼り付けるマクロについて教えてください。
Excel(エクセル)
-
12
【EXCEL VBA】ダブルクリックでセルのサイズに合わせて画像を挿入に機能を追加したいです。
Visual Basic(VBA)
-
13
エクセルで写真の挿入 セルの中央に写真を挿入する方法を教えてください。 (画像挿入→画像選択→デカイ
Excel(エクセル)
-
14
エクセルVBAで画像を貼り付ける座標設定方法は?
PowerPoint(パワーポイント)
-
15
エクセルvbaでの図形のカット(コピー)ペーストについて
Excel(エクセル)
-
16
エクセルで画像を自動的に挿入
Excel(エクセル)
-
17
VBAマクロで、図形等のオブジェクトを選択(特定)する方法ってありますか
Excel(エクセル)
-
18
エクセルマクロでダブルクリックして画像貼り付けでサイズ設定したいです。
Excel(エクセル)
-
19
エクセルで簡単に写真を挿入したい
Excel(エクセル)
-
20
VBA 写真の挿入 回転
その他(Microsoft Office)
関連するQ&A
- 1 エクセルのVBAでセルを貼り付けた画像の大きさにしたい
- 2 エクセルVBAで複数のセル入力からそれぞれの画像を指定したセルに貼り付け
- 3 【エクセルVBA】選択した画像をエクセルに貼り付け、大きさ(幅・高さ)も追記したい
- 4 エクセルVBA 画像を貼り付けるセル位置を指定する方法
- 5 エクセルに画像を貼り付けるとセルにあわせたサイズにしかならず、大きさ調整すると形が変わってしまう
- 6 エクセルVBA 時刻が入ったセルで下のセルと上のセルの分間隔を計算したい
- 7 エクセルに貼り付けた画像の大きさを変えたい
- 8 エクセルでセルの大きさを変えた表の貼り付け
- 9 エクセルVBA:データ端に画像があった場合の最終セル位置取得
- 10 エクセルでセルに表を表示(リンク貼り付け等にて・・)させたいのですが・・
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
【Excel】 セルの色での判断は...
-
5
セル版について・・
-
6
エクセルで指定したセルのどれ...
-
7
excelの特定のセルの隣のセル指...
-
8
Excelについて(セル内の文字を...
-
9
エクセル 足して割る
-
10
エクセルのセルの枠を超えて文...
-
11
ドロップダウンさせるボタンを...
-
12
対象セル内(複数)が埋まった...
-
13
貼り付けで複数セルに貼り付けたい
-
14
EXCEL VBA で特定の文字に色を...
-
15
【エクセル】IF関数 Aまたは...
-
16
ピボットテーブルの更新時にエ...
-
17
Excelで数式内の文字色を一部だ...
-
18
EXCELで、指定セルにある文字列...
-
19
Excelの下側の空行を消したい
-
20
エクセルで「コピー領域と貼り...
おすすめ情報
公式facebook
公式twitter