사전 정의된 결과에 대한 코드 텍스트를 정의하는 방법은 무엇입니까?

사전 정의된 결과에 대한 코드 텍스트를 정의하는 방법은 무엇입니까?

내 질문에는 잘 표현할 수 없지만 자세한 설명이 이해하기 더 쉬울 것입니다.

"A"와 같은 코드와 해당 코드에 대한 결과 텍스트를 정의하고 싶습니다. 제 경우에는 날짜가 필요합니다. 제가 기본적으로 묻는 것은 특정 열에 "A"를 쓰고 Enter 키를 누를 때마다 해당 날짜가 셀을 채워야 한다는 것입니다. 검색하는 방법을 몰라서 이런 질문을 만들었습니다. 코드와 해당 텍스트는 다른 워크시트에 있는 것이 좋습니다.

Google 드라이브에 필요하지만 그렇지 않은 경우 Excel 답변도 괜찮습니다.

답변1

저는 Google Apps Script와 JavaScript를 처음 접했지만 이것이 작동하는 것 같습니다.

/** @OnlyCurrentDoc */
function onEdit(e) {
  var activeSheet = e.source.getActiveSheet();
  var range = e.range;
  var target_sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
  var target_range = target_sheet.getRange("A1:B10");
  if (activeSheet.getName() == "Sheet1") {
    for (var i = 1; i <= 10; i++) {
      var currentValue = target_range.getCell(i,1).getValue();
      var currentDate = target_range.getCell(i,2).getValue();
      if (currentValue == e.value) {
        range.setValue(currentDate);
        break;
        }
      }
  }
}

실제 모습:

실행 중

Excel VBA에서는 다음과 같습니다.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, c As Range
Set r = Sheets(2).Range("A1:A10")   'This is where I have the "code", with the date in column "B"
If Target.Count = 1 Then
    Set c = r.Find(Target.Value, LookIn:=xlValues)
    If Not c Is Nothing Then Target.Value = c.Offset(0, 1).Value
End If
End Sub

둘 다 시트 1에 입력된 값에 대한 범위의 두 번째 시트를 검색합니다. 그런 다음 해당 행의 A1-A10열에서 날짜(또는 무엇이든)를 반환합니다 .B

관련 정보