Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3995 / 76734 ←次へ | 前へ→

【78367】Re:すみません、説明不足でした
発言  β  - 16/7/27(水) 15:33 -

引用なし
パスワード
   ▼acs さん:

まず

> Q.参照マクロで写真を貼りつけるとPC1(Win10,2010)だと問題ないのですが
> PC2(Win7,2010)はちょっとだけ大きくなり、PC3(Win7,Excel2007)だと横長になってしまいます。これは仕方のないことなのでしょうか?

私が持っている環境は win7+xl2010とwin10+xl2013 のみですが、大きさに関しては
あまり気にしたことはありません。厳密に測れば、ちょっとは差異があるのかもしれませんが。

で、xl2007 に関しては、こと、図にかんしては(それ以外にも不具合多々あるようですが)
バグだらけのようですので、比較の対象にはされないほうがよろしいかと思います。

いずれにしても A1 にのみ写真を貼り付けるサンプルです。

Sub Sample()
  Dim pic As Picture
  Dim f As Variant
  Dim Target As Range
  
  'A1の画像を削除
  For Each pic In ActiveSheet.Pictures
    If pic.TopLeftCell.Address = "$A$1" Then pic.Delete
  Next
  
  Set Target = Range("A1")
  
  f = Application.GetOpenFilename _
      ("jpg bmp tif png gif,*.jpg;*.bmp;*.tif;*.png;*.gif", , "画像の選択", , False)
  If f <> False Then
    With ActiveSheet.Shapes.AddPicture(Filename:=f, LinkToFile:=False, _
      SaveWithDocument:=True, Left:=Target.Left, Top:=Target.Top, _
      Width:=-1, Height:=-1)   '-1 元の大きさで貼り付け
      '===============タテヨコの縮尺を保持して拡大または縮小
      .LockAspectRatio = True   '縦横比率の維持(念のため)
      .Width = .Width * 0.3
    End With
  End If

End Sub

6 hits

【78364】特定のセルの写真を削除してから挿入 acs 16/7/27(水) 11:43 質問[未読]
【78365】Re:特定のセルの写真を削除してから挿入 β 16/7/27(水) 12:09 発言[未読]
【78366】すみません、説明不足でした acs 16/7/27(水) 13:44 質問[未読]
【78367】Re:すみません、説明不足でした β 16/7/27(水) 15:33 発言[未読]
【78368】Re:すみません、説明不足でした acs 16/7/27(水) 17:32 質問[未読]
【78369】Re:すみません、説明不足でした β 16/7/27(水) 19:05 発言[未読]
【78370】Re:すみません、説明不足でした acs 16/7/28(木) 0:47 お礼[未読]
【78371】Re:すみません、説明不足でした acs 16/7/28(木) 12:00 質問[未読]
【78373】Re:すみません、説明不足でした β 16/7/28(木) 18:28 発言[未読]
【78381】Re:すみません、説明不足でした acs 16/7/30(土) 13:40 お礼[未読]

3995 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free