내 Excel 시트에서 입력 내용을 추적하고 싶습니다.EXCEL에서 입력 이미지 추적을 수행하는 방법
예를 들어 ID와 같은 것을 입력하고 ENTER 키를 누르면 다른 시트에서 해당 ID를 찾아 이름을 찾고 입력 한 원래 셀의 ID를 바꿉니다.
이렇게하려면 VBA를 사용해도 되나요?
간단한 예가 좋을 것입니다. 감사합니다.
는업데이트 :
예 물론, 내가 ID를 입력합니다 일부 특정 세포가 아니라 전체 시트 때문에 추적해야합니다.
내 Excel 시트에서 입력 내용을 추적하고 싶습니다.EXCEL에서 입력 이미지 추적을 수행하는 방법
예를 들어 ID와 같은 것을 입력하고 ENTER 키를 누르면 다른 시트에서 해당 ID를 찾아 이름을 찾고 입력 한 원래 셀의 ID를 바꿉니다.
이렇게하려면 VBA를 사용해도 되나요?
간단한 예가 좋을 것입니다. 감사합니다.
는업데이트 :
예 물론, 내가 ID를 입력합니다 일부 특정 세포가 아니라 전체 시트 때문에 추적해야합니다.
작업에 대한 Worksheet_Change(ByVal Target As Range)
이벤트 처리기 (워크 시트에 대해 정의 됨)를 사용하십시오. 이 함수는 해당 워크 시트의 셀 값이 변경 될 때마다 (사용자 또는 다른 vba 코드에 의해) 호출됩니다.
Target
매개 변수에는 변경된 셀 범위가 포함됩니다. 이제 해당 범위의 열과 행을 반복하고 수행 할 조회/바꾸기 작업을 수행합니다. 이벤트 처리기가 자체 호출하지 않는 부울 변수를 추가로 지정하십시오.
Public NoCellUpdateHandle As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If NoCellUpdateHandle Then Exit Sub
Dim row As Integer, col as Integer, idValue as String, replaceValue as String
For Each columnObj In Target.Columns
For Each rowObj In columnObj.Rows
row = rowObj.Row
col = columnObj.Column
' You can filter for certain rows/columns
If row > 5 And row < 10 And col = 7 Then
idValue = ActiveSheet.Cells(row, col).Value
' do the lookup for the id value in the other worksheet here
' replaceValue = lookup(idValue)
' Disable the event handler and perform the replacement
NoCellUpdateHandle = True
ActiveSheet.Cells(row, col).Value = replaceValue
NoCellUpdateHandle = False
End If
Next rowObj
Next columnObj
End Sub
필요한 것이 전부입니다.
매우 작은 조각상이 전혀 추적 될 필요가 없다는 것을 알게 될 것입니다 ... –