시트 목록을 순환하여 다른 워크 시트 목록의 시트 참조가있는 계산을 실행할 수 있습니까? 예를 들어, 계산의 대상이 될 워크 시트 목록 (목록 1)이 있고 계산의 기초가되는 두 번째 워크 시트 목록 (목록 2)이 있습니다. 그래서, 목록 1에 sheet1과 sheet2, 목록 2에 sheetA와 sheetB가 있다고 가정 해 봅시다. sheetA에 기반한 계산은 sheet1에 나타나고 sheetB에 기반한 계산은 sheet2에 나타납니다.시트를 반복하여 동적 시트 참조를 기반으로 계산 실행
Sub LoopthroughWorksheets()
Dim sheet_name As Range
Dim sheet_name2 As Range
Set sheet_name2 = Sheets("WS").Range("F:F")
For Each sheet_name In Sheets("WS").Range("C:C")
If sheet_name.Value = "" Then
Exit For
Else
With Sheets(sheet_name.Value)
.Range("K1") = .Range("sheet_name2.Value!A14").Value
End With
End If
Next sheet_name
End Sub
나는 "런타임 오류 '1004 : 응용 프로그램 정의 또는 개체 정의 오류"를 받고 있어요 : .Range("K1") = .Range("sheet_name2.Value!A14").Value
이 어떤 도움이이 줄에서 나는 코드는 다음과 같을 것이라고 생각 매우 감사.
감사합니다.
감사합니다. Range ("A14") .Value 런타임 오류가 발생합니다. 9 : subscript가 범위를 벗어났습니다. 이 코드는'.Range ("K1") = Sheets (sheet_name2) .Range ("A14") .Value 런타임 오류가 발생합니다. 13 : 형식이 일치하지 않습니다. 이 코드를 사용하면 :'.Range ("K1") = Sheets (sheet_name2.Value) .Range ("A14") .Value 런타임 오류가 발생합니다. 13 : 입력이 일치하지 않습니다. – user3242245
아직도 잘못 될 수있는 것에 관한 의견이 있습니까? 목록의 워크 시트 목록은 A1 : A51이고 목록 2의 워크 시트 목록은 F1 : F51입니다. 셀 A14에는 텍스트가 아닌 숫자가 들어 있습니다. – user3242245
그것은 일했다! 고맙습니다. 이렇게하면 코딩 시간을 절약 할 수 있습니다. 이 질문은 상당히 일반적인 질문이라고 생각했지만 답변을 찾을 수 없었습니다. 그냥 궁금해서 카운터는 어떻게 작동합니까? sheet_name2 (1,1)이 셀 A1에 나열된 워크 시트와 얼마나 유사한 지 잘 모르겠습니다. – user3242245