返回列表 上一主題 發帖

[發問] 公式程式碼化

回復 16# ziv976688


   是儲存格裡面的數字喔~~Num只是個變數名稱而已
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

本帖最後由 ziv976688 於 2021-7-25 22:22 編輯

回復 20# singo1232001
謝謝S大您的詳細說明~
我研讀後~有問題再向您請教。
謝謝您

TOP

回復 21# n7822123
謝謝n大您的回覆~瞭解了

TOP

回復 17# ziv976688

我執行是還好4.5秒完成,當然改為陣列

準7進8 的 V2:AB2 資料有誤,你修改後在執行看看
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 17# ziv976688

問題1:DATA!VB 下列放置位置應該在 迴圈之外
    For s = 1 To 6   '6個工作表
        Shrr = Array("準2進3", "準3進4", "準4進5", "準5進6", "準6進7", "準7進8")
.
.
    NEXT
            'Call 參數登錄
            Call 餘數登錄
            Call 餘數各取1
            Call 標示底色

    問題2: "準7進8" 做出來的資料有誤,你再查看看
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 25# ML089
我還沒有注意到準7進8 的 V2:AB2 資料有誤
改為陣列.....修改後在執行看看~
4樓的貴解沒有看到修改的地方
請教您 : 應該怎麼改?
謝謝您
PS : 不是我的電腦有問題就OK了~幾秒都沒有關係

DATA!VB 下列放置位置應該在 迴圈之外
那版面的設定不就失效了

我自己先研習一下
不好意思事事麻煩您。
明天再說!
晚安!

TOP

回復 26# ziv976688

版面的設定,應該是放到最後面,順序如下

資料
計算
排版
列印
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 13# n7822123
標示底色_n7822123.rar (101.78 KB)
不好意思,可否請您幫我看一下~
只執行"標示底色"很OK(不到2秒)
但如果再加上"餘數登錄"~ 測試N次,卻都要跑30秒上下~
為什麼會跑的這麼異常的慢 ?
是2003版本的關係嗎?
能改善嗎?
謝謝您

TOP

本帖最後由 ziv976688 於 2021-7-26 14:26 編輯

回復 27# ML089
標示底色_ML089_C1.rar (107.42 KB)
花了半天~將您所賜教的解答檔,全部檢測完畢~
報告如下:
1_您的個別解答檔 => 全部OK

2_以最後完成的檔案(標示底色_ML089_C1)測試~
Call 參數登錄Call 餘數登錄 => 執行
'Call 餘數各取1 => 不執行 => 產生A2=""時,也會標示藍底色(只有"準2進3"正常)

3_以最後完成的檔案(標示底色_ML089_C1)測試~
Call 參數登錄Call 餘數登錄Call 餘數各取1 => 全部執行
"準5進6"的標題列會移到第4列 =>請先將DATA!VB的列59改為執行狀態,
然後按執行鍵~測試結果。
如果要重新測試~請按清除鍵即可。

4_執行模組程式碼應放置在DATA!VB~
For s = 1 To 6   '6個工作表

NEXT
            Call 參數登錄
            Call 餘數登錄
            Call 餘數各取1
            Call 標示底色
我還想不出怎麼解決版面設定失效的問題

以上   懇請您賜教是幸!  謝謝您

TOP

Sub 餘數登錄()
Dim xS As Worksheet, R&, Arr, Brr, A
For Each xS In Sheets(Array("準2進3", "準3進4", "準4進5", "準5進6", "準6進7", "準7進8"))
    R = xS.[b65536].End(xlUp).Row - 1
    Arr = xS.[m2:ab2].Resize(R)
    ReDim Brr(1 To R, 1 To 7)
    For i = 1 To R
    For j = 1 To 7
        For Each A In Split(Arr(i, j + 9), ",")
            Brr(i, j) = Brr(i, j) & "," & Format((Arr(i, j) + Val(A)) Mod 49, "00;;49")
        Next A
        Brr(i, j) = Mid(Brr(i, j), 2)
    Next j
    Next i
    xS.[d2].Resize(R, 7) = Brr
Next xS
End Sub

TOP

        靜思自在 : 【時間成就一切】時間可以造就人格,可以成就事業,也可以儲積功德。
返回列表 上一主題