返回列表 上一主題 發帖

[發問] 取出包材"+"or"-"號之後的數值

回復 10# PJChen

不過我並不要這個原程式操作,希望有人可以幫忙看看,卡了很多天了....
    包材報表_取出最後一個正負號的值.rar (47.94 KB)

TOP

回復 11# PJChen

有空幫我試試看 是不是你要的

包材報表_取出最後一個正負號的值0409.rar (56.12 KB)

TOP

回復 12# 軒云熊
謝謝熊大,
稍微修改後,截取資料正確,請問:
1) 我不想關閉來源檔Workbooks("包材報表.xlsx").Close False,但會無法執行,且每執行一次就增加二欄,原因是什麼?
2) 是否因為這個For I = 1 To 2: Columns(4).Insert , 2: Next I,為什需要增加2欄呢?
3) 我沒看過這種寫法,範圍為何是倒著寫呢?Arr = Range("AK11:C2").FormulaR1C1Local
4) 能否幫忙註解程式的意思?
感激不盡....

Range("E16:AJ25").ClearContents
    Workbooks.Open ThisWorkbook.Path & "\" & "包材報表.xlsx"
    For I = 1 To 2: Columns(4).Insert , 2: Next I
    Arr = Range("AK11:C2").FormulaR1C1Local
    Workbooks("包材報表.xlsx").Close False
    Brr = Range("B16:AJ25")
   
    For X = 1 To UBound(Arr, 1)
        For Y = 1 To UBound(Brr, 1)
            If Trim(Arr(X, 1)) = Trim(Brr(Y, 1)) Then
                 For E = 1 To UBound(Arr, 2)
                    If Arr(X, E) Like "*-*" Then
                        G = Split(Arr(X, E), "-")(1)
                        Brr(Y, E) = "=-" & G
                    ElseIf Arr(X, E) Like "*+*" Then
                        G = Split(Arr(X, E), "+")(1)
                        Brr(Y, E) = "=+" & G
                    End If
                Next E
            End If
        Next Y
    Next X

      Range("B16:AJ25") = Brr

TOP

回復 13# PJChen
把Brr(Y, E) = "=-" & G
跟Brr(Y, E) = "=+" & G
改成Brr(Y, E+2) = "=-" & G
在把插入欄删除

TOP

本帖最後由 軒云熊 於 2021-4-10 21:00 編輯

回復 13# PJChen
這是參考 jcchiang 前輩的寫法所修改的  感謝 jcchiang 前輩的提點
已加入註解 有稍微修改過 有空再幫我試試看 感謝

包材報表_取出最後一個正負號的值0410.rar (40.7 KB)

TOP

回復 15# 軒云熊

現在可以正常截取資料了,感謝您....

TOP

回復 10# PJChen


  難道你沒有發現驗算檔案的日期已經是4月嗎
  而包材的日期還是3月,月份都不一樣了,如何相符?

TOP

回復 15# 軒云熊
熊大好,
程式在使用時,發現一個問題:
例如:包材報表的4/24封箱膠帶(條)的數量是4,
4/25有進貨,但當盤點時,已用掉2,我在4/25 key -2+50會等於48,但需要截取的數字是進貨量50,
像這種情形如何略過-2只抓50?
註:包材報表每個儲存格的數字,都只要抓最後一個+ or -的數字就好.
包材報表_取出最後一個正負號的值.rar (42.91 KB)

TOP

回復 15# 軒云熊
熊大好,
附件已將程式update    包材報表_取出最後一個正負號的值.rar (45.62 KB)
包材驗算報表每個儲存格都核對,發現有些值會抓錯,
1) 4/10[O17]=16000*2....抓到的資料6000*2
2) 4/30[AI25]...抓不到數值
再麻煩幫忙看下....感謝

TOP

        靜思自在 : 脾氣嘴巴不好,心地再好也不能算是好人。
返回列表 上一主題