返回列表 上一主題 發帖

用excel上網查音標 又掛了

本帖最後由 c_c_lai 於 2012-7-15 20:52 編輯

回復 20# HSIEN6001
第一次一定是 OK 的,因為在 D:\ 內 市.csv、櫃.csv 並不存在,按第二次時,
妳又再次使用 .SaveToFile (Apath & "市.csv") 以及 .SaveToFile (Apath & "櫃.csv")
所以就會出錯了。
應該在 .SaveToFile() 前先判斷檔案是否業已存在,如是的話,就應先予以刪除後,
才能執行 .SaveToFile()。
至於如何去執行刪除動作(VBA 語法)就要請教 GBKEE 大大了。

TOP

回復 21# c_c_lai

只按一次而已
程序後處理,有下Kill 指令刪除檔案
但下載錯誤的頁面,無法完成所有動作.

出現錯誤的下載   
<head>
<link rel='stylesheet' href='/ppp.css' type='text/css'>
</head>
<body>
<center>
<br><h4 align='center'><font color='red'>檔案不存在</font></h4>
<!- filename1 = t108sb27_20120715_18181771.csv' --><br>
<!- filename2 = t108sb27_20120715_18181771.csv' -->
<!- fromNew =  -->

不ㄧ定在[市]or[櫃]出現錯誤的下載
跟回傳速度有關係?!

TOP

回復 18# GBKEE
我指的是#16 的第32行
' (For 5 to 6)
' (For i = 0 To 4)                   <---   正確應為 For i = 0 To 3
' Split("1ABCD2ABCD3ABCD4ABCD",Mid(A,5,1)) -> 'D'
' Join(W,',') -> 1ABC,2ABC,3ABC,4ABC,
'
10.png

TOP

回復 23# c_c_lai
找不出你的錯誤
  1. Option Explicit
  2. Sub Ex() 'Split在字串中以指定的字元作分割傳回一維陣列
  3.     Dim A As String, W, xi As Integer, i As Integer
  4.     A = "1ABCD2ABCD3ABCD4ABCD"
  5.    ' (For 5 to 6)
  6.     For i = 0 To 4       '   <---   正確應為 For i = 0 To 3
  7.         W = Split("1ABCD2ABCD3ABCD4ABCD", Mid(A, 5, i)) ' '-> 'D'
  8.     MsgBox "分割字串 """ & Mid(A, 5, i) & """陣列上限維度 " & UBound(W) & " 最後一維字串: " & W(UBound(W)) '-> 1ABC,2ABC,3ABC,4ABC)
  9.     Next
  10. End Sub
複製代碼
回復 20# HSIEN6001
Split(字串,分割字元)(1)--->這個(1)是?意思
18#有示範的程式
  1. Sub Ex_Split() 'Split(字串,分割字元)(1)--->這個(1)是?意思
  2.     Dim A As String, W, xi As Integer, i As Integer
  3.     A = "1ABCD2ABCD3ABCD4ABCD"
  4.     W = Split(A, "B")
  5.     For i = 0 To UBound(W)
  6.         MsgBox "W(" & i & ")  -> " & W(i)
  7.     Next
  8. End Sub
複製代碼
壓縮檔內有兩個下載,一個是NG,一個OK
21#c_c_lai  不是說
第一次一定是 OK 的,因為在 D:\ 內 市.csv、櫃.csv 並不存在,按第二次時,
妳又再次使用 .SaveToFile (Apath & "市.csv") 以及 .SaveToFile (Apath & "櫃.csv")
所以就會出錯了。
  1. Sub Ex()
  2. Dim xml As New XMLHTTP
  3. Dim stream As New ADODB.stream
  4. Dim strURL As String
  5. Dim x As String, y As String
  6. Dim Apath As String, ApathFile As String
  7. Apath = "D:\"
  8. If Dir(Apath & "市.csv") <> "" Then Kill Apath & "市.csv"       '加上有則刪除的判斷
  9. If Dir(Apath & "櫃.csv") <> "" Then Kill Apath & "櫃.csv"
複製代碼

TOP

回復 24# GBKEE
回復 21# c_c_lai

謝謝兩位大大指導
我會努力消化
~感恩~^__^~

TOP

回復 24# GBKEE
回復 25# HSIEN6001
原來它是使用 Kill 方法。
  1. ' 指定目錄內如果該檔案已經存在,則將之予以刪除。
  2. If Dir(Apath & "市.csv") <> "" Then Kill Apath & "市.csv"         
  3. .SaveToFile (Apath & "市.csv")

  4. ' 指定目錄內如果該檔案已經存在,則將之予以刪除。
  5. If Dir(Apath & "櫃.csv") <> "" Then Kill Apath & "櫃.csv"         
  6. .SaveToFile (Apath & "櫃.csv")
複製代碼
又學到了, 謝謝!

TOP

回復 25# HSIEN6001
我會努力消化
  1. Option Explicit
  2. Sub Ex_陣列() 'Split(字串,分割字元)(1)--->這個(1)是?意思
  3.     Dim A As String, W, xi As Integer, i As Integer
  4.     'A = "1ABCD2ABCD3ABCD4ABCD"
  5.     'W = Split(A, "B")
  6.     W = Array("A", "B", "C", "D")
  7.     For i = LBound(W) To UBound(W)
  8.         MsgBox "Array(""A"", ""B"", ""C"", ""D"")" & Chr(10) & "W(" & i & ")  -> " & W(i)
  9.     Next
  10. End Sub
複製代碼

TOP

回復 27# GBKEE


答案是--->第(1)個分割,對了嗎?!

很多語法都是先套用,對其理解度還不夠
新範例也很多還很陌生的,有助於我多瞭解意義
謝謝大大~^_^~

LBound(W) --->最小之長整數  'http://www.w3school.com.cn/vbscript/func_lbound.asp
UBound(W)--->最大之長整數 'http://msdn.microsoft.com/zh-cn/library/95b8f22f(v=vs.80).aspx

Chr(13) 歸位;回車 Chr(10) 換行 Chr(9) TAB键的空格 Chr(32) 空格 Chr(34)  " chr(0)则是系统控制符,表示空,也就是Null
Chr(255) 特殊空格 範例'http://www.aspxhome.com/asp/startasp/20097/82213.htm
ASCII碼 對照表 'http://big5.webasp.net/article/15/14718.htm

真的!!!!!!我有認真再消化 O_Q

TOP

回復 28# HSIEN6001
第(索引值)個分割   
LBound(W) ---> LBound 函数可以找到数组某一维的下限索引值。
UBound(W)---> UBound 函数可以找到数组某一维的上限索引值
  1. Option Explicit
  2. Sub Ex()
  3.     Dim A(4 To 7), x As Integer
  4.     For x = LBound(A) To UBound(A)
  5.         A(x) = String(x, "A")
  6.     Next
  7.     MsgBox "LBound(A) =>下限索引值" & LBound(A) & Chr(10) & _
  8.     "UBound(A) =>上限索引值" & UBound(A) & Chr(10) & Join(A, "---")
  9. End Sub
複製代碼

TOP

回復 26# c_c_lai

這樣也可行
On Error Resume Next
Kill Apath & "櫃.csv"
.SaveToFile (Apath & "櫃.csv")

TOP

        靜思自在 : 成功是優點的發揮,失敗是缺點的累積。
返回列表 上一主題