VBA를 사용하여 다른 시트에서 값 가져오기
저는 다른 시트에서 가치를 얻고 싶습니다.
Excel(시트 2)에 다음과 같은 몇 가지 값이 있습니다.
A B C D
- - - -
1 | 2 5 9 12
2 | 5 8 4 5
3 | 3 1 2 6
4행의 각 열을 합합니다.
나는 sheet2에서 이 값들로 작업하고 있지만 sheet1에서 결과를 얻고 싶습니다.
sheet2에서 내 코드를 사용할 때는 정답을 얻지만 다른 sheet에서 사용하려고 하면 sheet2가 아닌 현재 sheetcell에 해당하는 값의 결과를 얻습니다.
사용 중With Application.WorksheetFunction
.
시트2를 활성 시트로 설정하려면 어떻게 해야 합니까?
해라
ThisWorkbook.Sheets("name of sheet 2").Range("A1")
코드가 어디에 있는지 또는 현재 활성화된 시트에 관계없이 시트 2의 범위에 액세스합니다.시트 2를 활성화하려면 다음을 수행합니다.
ThisWorkbook.Sheets("name of sheet 2").Activate
다른 시트의 행 합계만 필요한 경우에는 VBA를 사용할 필요가 전혀 없습니다.시트 1에 다음과 같은 공식을 입력합니다.
=SUM([Name-Of-Sheet2]!A1:D1)
그것은 (당신의 매우 구체적인 예에 대하여) 될 것입니다.
ActiveWorkbook.worksheets("Sheet2").cells(aRow,aCol).Value=someval
OR
someVal=ActiveWorkbook.worksheets("Sheet2").cells(aRow,aCol).Value
F1 클릭하여 워크시트 객체가 포함된 워크시트 컬렉션에 대해 읽어 보십시오. 워크시트 컬렉션에는 셀 객체를 고정하는 셀 컬렉션이 있습니다.
Sub TEST()
Dim value1 As String
Dim value2 As String
value1 = ThisWorkbook.Sheets(1).Range("A1").Value 'value from sheet1
value2 = ThisWorkbook.Sheets(2).Range("A1").Value 'value from sheet2
If value1 = value2 Then ThisWorkbook.Sheets(2).Range("L1").Value = value1 'or 2
End Sub
이렇게 하면 두 개의 시트 셀 값을 비교하고 일치하는 경우 시트 2의 L 열에 값을 배치합니다.
SomeVal=ActiveWorkbook.worksheets("Sheet2").cells(aRow,aCol).Value
작동하지 않았습니다.하지만 다음 코드는 저에게만 적용되었습니다.
SomeVal = ThisWorkbook.Sheets(2).cells(aRow,aCol).Value
시트의 데이터가 필요하기 전에 워크시트 활성화 명령을 사용해 보십시오.
objWorkbook.WorkSheets(1).Activate
objWorkbook.WorkSheets(2).Activate
제가 사용하는 스크립트를 사용하여 다른 시트에서 특정 셀 값을 다시 특정 시트로 검색할 수 있습니다.
Sub reviewRow()
Application.ScreenUpdating = False
Results = MsgBox("Do you want to View selected row?", vbYesNo, "")
If Results = vbYes And Range("C10") > 1 Then
i = Range("C10") //this is where i put the row number that i want to retrieve or review that can be changed as needed
Worksheets("Sheet1").Range("C6") = Worksheets("Sheet2").Range("C" & i) //sheet names can be changed as necessary
End if
Application.ScreenUpdating = True
End Sub
이것을 사용하여 양식을 만들고 필요에 따라 개인 설정할 수 있습니다.
일반적으로 다른 시트에서 다른 셀의 값을 가져올 때 이 코드를 사용합니다(VBA 매크로로).
범위("Y3") = 액티브 워크북.워크시트("참조").범위("X4")
셀 Y3는 "계산"이라고 부르는 시트에 들어 있습니다.셀 X4는 "참조"라고 부르는 시트에 있습니다. 활성 시트에서 "계산"할 때 VBA 매크로가 실행되었습니다.
언급URL : https://stackoverflow.com/questions/4148765/get-values-from-other-sheet-using-vba
'source' 카테고리의 다른 글
WPF ListView의 헤더를 숨기려면 어떻게 해야 합니까? (0) | 2023.04.27 |
---|---|
Local cloud stack for Azure similar to LocalStack for AWS? (0) | 2023.04.27 |
내 앱이 아이폰 시뮬레이터에서 실행 중인지 프로그래밍 방식으로 확인하려면 어떻게 해야 합니까? (0) | 2023.04.27 |
Azure의 페더레이션 인증 (0) | 2023.04.27 |
Excel VBA:On ErrorGoto 문이 For-Loop 내부에서 작동하지 않음 (0) | 2023.04.27 |