|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
- 엑셀 버전(95,97,2000,xp,2003,2007):
* 아래줄에 질문을 작성하세요 >> 엑셀 2007 버전
안녕하세요 문의드릴게 있어서요
Option Explicit
Sub samename_sum()
Dim rngc As Range
Dim rngall As Range
Dim rngtarget As Range
Dim cnt, i As Double
Dim sum_cnt As Double
Application.ScreenUpdating = False
Set rngtarget = Range([a2:c2], Cells(Rows.Count, "c").End(3))
For Each rngc In rngtarget
rngc.Offset(0, 7).Value = rngc.Value
Next rngc
Set rngall = Range("h2:j2", Cells(Rows.Count, "j").End(3))
Cells(1, "j").Value = "ingredient"
For Each rngc In rngall
cnt = Application.CountIf(rngall, rngc)
If cnt > 1 Then
rngc.Resize(, 1).Clear
End If
Next rngc
With Range([j2], Cells(Rows.Count, "j").End(3))
.Sort key1:=Range("j2"), order1:=xlAscending
End With
sum_cnt = 0
Columns("k:k").EntireColumn.ClearContents
Cells(1, "k").Value = "총사용량"
For Each rngc In rngall
For i = 2 To Cells(Rows.Count, "c").End(3).Row
If rngc.Value = Cells(i, "c").Value Then
sum_cnt = sum_cnt + Cells(i, "f").Value
rngc.Offset(0, 1).Value = sum_cnt
rngc.Offset(0, 1).NumberFormat = "0.00000000"
End If
Next i
sum_cnt = 0
Next rngc
Set rngall = Nothing
Set rngtarget = Nothing
MsgBox "working complete"
End Sub
현재 이런 수식을 완성했습니다.
현재 c열이 중복처리 후 우측에 j열에 함량계산으로 식이 나오게 했습니다
그런데 실무자가 a열과 b열의 정렬된 c열의 동일행값이
우측에도 중복처리후 동일하게 나와줘야 한다고 합니다.
값이 동일하게 나오려면 어떻게 수정을 해야하나요?
현재 c값이 j열에 나타나지는것은 중복제거후 오름차순 정렬까진 되는데 ab의 데이터값이 c값을 따라가주지 못합니다.
알려주세요 감사합니다. |
|