ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] ¦bvba userform ³]3­Ó combox3 ¦p¦ó3¼h¿z¿ï

userform¤¤¡G
  1. Private Sub ComboBox1_Change()
  2. With ComboBox2
  3. If InStr(d(ComboBox1.Value), ",") = 0 Then
  4. .Clear
  5.         .AddItem d(ComboBox1.Value)
  6.         Else
  7. .List = Split(d(ComboBox1.Value), ",")
  8. End If
  9. End With
  10. End Sub

  11.          
  12. Private Sub ComboBox2_Change()
  13. With ComboBox3
  14. If InStr(d2(ComboBox1.Value & ComboBox2.Value), ",") = 0 Then
  15. .Clear
  16.         .AddItem d2(ComboBox1.Value & ComboBox2.Value)
  17.         Else
  18. .List = Split(d2(ComboBox1.Value & ComboBox2.Value), ",")
  19. End If
  20. End With

  21. End Sub

  22. Private Sub ComboBox3_Change()
  23. With Sheet1
  24. rng = .UsedRange
  25. For i = 2 To UBound(rng)
  26. If rng(i, 1) & rng(i, 2) & rng(i, 3) = ComboBox1.Value & ComboBox2.Value & ComboBox3.Value Then
  27. x = x + rng(i, 4)
  28. End If
  29. Next
  30. TextBox1.Value = x
  31. End With
  32. End Sub

  33. Private Sub UserForm_Initialize()
  34. Set d = CreateObject("Scripting.Dictionary")
  35. Set d2 = CreateObject("Scripting.Dictionary")
  36. With Sheet1
  37. rng = .UsedRange
  38. For i = 2 To UBound(rng)
  39. If d(rng(i, 1)) = "" Then
  40. d(rng(i, 1)) = rng(i, 2)
  41. Else
  42. If InStr(d(rng(i, 1)), rng(i, 2)) = 0 Then
  43. d(rng(i, 1)) = d(rng(i, 1)) & "," & rng(i, 2)
  44. End If
  45. End If
  46. If d2(rng(i, 1) & rng(i, 2)) = "" Then
  47. d2(rng(i, 1) & rng(i, 2)) = rng(i, 3)
  48. Else
  49. If InStr(d2(rng(i, 1) & rng(i, 2)), rng(i, 3)) = 0 Then
  50. d2(rng(i, 1) & rng(i, 2)) = d2(rng(i, 1) & rng(i, 2)) & "," & rng(i, 3)
  51. End If
  52. End If
  53. Next
  54. ComboBox1.List = d.keys
  55. End With
  56. End Sub
½Æ»s¥N½X
Module¤¤
  1. Public d As Object
  2. Public d2 As Object
½Æ»s¥N½X

TOP

        ÀR«ä¦Û¦b : ¤@¥y·Å·xªº¸Ü¡A´N¹³©¹§O¤H¨­¤WÅx­»¤ô¡A¦Û¤v·|ªg¨ì¨â¤Tºw¡C
ªð¦^¦Cªí ¤W¤@¥DÃD