2012-12-20 11 views
-1

를 참조하는 이유는이 코드가없는 runninig.I이 수 (COMM_NUM)과 약물에 대한 손 QTY_IHND1Mininimum (MIN_STOCK)Maximum (Stock MAX_STOCK1)>quantity을 반환 할 것입니다.액세스 하위 폼 및

If DCount(QTY_IHND1, "Stores_Table") = 0 Then 
    QTY_IHND1 = 0 

ElseIf DCount(QTY_IHND1, "Stores_Table") > 1 Then 
    QTY_IHND1 = DLast("QTY_IHND1", "Stores_Table", "COMM_NUM = [COMM_NUM]") _ 
      + ((SubStoresTable.Form!QTY_RECVD) - (SubStoresTable.Form!QTY_ISSUE)) 
Else 
    QTY_IHND1 = 0 
End If 

Forms!Pharmacytally.Controls("QTY_IHND1").Value = QTY_IHND1 
MAX_STOCK1 = DMin("QTY_IHND1", "Stores_Table", "COMM_NUM" = [COMM_NUM]) 
Forms!Pharmacytally.Controls("MAX_STOCK1").Value = MAX_STOCK1 
MIN_STOCK1 = DMin("QTY_IHND1", "Stores_Table", "COMM_NUM" = [COMM_NUM]) 
Forms!Pharmacytally.Controls("MIN_STOCK1").Value = MIN_STOCK1 

답변

0

제목의 하위 양식 부분이 어디에 있는지 알 수 없습니다. MVP 사이트 here의 기사가 있습니다.

당신은 등호가 틀린 장소에 있습니다.

MAX_STOCK1 = DMin("QTY_IHND1", "Stores_Table", "COMM_NUM =" & [COMM_NUM]) 

COMM_NUM은 숫자 여야합니다. 그렇지 않으면 따옴표가 필요합니다.

코드 섹션 전체가 좋지 않아 재 작업이 가능합니다. 예를 들어 :

DCount(QTY_IHND1, "Stores_Table") 

이 상점 테이블이 완전히 비어, 또한, QTY_IHND1 인용되지 여부에 상당히 이상한 체크 것으로 보인다.

DLast("QTY_IHND1", "Stores_Table", "COMM_NUM = [COMM_NUM]" 

Comm_Num은 항상 그 자체와 같습니다.

또한 많은 조회가 있으므로 레코드 세트를 사용하는 것이 좋습니다.

마지막으로 전체가 있습니다. 마지막은 단일 사용자 시스템을 제외하고는 값을 얻는 아주 나쁜 방법이며 심지어 단일 사용자로 남아 있지 않을 수도 있다고 생각해야합니다.

제어 얻을 수있는 컨트롤 속성을 참조 할 필요가 없습니다 :

Forms!Pharmacytally.Controls("QTY_IHND1") 

컨트롤 폼의 속성이 될이 :

Forms!Pharmacytally.QTY_IHND1 

또는

Forms!Pharmacytally!QTY_IHND1 

또는 경우

코드가 Pharmacytally 양식으로 실행 중입니다.

Me.QTY_IHND1 

이렇게하면 intellisense를 활용할 수 있습니다. 기본 폼과 MySubformControl

MyQty = Me.MySubformControl.Form.QTY_RECVD 

그 MySubformControl주의하는 것이 중요하다라는 하위 폼 컨트롤에서 근무

편집을 다시 설명

가 하위 폼 컨트롤의 이름이 아닌 형태가 포함되어 있습니다.

+0

답장을 보내 주셔서 감사합니다. 나는 이것에 상당히 새롭다. 주 양식에 COMM_NUM, QTY_IHND1, MIN_STOCK1 및 MAX_STOCK1이있다. QTY_RECVD 및 QTY_ISSUE는 하위 양식에있다. 하위 양식에서 필드 값을 호출하려면 나는 어떤 코드를 사용하고 그 반대도 메인 폼에있다. MVP 사이트는 너무 혼란 스럽습니다. 아직 경험이없는 Recordset을 살펴 보겠습니다. 미리 감사드립니다. – user1916067

+0

메모를 추가했습니다. – Fionnuala

+0

, 나는 당신이 제안한대로 언젠가는 Recordset을 배우는데 보냈습니다. 나는 그것이 다루기가 쉽다고 생각합니다.그러나 나는 이것이 VBA의 직접 실행 창의 결과를 내 양식의 필드에 어떻게 넣을 수 있는지를 기본이라고 확신합니다. 미리 감사드립니다. – user1916067