Access에서 Expression Builder를 사용하여 LOOKUP 함수를 만드는 방법은 무엇입니까? 입력 한 데이터를 사용하여 하나의 열을

최근 Excel 2007에서 Access 2007로 옮겨서 스프레드 시트가 없었어야하는 부분을 관리했습니다. 불행히도, 내가 말할 수있는 것부터 Excel의 LOOKUP 함수는 정확히 Access의 Lookup 열과 동일하게 작동하지 않습니다.

엑세스의 어려움은 Excel의 기능을 다음과 같이 보일 수있는 LOOKUP 번역에 있습니다.

=LOOKUP(A47, Winning!A1:A112, Winning!B1:B112)

이 기능을 구현하는 표현식을 작성하는 데 문제가 있습니다. 이전에 입력 한 데이터를 사용하여 하나의 열을 채우는 방법에 대한 설명을 검색 할 때 필터 및 VBA와 관련된 여러 가지 방법을 찾았지만 어떻게 작동하는지에 대한 설명이 없으며 그렇지 않은 경우 코드를 드롭하지 않으려 고합니다. 그것이 어떻게 작동하는지 많은 설명을해라.

  • 이전 열의 입력을 사용하여 하나의 열을 채우는 방법은 무엇입니까?
    • 관계를 사용하여 그렇게 할 수있는 방법이 있습니까? 아니면 표현이 더 나은 방법입니까?
    • 입력 열을 기반으로 선택하는 선택 필터에 표현식을 입력하거나 DATE ()와 비슷한 것을 입력 할 것으로 예상됩니다. 열 이름 ([필터]); 이 접근법에 무결성 문제가 있습니까?
  • 할 것이다 DLookup 여기에 더 효과적인 도구가 될까요? 뭔가가 좋아.
    • DLookup([CCD].[Name], [CCDBackend], [CCD].[ClientID]=[CCDBackend].[ClientID])
  • 액세스가 가능한 접근 방식으로 자체적으로 재정비하려고하는 Excel 추가 된 두뇌에 사용할 수있는 리소스가 있습니까?

나는 VBA의 끔찍한 반복으로 질문 큐를 방해하지 않으려 고 노력 중이다. 이 질문에 대한 답변과 방법에 대한 설명은 코드 스 니펫보다 더 유용 할 것입니다.



답변

Excel에서와 같은 방식으로 데이터를 액세스하지 않습니다. Access 테이블에서 데이터는 필드 (열)의 레코드 (셀) 내에 저장됩니다. Excel에서 허용하는 것처럼 테이블의 다른 “셀”에서 레코드를 참조 할 수 없습니다.

한 레코드에서 다른 레코드로 데이터를 한 번만 복사하려면 데이터 시트보기에서 테이블을 열고 열을 복사하여 붙여 넣습니다. 두 번 이상이 작업을 수행해야하거나 기준으로 필터를 적용하려는 경우 추가 쿼리가 가장 도움이 될 것입니다.

쿼리 작성의 깊이에 빠지지 않고 여기에 기사가 있습니다. Access 2010에서 식 작성기 사용 Expression Builder를 사용하여 테이블에 필드를 추가 한 다음 다른 필드의 데이터를 사용하여 테이블에 데이터를 채우는 방법을 보여줍니다.

이렇게하면 작업 완료에 필요한 기본 아이디어를 얻을 수 있습니다.


답변

Excel 기능 =LOOKUP(A47, Winning!A1:A112, Winning!B1:B112) dlookup으로 변경할 수 있습니다 (그러나 자주 수행되는 경우 레코드 세트 나 쿼리를 사용하는 것이 좋습니다)

번역은 다음과 같습니다.

Result=dlookup("[B Column]","Table with A & B Data","[A column]=A47")

물론, 나는 당신의 데이터가 어떻게 저장되는지 정확히 알지 못하기 때문에, 사용 된 이름에 자유를 부여했다.