Board logo

標題: [發問] 增加將當期開獎號碼標示底色的語法。 [打印本頁]

作者: ziv976688    時間: 2019-5-31 10:38     標題: 增加將當期開獎號碼標示底色的語法。

[attach]30740[/attach]       [attach]30741[/attach]     [attach]30742[/attach]
當資料夾內的檔案名稱日期=DATA!A欄日期時,則將該檔案內工作表的B$1︰AX$1有出現= DATA!D︰J的數字標示底色︰
= D︰I 標示6號底色; = J標示38號底色。
如果檔案名稱日期=DATA!A欄日期,但DATA!當期的D︰J為空白時,則該檔案內工作表的B$1︰AX$1不標示底色。

請問︰VBA語法要如何增寫?
謝謝幫忙!

備註︰
主程式檔是我節錄本論壇內各位大大的語法,敬請包涵。

[attach]30739[/attach]
作者: ziv976688    時間: 2019-5-31 17:24

回復 1# ziv976688
[attach]30748[/attach]
有節錄准提版主的程式碼,並將其放置 :
在列6~列8插入
Dim T$, V%
Dim BK As Workbook, xB As Workbook, xS As Worksheet, xF As Range
Set BK = ThisWorkbook

在列29~列40插入
    '-抓日期,號碼填黃色---------------------------------
         Set xF = Nothing
    T = Format(Left(Right(A, 15), 10), "yyyy/m/d") & ChrW(160) '搜尋檔案日期
    Set xF = BK.Sheets("DATA").Range("A:A").Find(T, Lookat:=xlPart) '搜尋=A欄日期
    If Not xF Is Nothing Then
       For V = 4 To 10
        If xF(1, V) <> "" Then
           xS.[B1:AX1].Find(xF(1, V), Lookat:=xlWhole).Interior.ColorIndex = IIf(V = 10, 38, 6) '顯示=A欄日期+1列的號碼
           xB.Sheets(1).[B1:AX1].Find(xF(1, V), Lookat:=xlWhole).Interior.ColorIndex = IIf(V = 10, 38, 6)
        End If
       Next V
    End If

但執行 後產生偵錯,不知哪裡不對?
請各位大大指正!
謝謝各位的幫忙!
作者: 准提部林    時間: 2019-6-3 13:32

回復 2# ziv976688


程式包含其它功能, 沒辦法單獨去寫這個部份~~
_還要去解讀前面及後面的程式, 更沒辦法測試
作者: ziv976688    時間: 2019-6-3 17:43

回復 3# 准提部林
准提版主 :
重新提供範例  :   [attach]30765[/attach]
列5~列7和列28~列38 已經點為註解不執行。
誠請幫忙和指導!謝謝你!
作者: 准提部林    時間: 2019-6-4 14:59

本帖最後由 准提部林 於 2019-6-4 15:02 編輯

1) 將CSV檔統一放在 [CSV原檔]資料夾內, 程式完成不會刪除原檔(可自行手動刪)
2) 做一個樣式表 Tmp(1), 所有需要的格式在這張表預先設定, csv檔就用這表表來複製格式
3) 所有要處理的流程, 用子程式呼叫, 免去冗長的程式碼, 較好閱讀, 也可讓其它需要的程式引用
4) 我只能幫到這裡, 眼睛太吃力了

[attach]30774[/attach]
=========================
作者: ziv976688    時間: 2019-6-4 19:58

回復 5# 准提部林

准提版主 :
謝謝你的幫忙
作者: ziv976688    時間: 2019-6-5 12:58

回復 5# 准提部林
[attach]30777[/attach]
准提版主 :
不好意思,因為5樓的解答檔,csv檔轉xls檔要用手動(每期的csv檔有很多個),有點不便利(如果我沒有誤解操作程序的話),而且太高深的程式碼我自己不會改,
所以如果可以的話,希望你只要修改列5~列7和列28~列38 (已經點為註解不執行的程式碼),讓它能執行標示底色的功能就可以了。
謝謝你!
作者: 准提部林    時間: 2019-6-5 14:27

回復 7# ziv976688


1) 將CSV檔統一放在 [CSV原檔]資料夾內, 程式完成不會刪除原檔(可自行手動刪)

將舊的csv刪掉, 將新的csv放進來,
程式是自動轉成xls
作者: ziv976688    時間: 2019-6-5 16:47

回復 8# 准提部林
准提版主 :
不好意思,原來資料夾的名稱要命名[CSV原檔]才可執行。
5樓的解答檔執行沒有問題了!謝謝您^^

如果可以的話,還是請你以7樓的範例修改列5~列7和列28~列38,使其能執行,
這樣萬一以後有什麼小變動,我也比較會自行修改。
因為如果以後有其它的小變動,以5樓的解答檔我既不會自己修改,也不好意思再說出口請您修改^^"
謝謝您!
作者: ziv976688    時間: 2019-6-7 04:38

本帖最後由 ziv976688 於 2019-6-7 04:43 編輯

回復 8# 准提部林
准提版主 :
以7樓的範例修改列5~列7和列28~列38的問題已完全解決。
謝謝你的幫忙




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