- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
回復 4# fancky
將兩個按鈕的程式碼co出來~ 你自己再重建一下~ 應該就了解了~- Private Sub CommandButton1_Click() '每日資料更新
- If Sheet1.Range("F2") = "" Then '該週第一天開盤點 若開盤點已經有資料,就不會再帶其它日期的資料
- Sheet1.Range("F2") = Sheet1.Range("C8").End(xlDown)
- End If
- '該週最高點
- Sheet1.Range("F3") = Application.Max(Sheet1.Range("D9"), Sheet1.Range("D10"), Sheet1.Range("D11"), Sheet1.Range("D12"), Sheet1.Range("D13"))
- '該週最低點
- Sheet1.Range("F4") = Application.Min(Sheet1.Range("E9"), Sheet1.Range("E10"), Sheet1.Range("E11"), Sheet1.Range("E12"), Sheet1.Range("E13"))
- '該週每日收盤價
- Sheet1.Range("F5") = Sheet1.Range("F65536").End(xlUp)
- End Sub
複製代碼- Private Sub CommandButton2_Click() '匯出資料
- A = VBA.Weekday(Date, vbMonday)
- If A = 1 And IsError(Application.VLookup(Sheet1.Range("B9"), Sheet1.Range("J9:J65536"), 1, False)) Then
- For I = 9 To 13 '將上週資料匯到歷史股價區
- '若該日是未開市,請不要填寫資料,會自行判斷將該天資料剔除
- If Sheet1.Range("C" & I) = "" Or Sheet1.Range("D" & I) = "" Or Sheet1.Range("E" & I) = "" Or Sheet1.Range("F" & I) = "" Then
- Else
- Sheet1.Range("J65536").End(xlUp).Offset(1, 0) = Sheet1.Range("B" & I)
- Sheet1.Range("K65536").End(xlUp).Offset(1, 0) = Sheet1.Range("C" & I)
- Sheet1.Range("L65536").End(xlUp).Offset(1, 0) = Sheet1.Range("D" & I)
- Sheet1.Range("M65536").End(xlUp).Offset(1, 0) = Sheet1.Range("E" & I)
- Sheet1.Range("N65536").End(xlUp).Offset(1, 0) = Sheet1.Range("F" & I)
- Sheet1.Range("O65536").End(xlUp).Offset(1, 0) = Sheet1.Range("G" & I)
- Sheet1.Range("P65536").End(xlUp).Offset(1, 0) = Sheet1.Range("H" & I)
- End If
- Next
- Sheet1.Range("F2:F5").ClearContents '清除開盤價/最高點/最低點/收盤價
- Sheet1.Range("B9:H13").ClearContents '清除上一週的股價資料
- For I = 0 To 4 '設定本週一~五的日期
- Sheet1.Range("B65536").End(xlUp).Offset(1, 0) = VBA.Date + I
- Next
- Else
- MsgBox "該週資料已經匯出"
- End If
- End Sub
複製代碼 |
|