設為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

返回列表 發(fā)新帖
查看: 4578|回復: 3
打印 上一主題 下一主題

一次全部導入圖片自動根據(jù)單元格高度

[復制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2011-6-3 19:20:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
1.在A2至A40輸入圖片名稱
2.圖片放在圖片文件夾內(nèi)
3.一次全部導入
4.圖片自動根據(jù)單元格高度
Sub 圖片導入()
    '將圖片導入。
    '圖片按照原比例存儲,按照原比例存儲
    On Error Resume Next
    Dim R&
    Dim Pic As Object
    '先刪除所有可能存在的圖片
    For Each Pic In Sheet1.Shapes
        If Pic.Name <> Sheet1.Shapes("按鈕 97").Name Then
            Pic.Delete
        End If
    Next
    For R = 2 To Range("A65536").End(xlUp).Row
        '插入圖片
        Set Pic = Sheet1.Pictures.Insert(ThisWorkbook.Path & "\圖片\" & Cells(R, 1) & ".jpg")
        '鎖定高寬比
        Pic.ShapeRange.LockAspectRatio = True
        '看高寬比。如果圖片高寬比高,那么調(diào)整到單元格高度,否則調(diào)整到單元格寬度
        '我們看到的右鍵格式菜單里的東西都是針對ShapeRange而言的,所以要用ShapeRange來設定
        With Pic.ShapeRange
            '如果圖片高寬比比單元格大,說明圖片太高,只需調(diào)整圖片高度
            If .Height / .Width > Cells(R, 4).Height / Cells(R, 4).Width Then
                .Height = Cells(R, 4).Height
                '調(diào)整位置
                .Top = Cells(R, 4).Top
                .Left = Cells(R, 4).Left + (Cells(R, 4).Width - .Width) / 2
            '如果圖片高寬比比單元格小,說明圖片太寬,只需調(diào)整圖片寬度
            Else
                .Width = Cells(R, 4).Width
                '調(diào)整位置
                .Left = Cells(R, 4).Left
                .Top = Cells(R, 4).Top + (Cells(R, 4).Height - .Height) / 2
            End If
        End With
    Next R
End Sub

本帖被以下淘專輯推薦:

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享1 分享淘帖1 訂閱訂閱

點擊這里給我發(fā)消息

2#
發(fā)表于 2012-11-6 09:15:44 | 只看該作者
沙發(fā)..
3#
發(fā)表于 2012-11-6 09:21:54 | 只看該作者
學習

點擊這里給我發(fā)消息

4#
發(fā)表于 2022-10-18 16:06:22 | 只看該作者
學習
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2025-7-13 08:07 , Processed in 0.110160 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表