|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
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...):
* 아래줄에 질문을 작성하세요 >>
데이타저장에 따른 파일을 다운 받아 공부를 하는데 도무지 풀지 못하는게 있어
몇자 적었읍니다.
옵션단추에 따라 데이타들이 지정된 탭으로 각각 저장될 수 있는 방법이 없을까해서
고민을 하도 도무지 요청을 해야 할 것 같아서요,
예제 파일을 검토후 좀 답변 부탁드립니다.
==============[코알라님 글에 대한 답변입니다]==============
IF 문을 이용하는 방법입니다.
복사한 dhDbEntry1과 dhDbEntry2의 코드는 중복되는 부분이 있으므로 불필요한 부분은 삭제하여 정리하시면 깔끔한 코드창이 될 겁니다.(^^)
Sub dhDbEntry()
Dim rngCopy As Range '복사할 내용
Dim rngTo As Range '저장할 위치
Dim lngTo As Long
Dim ingC As Integer
With Range(strCopy)
If .CurrentRegion.Rows.Count = 1 Then
MsgBox "저장할 데이터가 없습니다!", vbExclamation, Es
Exit Sub
End If
Set rngCopy = Range(strCopy).CurrentRegion.Offset(1, 0)
ingC = rngCopy.Rows.Count - 2
If [b1] = 1 Then
With Worksheets("발주")
lngTo = .Cells(1).CurrentRegion.Rows.Count + 1
Set rngTo = .Cells(lngTo, 2)
With Range("날짜")
Range(rngTo.Offset(0, -1), rngTo.Offset(ingC, -1)) = IIf(IsDate(.Value), .Value, Date)
End With
End With
rngCopy.Copy rngTo
Application.CutCopyMode = False
rngCopy.ClearContents
.Offset(1, 0).Select
ElseIf [b1] = 2 Then
dhDbEntry1
ElseIf [b1] = 3 Then
dhDbEntry2
End If
End Sub
|
|