2016-09-15 3 views
0

다른 통합 문서가 교대로 값 대신 일일 평균을 가졌다는 것을 알았을 때 한 통합 문서에서 주 평균에 대한 데이터를 수집하기 시작했습니다. (내가 일하는 3 교대가 있습니다.) 데이터의 1/3을 처리해야하기 때문에 일일 평균을 사용하는 것이 훨씬 빠르다는 것을 깨달았습니다.고유 한 문제! Range.End.Row는 하나의 통합 문서에서 작동하지만 다른 하나는 통합 문서에서 작동합니다.

두 번째 통합 문서의 첫 번째 통합 문서에 사용하기 시작한 대부분의 코드를 사용했습니다. 필요한 경우 논의를 변경했습니다. 나는 다음과 같이 사용했다 :

Workbooks(2ndWB).Worksheets("Daily").Range("A" & Rows.Count).End(xlUp).Row 

나는이 프로젝트에서 마지막 행을 찾기 위해 전에 가지고 있었고 다른 많은 시간을 보냈다 ... 이번 만 실패했다. 그것은 형식 불일치라고합니다. 모든 수치 변수를 시도했지만 변형을 시도했지만 범위를 시도했지만 오류가 계속 발생합니다. Debug.Print를 사용하여이 줄이 아무 쓸모가 없는지 알아보기 위해 노력했습니다. 처음

: WB 1에서 실행 코드 1.

이제 WB의 행을 계산 : WB 1에서 실행 코드 행을 계산

내가 볼때, 단 하나 개의 차이가 정말이 WB 2.

아무에게도 이것에 관해 밝힐 수 있습니까?

고맙습니다.

+0

'2ndWB'란 무엇입니까? – Rory

+0

두 번째 통합 문서를 참조하는 통합 문서 개체입니다. – James

+0

그 경우에는 단지 Workbook (2ndWB) .Worksheets ("Daily")가 아닌'2ndWB.Worksheets ("Daily")'입니다. – Rory

답변

1

감사합니다. @Rory.

나는 지난 3 주 동안이 프로젝트를 진행해 왔으며, 잠깐 머리를 잠그는 것 같아요. 실제 참조는 2ndWB가 아닙니다 (문제를 더 쉽게 볼 수 있도록 사용했습니다). 실제 참조는 reportwb입니다. Rory가 지적했듯이, 이것은 본질적으로 말하고있는 단순한 사례입니다. Workbooks(Workbooks("reportwb")).Worksheets...

분명히 잘못되었습니다. 빠른 도움을 주셔서 감사합니다. 사무실에 vba에 대해 아는 다른 사람이 있었다면 아마 여기에 없었을 것입니다. 그럼에도 불구하고, 내 뇌의 방귀를 볼 수 있도록 도와 주셔서 감사합니다!

+1

의도 한 워크 시트를 지정하여 'Rows.Count'를 on으로 설정하는 것도 좋은 생각입니다. – CallumDA

관련 문제