2014-12-06 3 views
0

left(), right()mid() 기능을 사용하는 쿼리로 Access 2010에서 데이터베이스를 만들었습니다. 그런 다음 데이터베이스를 집에서 PC로 복사했지만이 기능은이 데이터베이스에서 작동하지 않습니다. 집에있는 내 PC에도 Access 2010이 있습니다. 쿼리를 실행하려고 할 때마다 다음 메시지가 표시됩니다. 이 함수를 컴파일하는 중에 오류가 발생했습니다. Visual Basic에 구문 오류가 있습니다. 코드를 확인한 다음 다시 컴파일하십시오.데이터베이스 기능에 액세스

집에서 PC를 새로 작성하여 기능을 테스트하고 아무 문제가 없었습니다. 나는 또한 집에서 내 PC에서 제목이 이라고 읽었습니다. Database1 : 데이터베이스 (Access 2007) - Microsoft Access 직장에있는 동안 Database1 : 데이터베이스 (Access 2007 - 2010) - Microsoft Access. 두 PC 모두 Windows 7 Professional을 사용하고 있으며 가정용 PC는 약 1 년, PC는 약 3 개월입니다. 집에서도 내 액세스를 업데이트/복구했지만 DB는 여전히 작동하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?

나는

지금은 액세스 쿼리에서 왼쪽() 함수를 사용하려면
id Name 
1 Jason 
2 Casey 
3 Shasha 

, 나는 오류 메시지, 간단한 테이블이 id 열과 Name라는 이름의 열이 Table1를 호출해야 : 이 기능을 컴파일하는 중에 오류가 발생했습니다. Visual Basic에 구문 오류가 있습니다. 코드를 확인한 다음 다시 컴파일하십시오.

검색어 :

Select Left([Name],2) As Short_name From Table1 
+0

Google에서 도움을 받으려면 프로그램 소스 코드의 관련 부분을 확인해야합니다. – Dai

+0

코드 작업을 마쳤습니까? 그렇지 않다면이 작은 쿼리 인'SELECT Left ("Jason", 2);를 AS 나 FROM없이 실행 해보십시오. "Ja"로 구성된 하나의 레코드를 가져와야합니다. 또한 디버그 창에'? left ("Jason", 2)'라고 입력하면 "Ja"를 얻을 수 있습니다. 둘 다 실패하면 작업중인 DB가 Left 함수를 재정의 할 수 있습니다. –

답변

3

VBA를 편집기에서> 도구 - 이동 참조 및 누락 된 참조를 위해 찾는 동안 당신이 원하는.

대상 컴퓨터에 존재하지 않는 일부 소프트웨어 (단어)에 대한 참조가있을 가능성이 높습니다. 이 깨진 참조 보는 "단계"에 의해

은 "단계는"여기에 설명되어 있습니다 : 다른 컴퓨터에 응용 프로그램을 이동할 때

http://www.accessmvp.com/djsteele/AccessReferenceErrors.html

깨진 참조 아마도 Access의 가장 일반적인 문제 중 하나입니다 . 후기 바인딩을 사용하고이 문제를 "줄이기"위해 불필요한 참조를 모두 제거하는 것이 좋습니다. 64 비트 Office 및 32 비트 액세스를 가진 때이 문제가 있었다

0

(why? is another question)

는 VBA 편집기에 가서 쳐서 그것을 고정에 데려 갔다하는 반복 "컴파일" 함수 선언에 ptrsafe를 추가해야하는 불쾌한 32 비트 함수 (그래, 나는 두 번째 생각없이 그것을 위험하게 추가했다.) 그리고 Access는 행복했다.

,

Private Declare Function GetUserName _ 
    Lib "advapi32.dll" Alias "GetUserNameA" _ 
    (ByVal lpBuffer As String, nSize As Long) _ 
    As Long 

Private Declare PtrSafe Function GetUserName _ 
    Lib "advapi32.dll" Alias "GetUserNameA" _ 
    (ByVal lpBuffer As String, nSize As Long) _ 
    As Long 

어울린다 내가 할 수있는 유일한 그게 내가 설치 한 것을 Office 버전이기 때문에 내 32 비트 액세스의 VBA 64 비트에 대한 컴파일하려고하고있는 것 같아요.

관련 문제