2013-10-01 3 views
0

저는 약 1 년 동안 Access를 사용해 왔으며 최근에야 VBA에 대해 배우기 시작했습니다. 제가 읽은 책과 제가 온라인으로 읽은 도움은 제가 필요로하는 것에 맞지 않는 것 같습니다. 또는 그들이하는 경우에, 나는 너무 많이 통지 할 초심자이어야한다.쿼리가 null 일 때까지 Access 2010 VBA Loop 쿼리

내 프로젝트는 개인 재무 데이터베이스이며 현금 흐름을 예측하는 방법을 연구 중입니다. 나는

  1. 있어 'tbl_InitialPoint'라는 트랜잭션을 반복있는 테이블 a의 마지막 날짜를 발견,

  2. 쿼리 (열 설명, 금액, 그리고 일 주파수()와 함께) 구체적인 설명 'tbl_Register'에서

  3. 'tbl_Register'에서 'tbl_InitialPoint'TB INTO

    INSERT에서 반복 트랜잭션을 삽입 할 추가 쿼리 l_Register (시간적으로, 설명의 양) INNER JOIN tbl_InitialPoint FROM DateSeries, tbl_InitialPoint.Description, tbl_InitialPoint.Amount AS = qry_MaxDate.Description qry_MaxDate.LastDate + tbl_InitialPoint.Frequency < qry_MaxDate ON tbl_InitialPoint.Description을 qry_MaxDate.LastDate + tbl_InitialPoint.Frequency를 선택 = [양식]! [HomePage]! [DateHorizon];

쿼리가 null 또는 비어 있지 않을 때까지이 쿼리를 반복/실행하는 특정 vba가 무엇인지 전혀 모릅니다.

아이디어가 있으십니까?

답변

0

로컬 액세스 테이블과 해당 DAO 개체를 사용하고 있다고 가정합니다.

queryDef 개체와 해당 execute 메서드를 사용해야합니다.

일단 querydef가 실행되면 queryDef 인스턴스의 recordsAffected 속성을 테스트 할 수 있습니다.

이 값이 0이면 쿼리를 통해 레코드가 삽입되지 않은 것입니다.

편집 : 사용자 의견에 따라 queryDef 관련 코드 here을 볼 수 있습니다. 여기서 새 쿼리 정의를 만들고 recordsAffected 속성을 포함하여 개체의 속성을 나열 할 수 있습니다.

+0

죄송합니다. 이해가 안갑니다. 코드가 어떻게 생겼는지에 대한 예를 들어 주시겠습니까? 위에서 설명한 내용을 사용하여 여러 번 시도했지만 이름이 지정된 queryDef를 한 번 실행하지 못합니다. 개인 기능 InsertTransactionsBttn_Click() 데이터베이스 희미한 MySQL의 문자열 으로 희미한 qdfNew 된 QueryDef으로 –

+0

는 여기에 내가 (나중에 루프를 추가 할 수 있습니다) 지금까지이 무엇 tbl_Register (시간적으로, 설명의 양) INTO "& _ "DateSeries, tbl_InitialPoint.Description, tbl_InitialPoint.Amount AS qry_MaxDate.LastDate + tbl_InitialPoint.Frequency 선택 "& _ "tbl_InitialPoint INNER는 tbl_InitialPoint.Description qry_MaxDate.Description = ON qry_MaxDate 가입 FROM "& _ "어디에서 qry_MaxDate.LastDate + tbl_InitialPoint.Frequency <= [Forms]![홈페이지]! [DateHorizon] " 설정 qdfNew = CreateQueryDef ("NewQueryDef "_ MySQL의) –

+0

설정 dB = CurrentDb() 설정의 MySQL = "INSERT로 희미한 DB를 : –