
いつもお世話になっております。
エクセルに画像を取り込み、指定範囲内に収まるように貼り付けたいのですが、いろいろ調べ、横向きの画像をセルに挿入することはできたのですが、縦向きの画像を横向きに右に90°回転させて挿入するのができません。
●横向きの画像挿入
Sub 横向き写真挿入()
Dim fName As Variant
Dim pict As Shape
fName = Application.GetOpenFilename("JPG,*.jpg", MultiSelect:=True)
If IsArray(fName) Then
For i = 1 To UBound(fName)
With ActiveCell
Set pict = ActiveSheet.Shapes.AddPicture(Filename:=fName(i), LinkToFile:=False, SaveWithDocument:=True, _
Left:=.Left, Top:=.Top, Width:=.MergeArea.Width, Height:=.MergeArea.Height)
End With
ActiveCell.Offset(2, 0).Activate
Next i
End If
End Sub
●縦向き画像の挿入
①いったん別セルに挿入し、範囲内にある画像を選択
Sub 範囲内画像の選択()
Dim C As Shape
For Each C In ActiveSheet.Shapes
If Not Intersect(C.TopLeftCell, Range("AA5:AD20")) Is Nothing _
And Not Intersect(C.BottomRightCell, Range("AA5:AD20")) Is Nothing Then
C.Select False
End If
Next C
End Sub
②選択した画像を右に90°回転
Sub 右に回転()
Selection.ShapeRange.IncrementRotation 90
End Sub
③指定セルに移動
Sub 移動()
With Selection
.Left = Range("C4").Left
.Top = Range("C4").Top
End With
End Sub
希望としては、
・ボタンを押したときにデスクトップが開くようにしたい(今はドキュメントが開きます)
・①~③の構文を1つにつなげたい
・横向きの画像を取り込んだときのように、スムーズに縦向きの画像を取り込みたい
よろしくお願いいたします。

No.1ベストアンサー
- 回答日時:
こんにちは
元の画像のプロポーションとは関係なしに、セルサイズに合わせてしまっても良いものと解釈しました。
(ご提示のコードがそうなっているようなので…)
以下、90度回転させる場合の一例です。
(表示先の指定が不明なので、ひとまず ActiveCell にしてあります)
Sub Sample_12090491()
Dim p As String, pic As Shape
With Application.FileDialog(msoFileDialogFilePicker)
.InitialFileName = CreateObject("WScript.Shell").SpecialFolders("Desktop")
.Filters.Add "Images", "*.jpg; *.jpeg", 1
.Show
If .SelectedItems.Count = 0 Then Exit Sub
p = .SelectedItems(1)
End With
With ActiveCell.MergeArea
Set pic = ActiveSheet.Shapes.AddPicture( _
fileName:=p, _
LinkToFile:=False, _
SaveWithDocument:=True, _
Left:=.Left + (.Width - .Height) / 2, _
Top:=.Top + (.Height - .Width) / 2, _
Width:=.Height, Height:=.Width _
)
pic.Rotation = 90
End With
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【VBA】写真の縦横比を変えずに貼り付ける
Visual Basic(VBA)
-
【VBA】写真の貼り付けコードがうまく機能しません。
Visual Basic(VBA)
-
VBA 写真の挿入 回転
その他(Microsoft Office)
-
-
4
エクセルマクロでシート内にある画像のみを選択する
Excel(エクセル)
-
5
エクセルVBAで画像を回転させる方法
Excel(エクセル)
-
6
VBAのユーザーフォームのイメージコントロールに読み込んだ画像を左に90°回転させたい
Visual Basic(VBA)
-
7
VBAで写真を設定したフレームに挿入しようとしたが、Rotation=90の場合うまくいかない
Excel(エクセル)
-
8
エクセル(2013)VBA-図の縦横比を変えずにセルにおさまる最大限の大きさにする
Excel(エクセル)
-
9
VBAによるセル内の画像の位置調整
Excel(エクセル)
-
10
VBAエクセルに貼り付けた画像をセルにあった大きさにしたい(等倍)
Excel(エクセル)
-
11
Excel に貼り付けた図形が、保存した後、再度、開くと勝手に動いている。
Excel(エクセル)
-
12
マクロを実行すると画像がズレてしまいます
その他(Microsoft Office)
-
13
エクセルVBA 画像を貼り付けるセル位置を指定する方法
Excel(エクセル)
-
14
VBAで特定のセルに画像があれば削除、なければ貼り付けを行いたい
Excel(エクセル)
-
15
エクセル ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?
Excel(エクセル)
-
16
回転させた画像を左上のセルにフィットさせたい
Excel(エクセル)
-
17
EXCELのVBAで画像を選んだ順に貼り付ける方法
Excel(エクセル)
-
18
Excel マクロ 画像をリンクせずかつ圧縮して貼りつける方法を教えてください
Excel(エクセル)
-
19
【VBA】 結合セルに複数画像とファイル名一括挿入する方法
Visual Basic(VBA)
-
20
VBAで、JPG写真の撮影日時を読み出す関数?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで枠飾り
-
PowerDirector 11で空白時間の挿入
-
写真9枚をA4紙に配置したい。
-
EXCELにjpg画像を挿入...
-
大学のレポートを書くためにWor...
-
エクセル2007へPDFファイルの挿...
-
エクセルVBAで縦向きの画像の挿...
-
フッターを「最前面」に
-
ヘッダーとフッダーの縦書き方法
-
エクセルのフッター(右)に入...
-
OO.oのDrawで挿入絵の背景を透...
-
ワード2013に地図を貼り付...
-
GoodNotes5で、画像を複数選択...
-
エクセルのフッダーに四角で囲...
-
Word~図の挿入のレイアウトを...
-
画像に連番の文字列を挿入したい
-
パワーポイントの画面がずれる
-
Excelで隠れてしまった図...
-
よくあるトーナメント表を、一...
-
花子10の図形をワードやエク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで枠飾り
-
エクセルのフッター(右)に入...
-
大学のレポートを書くためにWor...
-
EXCELにjpg画像を挿入...
-
エクセルのフッダーに四角で囲...
-
ヘッダーとフッダーの縦書き方法
-
写真9枚をA4紙に配置したい。
-
PowerDirector 11で空白時間の挿入
-
EXCELのフッターにオートシェイ...
-
GoodNotes5で、画像を複数選択...
-
エクセルで写真の挿入 セルの中...
-
Accessで請求書に印鑑を...
-
フッターを「最前面」に
-
エクセルVBAで縦向きの画像の挿...
-
OO.oのDrawで挿入絵の背景を透...
-
保存や挿入などフォルダを開く...
-
数式のΣ記号が入力できません
-
Excelに複数の写真を挿入する場合…
-
Word~図の挿入のレイアウトを...
-
Wrodのことです。
おすすめ情報