返回列表 上一主題 發帖

插入圖片時,等比例放大或縮小

插入圖片時,等比例放大或縮小

請教插入圖片到儲存格範圍時,如何等比例的在儲存格範圍內放大或縮小
以下程式碼為圖片大小符合儲存格,應如何修改呢?

    i = ThisWorkbook.Path & "\" & NewRef & ".jpg"
    X = Dir(ThisWorkbook.Path & "\" & NewRef & ".jpg")
       If X <> "" Then
          Set rngs = Range(Cells(61, 2), Cells(61, 19))
          ActiveSheet.Shapes.AddPicture i, True, True, rngs.Left, rngs.Top, rngs.Width, rngs.Height
       Else
      End If

謝謝~~

回復 2# ikboy


    感謝ikboy大大回覆,
    經測試後發現圖片有在儲存格內等比例放大,但似乎會停在10~15的這個迴圈出不來(因為等比例放大後的圖片寬度還是比儲存格範圍小),
    我試著在第13行插入Exit Sub,也沒有用,請問該如何修正?
    另外要加上什麼指令可以將等比例放大後的圖片在儲存格範圍內置中呢?
    謝謝~~

TOP

本帖最後由 takeshilin88 於 2020-9-29 15:21 編輯

回復 5# ikboy

ikboy大大您好:

是「圖自身長寬按相同比例盡量放入儲存格中」
您提供的指令有將圖片放大,但因為儲存格範圍比較寬,所以圖片還需要左右置中
謝謝

TOP

回復 7# ikboy


    感謝ikboy大大,
    已經成功了,
    請教這裡的If的判斷是依照什麼條件,有點不太理解?? 高 / 寬
    If .Height / .Width >= Rngs.Height / Rngs.Width Then

    感恩~~

TOP

回復 9# ikboy


    原來如此,又學到了一招,再次感謝~~

TOP

回復 7# ikboy

    求救!!!
    因此excel檔後續以巨集方式使用outlook寄信時,加入附件,
    但對方收到後檔案開啟無法正常顯示圖片,出現:無法顯示連結的圖像。檔案可能已移動、重新命名或刪除。請驗證連結指向正確的檔案及位置。

    查詢好像是要用Shapes.AddPicture 的方式,
    請教要如何改為Shapes.AddPicture 呢?
    感謝~

TOP

回復 12# ikboy


    ikboy大大您好:
    看明明設定都沒錯,但是出來圖片的位置卻偏右邊耶,不知道是哪裡有問題?

2020-10-08_145105.jpg
2020-10-8 14:51

TOP

回復 16# 准提部林


    感謝准大的回覆,圖片已經有置中了,但是圖片沒有等比例的在儲存格範圍內放大或縮小呢?
    可以再幫忙指導一下嗎?
    謝謝~~
2020-10-12_095352.jpg
2020-10-12 09:54

TOP

回復 19# 准提部林


    似乎沒什麼變化....

2020-10-12_104245.jpg
2020-10-12 10:43

TOP

回復 22# 准提部林


    准大您好,
    因需要圖片放到儲存格範圍後能做到如下:
    1.圖片在儲存格範圍內「等比例」的放大or縮小,也就是接近儲存格範圍的大小(但不超出儲存格範圍)
    2.圖片在儲存格範圍內上下左右置中
    依照您的建議還是無法達成需求,已附上檔案,謝謝~~

1091012-QUO.rar (23.15 KB)

TOP

        靜思自在 : 並非有錢魷是快樂,問心無愧心最安。
返回列表 上一主題