找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
感激所有對伊莉作出奉獻的人尊貴會員無限下載附件你準備好成為出色的版主了嗎?
office我的英雄鬼父七大罪銀魂世紀帝國按摩
女孩dang! d內射りんかんさとう遙東離劍遊關西援交

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

[繁]藥師少女的獨語21

[超清中字]灌籃高手

[繁]葬送的芙莉蓮26-

[繁]秒殺外掛太強了,

[簡]為了在異世界也能

余家儀 衣服直接滑下
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 4128|回復: 2

[求助] VBA萬用字元收尋不到檔案時無法停止程式[複製鏈接]

帖子
142
積分
0 點
潛水值
3160 米
發表於 2018-7-15 11:36 PM|顯示全部樓層
請問一下各位大神!

我想問一下!我這個程式碼只要在檔案夾內有所收尋的圖片都能正常執行,但當收尋的圖片不在資料夾內卻無法停止收巡,導致軟體會死當,有大大們可以幫我看看哪裡出了問題嗎?

Private Sub cmdMerge_Click()

Dim a, b, c As Integer '宣告a,b,c為整數
Dim objsheet As Worksheet
WorkName = Excel.ActiveWorkbook.Name '此檔案名稱

i = 6
...
瀏覽完整內容,請先 註冊登入會員
分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。

使用道具檢舉

Rank: 2Rank: 2

帖子
366
積分
201 點
潛水值
14812 米
發表於 2018-8-1 07:41 PM|顯示全部樓層
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。
本帖最後由 tvmateiii 於 2018-8-1 07:42 PM 編輯

你應該自己嘗試看看捉臭蟲
提示你

找不到檔案的時候
是否要跳出迴圈呢

你的 For Next 有好好配對嗎

我實在看不懂 
Exit For 在 Next 止面代表什麼意思

===========
Exit For
Next
Wend


MsgBox "執行完成", vbOKOnly, ""
...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

帖子
73
積分
22 點
潛水值
8164 米
發表於 2018-8-3 05:13 PM|顯示全部樓層
這是依照你上個問題提供的檔案去修改的,看是否符合你所需。
  1. Private Sub cmdMerge_Click()
  2.     Dim fs As Object, fd As Object, f As Object, b As Boolean, s As String
  3.    
  4.     WorkName = Excel.ActiveWorkbook.Name '此檔案名稱
  5.    
  6.     i = 6
  7.     Z = 1
  8.    
  9.     picHeight = Range("b1")
  10.     picWidth = Range("b2")
  11.     picColumn = Range("b3")
  12.     picAngle = Range("b4")
  13.    
  14.     '將之前產生的圖片清除
  15.     Sheet3.Activate
  16.     Sheet3.Shapes.SelectAll
  17.     Selection.Delete
  18.     '建立FileSystemObject物件
  19.     Set fs = CreateObject("Scripting.FileSystemObject")
  20.    
  21.     While Sheet1.Range("b" & i) <> ""
  22.           Filepath = Sheet1.Range("a" & i)
  23.           Filename = Sheet1.Range("b" & i)
  24.           If Filepath = "" Then Filepath = Excel.Workbooks(WorkName).Path
  25.           Filepath = IIf(Right(Filepath, 1) = "\", Filepath, Filepath & "\")
  26.           '指定fd到Folder物件
  27.           Set fd = fs.GetFolder(Filepath)
  28.           '列舉出此資料夾所有檔案
  29.           b = False
  30.           For Each f In fd.Files
  31.               If f.Name Like "*" & Filename Then
  32.                  Sheet3.Activate
  33.                  Sheet3.Range(picColumn & Z).Select
  34.                  Set shpPic = Excel.ActiveSheet.Shapes.AddPicture(f.Path, True, True, Selection.Left, Selection.Top, -1, -1)
  35.                  If picHeight > 0 Then
  36.                     shpPic.Height = 28.5 * picHeight
  37.                    '調整列高度
  38.                     Sheet3.Rows(Z).RowHeight = 28.5 * picHeight
  39.                  End If
  40.                  If picWidth > 0 Then shpPic.Width = 28.5 * picWidth
  41.                  shpPic.Rotation = picAngle
  42.                  Selection.Cut   '2007才需要底下這樣作
  43.                  Sheet3.Range(picColumn & Z).Select
  44.                  ActiveSheet.Paste
  45.                  b = True
  46.                  Z = Z + 1
  47.               End If
  48.           Next
  49.           If Not b Then s = s & Filepath & "資料夾裡面找不到符合 *" & Filename & "的檔案!" & vbCrLf
  50.           i = i + 1 '讀取下一個名稱
  51.          
  52.     Wend
  53.     MsgBox "執行完成" & IIf(s = "", "", vbCrLf & s)
  54. End Sub
複製代碼
...
瀏覽完整內容,請先 註冊登入會員
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部