커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
4주차 과제에서 vba코드 에러 발생
[왕초보] ChatGPT 300% 활용하기 v0
4주차
북마크
이*나
댓글
4
추천
0
조회수
13
조회수
13
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


엑셀 파일에서 vba코드를 실행하면 아래와 같은 에러가 계속 발생합니다. chatGPT에게 물어보고 코드를 수정해봐도 계속 같은 오류가 발생합니다.




스파르타 즉문즉답스파르타 즉문즉답





작성한 코드 및 에러 메세지

Sub ExtractMarketingData()
    Dim wb As Workbook
    Dim wsSource As Worksheet
    Dim wsMarketing As Worksheet
    Dim lastRowSource As Long
    Dim lastRowMarketing As Long
    Dim i As Long
    
    ' 현재 열려 있는 워크북 가져오기
    Set wb = ThisWorkbook
    ' 원본 시트와 마케터 시트 지정
    Set wsSource = wb.Sheets("Sheet") ' 원본 시트명으로 변경해야 합니다.
    On Error Resume Next
    Set wsMarketing = wb.Sheets("마케터")
    On Error GoTo 0
    
    ' 마케터 시트가 없으면 생성
    If wsMarketing Is Nothing Then
        Set wsMarketing = wb.Sheets.Add(After:=wb.Sheets(wb.Sheets.Count))
        wsMarketing.Name = "마케터"
    Else
        wsMarketing.Cells.Clear ' 기존 데이터 삭제
    End If
    
    ' 원본 시트의 마지막 행 찾기
    lastRowSource = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row
    ' 마케터 시트의 시작 행 지정
    lastRowMarketing = 1
    
    ' 마케팅 데이터 추출
    For i = 2 To lastRowSource ' 데이터가 있는 첫 번째 행부터 마지막 행까지 반복
        If Trim(wsSource.Cells(i, "part").Value) = "마케팅" Then ' "part" 열에 "마케팅"인 경우
            ' 마케터 시트에 추가
            wsMarketing.Cells(lastRowMarketing, 1).Value = wsSource.Cells(i, "name").Value
            wsMarketing.Cells(lastRowMarketing, 2).Value = wsSource.Cells(i, "part").Value
            wsMarketing.Cells(lastRowMarketing, 3).Value = wsSource.Cells(i, "e-mail").Value
            lastRowMarketing = lastRowMarketing + 1 ' 다음 행으로 이동
        End If
    Next i
    
    MsgBox "마케터 시트에 데이터가 추가되었습니다.", vbInformation
End Sub




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴