返回列表 上一主題 發帖

[發問] 資料比對後填入相應資料以及公式

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

回復 1# agietron

請問 agietron 大大  這公式 是加總甚麼?
Sheets(Sh).Cells(VR, 10).Formula = "=sum(i" & VR & "*h" & VR & ")"
是不是 i欄 * H欄  ?
可否說明一下  感謝

TOP

本帖最後由 軒云熊 於 2021-4-5 23:09 編輯

回復 5# agietron

有空幫我試試看 是不是你要的 但我不確定是不是正確 因為我的結果跟你的結果不一樣  而且迴圈也比較多 看看有沒有大大願意幫忙
  1. Public Sub 跨工作表比對練習()
  2. Application.ScreenUpdating = False
  3. [A:K].ClearContents
  4. Set xD = CreateObject("Scripting.Dictionary")
  5. Brr = Range([工作表1!O65535].End(3), [工作表1!O1])
  6. For X = 1 To UBound(Brr, 1)
  7.     xD(Brr(X, 1)) = ""
  8. Next X
  9. DSC = InputBox("輸入折扣%", "折扣", "60")
  10. For E = 1 To Sheets.Count - 1
  11.     Arr = Sheets(E).UsedRange
  12.     For X = 2 To UBound(Arr, 1)
  13.         For Y = 1 To UBound(Arr, 2)
  14.             If Arr(X, 1) <> "" And Len(Arr(X, Y)) > 7 And xD.exists(Arr(X, Y)) Then
  15.                 With Sheets("工作表1")
  16.                     K = K + 1: N = ""
  17.                     Select Case Left(Arr(X, Y), 1)
  18.                         Case "C"
  19.                             G = "S220"
  20.                         Case "M"
  21.                             G = "M520"
  22.                         Case "M"
  23.                             G = "N620"
  24.                         Case "N"
  25.                             G = "S220焊接"
  26.                         Case "A"
  27.                             G = "HSS"
  28.                         Case "H"
  29.                             G = "HSS-Co"
  30.                         Case "S"
  31.                             G = "SKH"
  32.                     End Select
  33.                     xD.Remove (Arr(X, Y))
  34.                     For S = 1 To 6
  35.                         If Arr(2, S) <> "" Then N = N & Arr(2, S) & Arr(X, S) & " * "
  36.                     Next S
  37.                     Range("A" & K) = K
  38.                     Range("B" & K) = G
  39.                     Range("C" & K) = Arr(1, 1) & "-" & Sheets(E).Name & "-" & " " & "第" & X & "列" & Chr(10) & Mid(N, 1, Len(N) - 3)
  40.                     Range("I" & K) = WorksheetFunction.Round(((Arr(X, Y + 1) * DSC) / 100), -1)
  41.                     Range("J" & K).Formula = "=sum(i" & K & "*h" & K & ")"
  42.                     Range("K" & K) = Arr(X, Y)
  43.                 End With
  44.             End If
  45.         Next Y
  46.     Next X
  47. Next E
  48. Application.ScreenUpdating = True
  49. End Sub
複製代碼
0405.rar (141.9 KB)

TOP

        靜思自在 : 人生沒有所有權,只有生命的使用權。
返回列表 上一主題