|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
1. 엑셀 버전(95,97,2000,2002):
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP):
3. CPU (486,PentiumI/II/III/IV...):
4. RAM (32,64,128,256,512MB,1G...):
* 아래줄에 질문을 작성하세요 >>
첨부파일처럼 입.출고장에 기록된 품번이 여러번 반복이되는데 처음부터 마지막까지 기록한 품번에대한 수량에합을 내려면 어케해야하나요???(버튼을 누를때마다)
재고현황에 품번에대한 입고면 입고수량 전체 출고면 출고수량전체 현재고는 입출고를 뺀나머지?????
Sub 재고수불()
'
' 재고수불 Macro
' 이태영이(가) 2003-06-27에 기록한 매크로
Dim datarg, findchk
Sheets("입.출고").Select
'데이터가 몇개인지 파악
datarg1 = ActiveSheet.Range("b11").End(xlDown).Row
Sheets("재고현황").Select
datarg2 = ActiveSheet.Range("d8").End(xlDown).Row
'재고현황에 데이터가 몇개인지 파악
For i = 11 To datarg1
'입출고 데이터 개수 만큼 순환
cc = Sheets("입.출고").Cells(i, 2).Value
' 입출고 품번값을 가지고
Set findchk = Range(Cells(8, 4), Cells(datarg2, 4)).Find(what:=cc)
'재고현황에서 맞는 품번을 찿고
'--- 요부분은 찿는 품번이 없을경우 에러처리
If findchk Is Nothing Then
Sheets("입.출고").Select
Sheets("입.출고").Cells(i, 2).Select
MsgBox "품번착오// 재고현황에 맞는 품번이 없읍니다 "
Exit Sub
End If
'findchk.Select
'자료 확인
Application.StatusBar = "자료정리중..." & (i - 11) / datarg1 * 100 & "% 진행중"
findrow = findchk.Row
'그품번의 행번호를 알아내고
If Sheets("입.출고").Cells(i, "f").Value = "입고" Then
' 데이터가 입고인지 물어보고
Cells(findrow, "g").Value = Sheets("입.출고").Cells(i, 3).Value
'입고이면 입고란에 기록
Else
'입고가 아니면 출고이기 때문에
Cells(findrow, "h").Value = Sheets("입.출고").Cells(i, 3).Value
'출고란에 기록
End If
Cells(findrow, "i").Value = Cells(findrow, "f").Value + _
Cells(findrow, "g").Value - _
Cells(findrow, "h").Value
'재고수불 = 기초 + 입고 - 출고 해서 기록
Next i
Application.StatusBar = False
MsgBox datarg1 - 10 & " 건 자료 수불 완료"
End Sub
|
|