Board logo

標題: excel 輸入公式太長 [打印本頁]

作者: bongbong3481    時間: 2016-1-18 19:26     標題: excel 輸入公式太長

發覺系excel 格仔入邊輸入條公式太長,密密麻麻,如果要做修改或調整,真是頭都大,沒辦法
作者: mdws2002    時間: 2016-1-19 11:34

發覺系excel 格仔入邊輸入條公式太長,密密麻麻,如果要做修改或調整,真是頭都大,沒辦法 ...
bongbong3481 發表於 2016-1-18 19:26


其實,如果知道要修改邊部分嘅,應該唔會太麻煩。

不過,我自己嘅習慣性就係將成條式Copy出嚟,貼嚟Notepad上,然後用Replace嘅功能,一次過將相同嘅項目改晒佢。
作者: bongbong3481    時間: 2016-1-19 20:13

回覆 2# mdws2002


我諗左個方法, 就系好似寫PROGRAM 咁, 用"("  同埋   ")"分段, 咁樣易明少少

=
IFERROR(

IF(MID(X3,SEARCH("Time:",X3)+16,1)=":",
       IF(
          (IF(
               ((MID(M3,9,2)*86400-MID(K3,9,2)*86400)+(MID(M3,12,2)*3600-MID(K3,12,2)*3600)+(MID(M3,15,2)*60-MID(K3,15,2)*60)+(MID(M3,18,2)-MID(K3,18,2)))
            <=360,1,0
               )
+
       IF(MID(X3,SEARCH("Time:",X3)+16,1)=":",
           IF(
              (MID(X3,SEARCH("Time:",X3)+11,2)*86400-MID(K3,9,2)*86400+MID(X3,SEARCH("Time:",X3)+14,2)*3600-MID(K3,12,2)*3600+MID(X3,SEARCH("Time:",X3)+17,2)*60-MID(K3,15,2)*60)
<=360,1,0
              ),
          0)
          )>0,1,0
          ),
"time no :"
   ),

IF(
((MID(M3,9,2)*86400-MID(K3,9,2)*86400)+(MID(M3,12,2)*3600-MID(K3,12,2)*3600)+
(MID(M3,15,2)*60-MID(K3,15,2)*60)+(MID(M3,18,2)-MID(K3,18,2)))
<=360,1,0
)

)
作者: mdws2002    時間: 2016-1-19 23:52

回覆  mdws2002


我諗左個方法, 就系好似寫PROGRAM 咁, 用"("  同埋   ")"分段, 咁樣易明少少

=
IFER ...
bongbong3481 發表於 2016-1-19 20:13


咁多空白,會唔會執行唔到?
其實如果真係太過複雜,會唔會研究下行巨集更佳?
始終太過複雜嘅公式係Excel入面執行起嚟會比較慢……
作者: ed1    時間: 2016-1-20 00:32

本帖最後由 ed1 於 2016-1-20 01:01 編輯

回覆 3# bongbong3481


    把頭尾這段重覆的做“定義名稱”就可簡化一些
=IF(((MID(M3,9,2)*86400-MID(K3,9,2)*86400)+(MID(M3,12,2)*3600-MID(K3,12,2)*3600)+(MID(M3,15,2)*60-MID(K3,15,2)*60)+(MID(M3,18,2)-MID(K3,18,2)))<=360,1,0)
作者: bongbong3481    時間: 2016-1-20 08:18     標題: 標題

回覆 4# mdws2002


執行到的,因為果條公式每日都要copy 去吾同file, 果個file 由program每日生成,吾知巨集可吾可以連公式貼上(其實我吾識用巨集)
作者: mdws2002    時間: 2016-1-20 08:21

回覆  mdws2002


執行到的,因為果條公式每日都要copy 去吾同file, 果個file 由program每日生成,吾知巨 ...
bongbong3481 發表於 2016-1-20 08:18


其實如果係咁樣。我會分開兩個File處理。
連Copy都懶得去Copy。
作者: bongbong3481    時間: 2016-3-4 19:51     標題: 標題

回覆 7# mdws2002

我後期改用vbs ,  成條式易理解好多
作者: seasky    時間: 2016-4-2 17:29

提示: 作者被禁止或刪除 內容自動屏蔽
作者: bongbong3481    時間: 2016-4-3 12:24

回覆 9# seasky

要LINK 去個FILE 未必得 ,一來因為每日GENERATE既FILE 入邊既DATA ,每日既數量都唔同, 二來果個FILE既FILE NAME 每日以當日日期命名
作者: seasky    時間: 2016-4-5 02:19

提示: 作者被禁止或刪除 內容自動屏蔽
作者: bongbong3481    時間: 2016-4-5 19:24     標題: 標題

回覆 11# seasky

我既case唔太複雜,每日將條公式copy 去每日generate 出黎的file 入邊h col,  然後用mouse由頂拉去底,  但最後改用vbs ,  由於可能性太多,條公式長到幾乎不可讀。
作者: seasky    時間: 2016-4-6 08:57

提示: 作者被禁止或刪除 內容自動屏蔽
作者: bongbong3481    時間: 2016-4-6 18:54     標題: 標題

回覆 13# seasky

自從學識用vbs 後,好多重複性excel 野都改用vbs 做,   慳左吾小時間同功夫
作者: seasky    時間: 2016-4-7 08:44

提示: 作者被禁止或刪除 內容自動屏蔽
作者: virtual88    時間: 2016-4-7 15:03

你條formula複雜既原因, 主要係你用string function去做date/time comparison, 如果可以先用多3個column將column K, M同X入面既date/time用MID抽出黎轉做date/time format, 之後直接相減去比較, 自然容易理解同修改, 缺點係每日抄formula要抄多幾個columns
作者: bongbong3481    時間: 2016-4-8 18:34     標題: 標題

回覆 15# seasky

我公司d 機大部份都run 到vbs,  不過要email比人就煩小小,要改成txt檔先得
作者: bongbong3481    時間: 2016-4-8 18:37     標題: 標題

回覆 16# virtual88

我當時都有考慮過呢個方法,但因為個file 做完野後,會比另一個program 讀入,吾知加左col 會吾會有影響,所以沒咁做到
作者: seasky    時間: 2016-4-11 11:57

提示: 作者被禁止或刪除 內容自動屏蔽
作者: bongbong3481    時間: 2016-4-11 22:54

回覆 19# seasky

xlsm我就暫時沒咩研究, 反而xlsx比較有興趣, 因為xls 可以放既 DATA 太少了, 多少少都唔得
作者: 200644600    時間: 2016-4-14 17:25

用vba唔係好容易做到咩??
作者: simontang    時間: 2016-4-14 19:30

用vba唔係好容易做到咩??
200644600 發表於 2016-4-14 17:25


macro/vbs
我想: 除制作者本人, 別個用家未必想開啟檔案吧......
作者: svil    時間: 2016-4-19 12:01

將formula 分開兩個cell計





歡迎光臨 電腦領域 HKEPC Hardware (https://h0.hkepc.com/forum/) Powered by Discuz! 7.2