Board logo

標題: 關於連續執行 [打印本頁]

作者: vavashop    時間: 2016-4-30 21:36     標題: 關於連續執行

請問各位大大
如果我在a1~a10都有資料
然後想讓某一個巨集去跑a1~a10
但是不是每次a10都是最後一筆
請問這樣該怎麼寫vba呢

感謝你的指點
作者: luhpro    時間: 2016-5-1 06:21

回復 1# vavashop

Dim lRow&
  lRow = 1
  While Cells(lRow, 1) <> ""

    ' 需要逐格處理的程序放在這裡

    lRow=lRow+1
  Wend
作者: 准提部林    時間: 2016-5-1 10:29

方法一:
Dim R&
R = Cells(Rows.Count, 1).End(xlUp).Row '取得a欄最後一筆資料〔列號〕
For i = 1 To R
  處理程序
Next

方法二:
Dim xR As Range
For Each xR In Range([A1], Cells(Rows.Count, 1).End(xlUp))
  處理程序
Next

_Cells(Rows.Count, 1).End(xlUp) > 取得a欄最後一筆資料〔儲存格〕 
 
 
作者: vavashop    時間: 2016-5-3 16:23

回復 3# 准提部林



大大可以請求協助一下這網站
http://www.twse.com.tw/ch/trading/fund/T86/T86.php

我原本的vba
可以抓取現在卻變成不行了

Sub 更新上市三大法人1_1()
'
' 巨集1 巨集
' 點選上市分頁 再到清除上市融資 再回到 上市複製日期 貼回上市融資 -->執行檔案下載
'

'
    Dim xDate As Date, genpage As String, qdate As String, Print_php As String, Wb As Workbook
   
    '1 如不可查詢當日 三大法人買賣超日報
    xDate = Date - 0  '0改為1變成 前一天
   
   
    Do While Weekday(xDate, vbMonday) >= 6
        xDate = xDate - 0  '0改為1變成 前一天
   
    Loop
   
    '如於一定的時間後可查詢當日的 三大法人買賣超日報
    '請刪除 ** xDate = Date - 1 **
   
   
    '2 執行下面的程式碼,取消註解 ** ' **
   
    'If xDate = Date And Time < #5:00:00 PM# Then
    '    xDate = xDate - 1
    'End If
   
    For Each Wb In Workbooks
        If Trim(Wb.Name) = "print.php" Then Wb.Close False
        '下載CSV 的名稱為 Print_php 必先關閉
    Next
    genpage = Format(xDate, "yyyymm/yyyymmdd")
    qdate = Format(xDate, "yyyymmdd")
    Print_php = "http://www.twse.com.tw/ch/trading/fund/T86/print.php?edition=ch&filename=genpage/" _
             & genpage & "_2by_issue.dat&type=csv&select2=ALLBUT0999&qdate=" & qdate

     Set Wb = Workbooks.Open(Print_php)
     

  
     
  
     
End Sub
作者: vavashop    時間: 2016-5-3 17:03

感謝兩位大大
a1~a10的問題解決了




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