2021年8月12日 星期四

2021年8月7日 星期六

VBA:刪除工作頁內不要的工作表(關鍵字檢查)

刪除工作頁內不要的工作表

INSTR傳回某個字串在另一個字串內第一個出現的位置

執行刪除都會跳出警告對話框,所以要關掉:Application.DisplayAlerts = False

透過工作頁頁數來逐頁檢查,其實也可以用FOR EACH拉,

都好方法很多,問題僅有一個,哈。

EX1:

透過工作表名稱來檢查,以INSTR與自己設定的關鍵字檢查後,當出現就執行刪除

 SUB SHEET_CHECK_DELETE()

CHECK = "P" & "S" & "10" '自己設定的關鍵字檢查

    For P = Sheets.Count To 1 Step -1

        If InStr(CHECK, Sheets(P).Name) > 0 Then

        Application.DisplayAlerts = False '關閉警告

           Sheets(P).Delete '刪除        

        Application.DisplayAlerts = True '開啟警告

        End If

   Next

END SUB


刪除工作頁內不要的工作表動態版

EX2: 動態關鍵字版

 SUB SHEET_CHECK_DELETE(CHECK AS STRING)

    For P = Sheets.Count To 1 Step -1

        If InStr(CHECK, Sheets(P).Name) > 0 Then

                Application.DisplayAlerts = False '關閉警告

                Sheets(P).Delete '刪除

                Application.DisplayAlerts = True '開啟警告

        End If

   Next

END SUB

感謝M01 snare 大大救了頭暈的我

VBA:刪除檔案 KILL v.s filesystemobject

基本上先來 MSDN 一下

MSDN看無不打緊

沒關係,基本上概念就是路徑+指令;也就是跟KILL這個指令說,請刪除位於某資料夾的XX檔案。

但如果很多同質性檔案要刪除怎辦?

例如:刪除c:\test 資料夾內的純文字檔案;可以用kill c:\test\*.txt

或是類似檔案名稱:

例如:刪除c:\test 資料夾內的1開頭純文字檔案;可以用kill c:\test\1*.txt

p.s *是萬國碼

如果實在要刪除的檔案太多,真誠建議組合filesystemobject.SubFolders 做使用,針對資料夾內子資料們做大檢查,然後刪除特定條件檔案即可。

p.s特定條件指自己設定的檔案名稱條件。

引用MSDN例子修改一下做應用

Sub ShowFolderList(folderspec,sub_name)

    Dim fs, f, f1, s, sf

    Set fs = CreateObject("Scripting.FileSystemObject")

    Set f = fs.GetFolder(folderspec)

    Set sf = f.SubFolders

    For Each f1 In sf

                 ShowFolderList f1,sub_name

       Next

        Set s = f.Files

            For Each f1 In s

                If InStr(f1.Name, sub_name) > 0 Then

                        fs.DeleteFile folderspec & "\" & f1.Name

                End If

        Next

End Sub

做一個按鈕,插入以下vba

Private Sub CommandButton1_Click()

  Call ShowFolderList("D:\新增資料夾", ".txt") 

'小編是用D:\新增資料夾做測試歐,這裡要自己設定,跟設定副檔名

End Sub

Sub ShowFolderList(folderspec, sub_name) '路徑與副檔名設定

    Dim fs, f, f1, s, sf

    Set fs = CreateObject("Scripting.FileSystemObject")

    Set f = fs.GetFolder(folderspec)

    Set sf = f.SubFolders

    For Each f1 In sf

                 ShowFolderList f1, sub_name

    Next

    Set s = f.Files

            For Each f1 In s

                If InStr(f1.Name, sub_name) > 0 Then

                        fs.DeleteFile folderspec & "\" & f1.Name

                 End If    

    Next

End Sub

有機會再發發FileSystemObject的應用好了



2021年8月6日 星期五

股票:8021尖點 集保庫存+110.Q2報+110.07營收

以下內容為自己隨手整理,不作為投資理財參考歐。


圖1.集保走勢變化股價與持有變化圖

說明:低於一張持股的散戶在這波高點,股數變化走低;最近一周低於50張持股的變化都是向上的,千張大戶也是增持2周。


圖2.股價走勢
本來是想貼貼集保即可,但以下資料不貼不過癮。

圖3.大股東董事持股明細

圖4.信用交易
說明:感覺近9個交易日信用交易走低。

圖5.110.Q2財報公布。
財報公布搂,引用新聞說法,不做多解釋。

圖6.財報變化(小編自己黃金右手整理的,懇求別偷圖)

圖7.營收年增率與累積年增率變化

圖8.營收數字



股價接下來會怎走??小編也不知道,就讓我們看下去吧。




股票:集保庫存人數增減(8/7)

之前有整理了,持續整理當分享,沒特別用途,有用到資訊的人可以參考歐,但投資理財自負盈虧,不負任何責任。
















股票:110半年報,財報公佈公司表現(更新到8.10)+110.07營收年增率比較

主要比較是比較同期EPS表現,表現好反黃顯示 ,簡單整理不作為股票投資依據歐

營收顯示n/a表示還沒公佈。

營收主要呈現:營收年增率與累積營收年增率。

目前累積有1429家持續更新,更新到8/15為止


圖1.營收有註解



圖2.反黃表示有進步

圖3.比較說明



下載

2021年8月4日 星期三

VBA:用記事本開啟純文字檔案(TXT檔案)

 之前的案例都是以excel vba讀取或是寫入資料到txt檔中,但如果執行完VBA,希望可以透過其他程式開啟檔案該怎做?

最簡單概念:SHELL

Sub OpenTextbyshell(sFileName)

   Dim A As Object

   Set A = CreateObject("Shell.Application")

   open_file = sFileName

   A.Open (open_file)

End Sub

sFileName 為資料路徑。

透過物件宣告,做檔案開啟

石化上游週收盤價 vs Brent 油價(近三年)+台達化 +特定事件標籤

石化業週走勢 vs Brent 油價(近三年)VS特定事件標籤 riverfootmark 石化上游週收盤價 vs Brent 油價(近三年)+台達化 +特定事件標籤 對齊方式:以各股每週最後交易日之收盤價日期為基準,Brent 取同一天收盤價。資料期間 2007/07/30 ...