안녕하세요?
데이터가 많은듯 한데 이러한 경우 함수를 이용할 수도 있지만...
간단한 VBA를 이용하면 아주 작업이 손쉬워집니다.
아래는 첨부파일의 코드입니다.
Option Explicit
Sub Test()
Dim Rng As Range, c As Range
Dim i As Long
Application.ScreenUpdating = False
With Worksheets("세금계산서")
Set Rng = .Range(.Range("o2"), .Cells(Rows.Count, "o").End(xlUp))
For Each c In Rng
For i = 1 To Len(c)
c.Offset(, i + 10 - Len(c)).Value = Mid(c.Value, i, 1)
c.Offset(, i + 21 - Len(c)).Value = Mid(c.Value, i, 1)
Next i
If c.NumberFormat = "-#" Then
c.End(xlToRight).Offset(, -1).Value = "-"
c.Offset(, 11).End(xlToRight).Offset(, -1).Value = "-"
c.Offset(, 11).Value = Int(c.Value / 10) * -1
c.Offset(, 21).Value = (c + c.Offset(, 11).Value) * -1
Else
c.Offset(, 11).Value = Int(c.Value / 10)
c.Offset(, 21).Value = c + c.Offset(, 11).Value
End If
Next c
End With
Application.ScreenUpdating = True
End Sub
Sub Reset()
With Worksheets("세금계산서")
.Range(.Range("p2"), .Cells(Rows.Count, "aj")).Clear
End With
End Sub
자세한 내용은 첨부파일을 참고로 하시고...
혹시 파일이 정상실행이 되지 않는다면 엑셀 2003메뉴의 도구>매크로>보안에서 아래와 같이 설정하시고
엑셀을 닫았다가 다시 실행하세요.
그리고 파일을 열때는 아래와 같이 매크로 포함으로 열고 버튼을 클릭하시면 됩니다.
그럼 잘 해결되시길... ^^*
========================================================================================
첨부파일
090813_숫자나누기_VBA.xls
========================================================================================
첫댓글 답변 감사합니다. 잘 쓸께요
즐거운 하루 되세요...!