월요일 19 월 2018
  0 답글
  4.9K 방문
0
투표
취소
안녕하세요 저는 과거에 VBA를 사용하여 Office에서 특정 작업을 수행했으며 기억하는 것보다 더 많이 잊어버렸습니다. 즉, 이전 버전의 Microsoft Office Excel과 함께 Microsoft Windows 7 Home Premium을 사용하고 있습니다(2003년 예정).

mp4 등의 미디어 컬렉션을 추적하는 데 사용하는 스프레드시트가 있습니다. 명령 상자에서 dir 명령을 사용하여 미디어(주로 mp4s) 및 실제 파일 이름.mp4에 대한 경로로 셀을 렌더링하기 위해 구문 분석하는 txt 파일을 출력합니다. 범위에 걸쳐 A:I

내가 달성하려는 것은 filename.mp4가 있는 셀이 있는 범위의 모든 행을 다른 시트로 이동하는 것입니다.
이것은 지금까지 내 코드입니다.

하위 MoveMp4()
'Private Sub Worksheet_Change(ByVal Target As Range) [[원하는 경우 자동으로 실행하려면 이것을 맨 윗줄로 사용]]
범위로 Dim xRg
xCell을 범위로 흐리게 처리
흐릿한 I As Long
딤 J As Long
딤케이 애즈롱
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
J = 1이면
Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0이면 J = 0
END IF
Set xRg = Worksheets("Sheet1").Range("A:I") '[[RANGE CONTAINING FILENAME.MP4 CHANGES DYNAMICALLY]]
오류에 대한 다음 재개
Application.ScreenUpdating = False
K = 1 xRg.Count의 경우
CStr(xRg(K).Value) = ".mp4"인 경우
xRg(K).EntireRow.복사 대상:=Worksheets("Sheet2").Range("A" & J + 1)
xRg(K).전체 행.삭제
CStr(xRg(K).Value) = ".mp4"인 경우
케이 = 케이 - 1
END IF
J = J + 1
END IF
다음 보기
Application.ScreenUpdating = True
최종 하위

다시 말하지만, 위의 코드는 A:I 범위의 단일 셀에 .mp4가 포함되어 있으면 작동하지만 .mp4(대부분의 파일 이름) 앞에 문자가 있으면 행을 이동하지 않습니다. 엑셀VBAExample2.jpg
아마도 그것은 .mp4 확장자를 위해 동적으로 변화하는 범위에서 셀을 검색해야 하고 발견되면 전체 행을 시트 2로 이동해야 합니다. 나는 명령을 사용하여 특정 문자에서 문자열을 검색하고 그에 따라 작동한다는 것을 알고 있습니다. 내가 무엇을했는지 또는 어떻게했는지 기억할 수 없습니다.

글이 길어 죄송합니다. 설명을 왔다 갔다 하기 보다는 제가 원하는 바를 최대한 명확하게 하고 싶었습니다. 나는 내가 작업하고 있는 예를 첨부 파일로 첨부했습니다.

여기 게시물의 코드를 수정했다고 말하고 싶습니다.

https://www.extendoffice.com/documents/excel/3723-excel-move-row-to-another-sheet-based-on-cell-value.html?page_comment=1

그리고 마지막으로 덧붙이고 싶습니다. 여러분은 세계 공동체에 큰 봉사를 하고 있습니다. 내 마음의 영혼과 정신의 바닥에서 감사합니다!
이 게시물에 대한 답변이 없습니다.