Board logo

標題: [發問] 請教如何依序將圖片貼於工作表之有限區域內? [打印本頁]

作者: cmo140497    時間: 2013-5-6 15:42     標題: 請教如何依序將圖片貼於工作表之有限區域內?

Dear 各位大大及版主 :
小弟有一問題想請教 :
工作表1內有不等數之圖片,要如何依序將圖片貼於工作表2之有限區域內,如果工作表2之有限區域width不足以再貼上一張圖的width,則跳下一列(無法指定cells),因為圖片長寬大小不一定

工作表1如下圖

[attach]14901[/attach]

工作表2如下圖
[attach]14902[/attach]

[attach]14903[/attach]
作者: Hsieh    時間: 2013-5-6 21:47

回復 1# cmo140497
  1. Sub test()
  2. Dim Pc As Picture, w#, k#, t#, h#
  3. Application.ScreenUpdating = False
  4. 工作表1.Pictures.Copy
  5.    With 工作表2
  6.    .Pictures.Delete
  7.    w = .[AY2].Left + .[AY2].Width
  8.    k = .[B2].Left
  9.    t = .[B2].Top
  10.       .Paste
  11.        For Each Pc In .Pictures
  12.           With Pc
  13.           k = IIf(k + .Width > w, .Parent.[B2].Left, k)
  14.           t = IIf(k = .Parent.[B2].Left, t + h, t)
  15.              .Top = t
  16.              .Left = k
  17.              h = IIf(h < .Height, .Height, h)
  18.              h = IIf(k = .Parent.[B2].Left, .Height, h)
  19.              k = k + .Width
  20.           End With
  21.        Next
  22.        .[B2].Select
  23.    End With
  24.    Application.ScreenUpdating = True
  25. End Sub
複製代碼

作者: cmo140497    時間: 2013-5-7 08:24

回復 2# Hsieh


    請教版主,Pictures.parent 這個parent最主要用意,是要取得Pictures 物件的參數還是儲存格的,看不是很懂,再煩請版主指教,感恩?
作者: Hsieh    時間: 2013-5-7 08:34

回復 3# cmo140497


    parent就是取得物件的父階層物件
Picuure是依附在工作表上的物件
所以
Pictures(x).Parent就是該圖片所在的工作表
作者: cmo140497    時間: 2013-5-7 11:45

回復 4# Hsieh


    感謝版主的指教,又學到了一招,感恩!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)