Board logo

標題: [發問] 利用迴圈分別插入圖片至所有的工作頁 [打印本頁]

作者: a703130    時間: 2011-5-4 10:11     標題: 利用迴圈分別插入圖片至所有的工作頁

請教各位大佬
我原本錄巨集將10張圖片分別在各sheet貼兩張,由Sheet(1)~sheet(5)
下面是我錄的其中一個巨集,請問我有辦法用迴圈來簡化這程式碼嗎?
Sub Test()
    Sheets(1).Select

    Range("B9").Select
    ActiveSheet.Pictures.Insert("C:\test1.JPG").Select
    Selection.ShapeRange.LockAspectRatio = msoTrue
    Selection.ShapeRange.Height = 438.75
    Selection.ShapeRange.Width = 590.25
    Selection.ShapeRange.Rotation = 0#

    Range("J9").Select
    ActiveSheet.Pictures.Insert("C:\final1.JPG").Select
    Selection.ShapeRange.LockAspectRatio = msoTrue
    Selection.ShapeRange.Height = 438.75
    Selection.ShapeRange.Width = 590.25
    Selection.ShapeRange.Rotation = 0#
End Sub
作者: oobird    時間: 2011-5-4 10:45

這個須要先知道10個圖片的名稱路徑
如果多的話圖片名稱最好有規律可以做迴圈
作者: Hsieh    時間: 2011-5-4 15:58

10張圖分別插入5張工作表
每張工作表2張圖
  1. Sub ex()
  2. d = "D:\"
  3. f = "*.png"
  4. fs = Dir(d & f)
  5. i = 1
  6. Do Until fs = ""
  7.    With Sheets(i).Pictures.Insert(d & fs)
  8.    If s Mod 2 = 0 Then _
  9.    .Top = Sheets(i).[B9].Top: .Left = Sheets(i).[B9].Left _
  10.    Else .Top = Sheets(i).[J9].Top: .Left = Sheets(i).[J9].Left
  11.    End With
  12.    s = s + 1
  13.    If s Mod 2 = 0 Then i = i + 1
  14.    fs = Dir
  15. Loop
  16. End Sub
複製代碼





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