저는 Microsoft Access에서 Bill과 Pay라는 두 가지 양식을 사용합니다. 둘 다 양식의 총계가 하나의 필드로 있습니다. 총 금액을 지불 총액으로 참조하려고합니다. 내가 지불 총량 제어 소스에서 시도양식에서 참조하기
:! = 양식은 빌 [총액]
하지만이 나던 일을 보인다. 디자인보기에서 '#Name?'이라고 말합니다. 텍스트 상자에.
어떻게 하시겠습니까?
저는 Microsoft Access에서 Bill과 Pay라는 두 가지 양식을 사용합니다. 둘 다 양식의 총계가 하나의 필드로 있습니다. 총 금액을 지불 총액으로 참조하려고합니다. 내가 지불 총량 제어 소스에서 시도양식에서 참조하기
:! = 양식은 빌 [총액]
하지만이 나던 일을 보인다. 디자인보기에서 '#Name?'이라고 말합니다. 텍스트 상자에.
어떻게 하시겠습니까?
양식 중 하나가 하위 양식입니까? 하위 폼 컨트롤 이름은 항상 양식이 포함 된 것과 동일한 아니라고
Me.Parent.[Total order]
Me.[Subform Control name Here].form.[Total order]
참고 : 만약 그렇다면, 당신은 하위 폼 컨트롤 또는 부모의 속성을 참조 할 필요가있다.
편집 : 나를 생략하거나 컨트롤에서 Form! FormName을 사용하십시오.
EDIT2 : 양식, 하위 양식 및 컨트롤을 참조하는 일반적인 방법은 강타 (!) 또는 점 (.)으로되어 있습니다. 괄호와 따옴표는 거의 사용되지 않습니다. Knox에서 언급 한 것처럼 Microsoft Access MVP 사이트 (http://www.mvps.org/access/forms/frm0031.htm)와 Microsoft 자체 사이트 (http://support.microsoft.com/kb/209099)에서 볼 수 있습니다.
그렇지 않은 경우 표현식 빌더를 사용해 보셨습니까? 정확한 이름을 지키는 데 도움이됩니다.
제쳐두고 필드 및 컨트롤의 이름에 공백을 두지 않는 것이 가장 좋습니다. 이렇게하면 많은 작업을 줄일 수 있습니다. 컨트롤의 이름을 변경하여 컨트롤에 포함 된 필드 (예 : txtOrderTotal)와 이름이 같지 않은 것이 가장 좋습니다.
Remou의 대답은 코드에서 작동 - 텍스트 상자의 제어 소스를 정의하는 것 같습니다 그러나 지금이 시도 :
=Forms("Bill")![Total order]
내 대답의 일부는 코드에만 적합하지만 하위 폼에 대한 의견은 컨트롤 소스에 적용됩니다. Forms ("Bill")를 사용할 필요는 없습니다. Forms! Bill은로드 된 양식에 적합합니다. – Fionnuala
내가 가장 좋아하는 솔루션은 여기에 항상 레코드로 돌아가서 해당 계산 합계가 없습니다. 양식 수준의 합계가 올바르게 업데이트됩니다 (어떤 이유로 든 보류중인 컨트롤/레코드 세트 업데이트가 항상있을 수 있음). 그러면 DSUM 및 관련 기능을 사용할 수 있습니다!
Exemple :
dsum(Forms("Bill").recordsource, "unitPrice*lineQuantity")
물론 당신이 그런 송장 당 총 금액을 얻기 위해 임시 레코드를 정의하는 등 더 복잡한 솔루션을 가질 수있다.
Dim rs as DAO.recordset, _
myBillNumber as variant, _
myBillAmount as variant
set rs = currentDb.openRecordset(_
"SELECT billNumber, sum(unitPrice*lineQuantity) as totalPrice FROM " & _
Forms("Bill").recordset.name " GROUP BY billNumber")
myBillNumber = rs.fields(0)
myBillAmount = rs.fields(1)
이 복잡하게 보일 수도 있지만 일단 익숙해지면 당신은 그것을 사용하는 것을 주저하지 않을거야 당신은 이제까지 당신이 지금 직면하고있는 문제의 종류가 없을거야.
Remou의 대답은 정확합니다. 컨트롤 참조와 관련된 Microsoft 설명서를 검토하는 것이 유용 할 수 있습니다. http://support.microsoft.com/kb/209099 – Knox