作者Ibrahimovic (伊布)
看板Office
標題[算表] VBA裡的日期變數初始值設定問題
時間Thu Sep 6 01:09:24 2018
軟體: Office Excel
版本: 2016
原本目的:
因為經常把不同的 2 份或 n 份資料 (日期、數據)
放置在一起後做成圖表的習慣
但是n份資料的日期時間範圍每次都不一樣
手動修成一致雖然不難但是經常做就覺得好花時間
所以想做一個增益集
功能是遇到每次丟入 n 份不同日期範圍的資料
整合成只留下日期一致有重複到的
沒重複到的就刪除
遇到問題:
先上圖
https://i.imgur.com/Bl7Vw4w.jpg
這張圖的進度是
比較 n 份資料,並從中取出最舊日期及最新日期之儲存格的 row
因為在比較時,想說設個變數(v_Date) 做為初始被比較的值
只是納悶的是
在抓最舊日期跟最新日期裡,v_Date的初始值設成一樣的話,就會失敗
經幾番測試後
抓最舊日期設定成 v_Date = ""
抓最新日期設定成 v_Date2 = 1990 / 1 / 1
code設定成上面那樣就可以達到目的了
只是有點不太了解原因
請問有好心的大大能否指點一二?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.254.41.227
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1536167367.A.F85.html
※ Ibrahimovic:轉錄至看板 Visual_Basic 09/06 01:10
1F:→ soyoso: 因為v_sth帶入日期,如v_date不設為""(文字)的話 09/06 08:09
2F:→ soyoso: 判斷時會是日期序列值<0,為假,因此無法執行為真所寫動作 09/06 08:10
3F:→ soyoso: v_date設為文字的話,因數值會小於文字,為真,則可執行 09/06 08:10
4F:→ soyoso: 另一個設為1990/1/1會回傳1990(1990除1除1) 09/06 08:10
5F:→ soyoso: 判斷時會是日期序列值>1990,為真,可執行 09/06 08:10
6F:→ soyoso: 如不設,日期序列值>0,為真,應也可執行 09/06 08:10
感謝教導
※ 編輯: Ibrahimovic (111.254.41.227), 09/06/2018 09:09:23