2009-06-12 7 views
1

2000lb 자루에 들어있는 제품을 팔레트 위에 올려 놓습니다. 이 제품을 만들 때 테스트 할 여러 요소가 있으며 각 테스트에는 숫자 데이터가 들어있는 필드가 있습니다. 이러한 테스트 레코드에는 숫자 (예 : L20444)가 할당됩니다.VBA에서 레코드 복사

이제 우리는 2000lb 자루를 가지고 80lb 봉지로 변환 할 수 있습니다. 1 개의 팔레트에 40 개의 20 파운드 가방 만 끼울 수 있습니다. 이제 하나의 팔레트 L20444를 가져 와서 L20444라는 숫자를 가진 두 개의 팔레트를 만들 수 있습니다. L20444 번호는 두 개가 아닌 하나의 창고 위치 만 지정할 수 있기 때문에 인벤토리에 문제가 발생합니다.

그래서 내 상사는 거의 동일한 숫자를 만들지 만 창고에 두 번째 팔레트를 배치 할만큼 충분히 다릅니다. 두 번째 팔레트는 이제 L20444B가됩니다. 그것은 여전히 ​​똑같은 숫자의 테스트를 거치며 원래 L20444의 "사본"입니다.

내 질문은 L20444 레코드를 가져 와서 해당 레코드의 모든 데이터를 복사 한 다음 L20444B로 저장하여웨어 하우스에 배치 할 수 있습니다.

VBA에서 레코드를 복사하고 이름을 변경 한 다음 새 레코드와 동일한 데이터베이스에 저장할 수 있습니까?

감사합니다. 감사합니다. 감사합니다.

답변

1

만약 당신이 바로 당신이 SQL 문을 새 레코드를 만들려는 것처럼 들리는군요.

Microsoft Access를 사용하고 있습니까? 먼저 쿼리 편집기에서이 작업을 수행하는 쿼리를 만드는 것이 좋습니다. 첫 번째는 당신이 원하는 것을하고있어 확인하고 매개 변수 ([OldID], 또는 무엇인가)에 "L20444"을 만들 수

INSERT INTO TableA (ID,col1, col2) 
SELECT [ID] & "B" AS NewName,col1, col2 
FROM TableA 
WHERE (([ID]="L20444")); 

테스트 : 그것은 추가 쿼리의 라인을 따라 뭔가 될 것입니다. 그런 다음이 쿼리를 실행하는 VBA 스크립트에 코드를 추가하십시오. 당신이 그것을 실행할 때 OldID를 묻는 팝업이 나타날 것입니다.

그런 다음 VBA에서 매개 변수화 된 쿼리를 실행하는 방법을 배워야합니다. 이 같은 뭔가 :

Set qdf1 = CurrentDb.QueryDefs("myQuery") 
qdf1.Parameters("OldID") = theOldID 
qdf1.Execute 

테스트하지, 내 문법은 꽤 괜찮 QueryDefs 검색 VBA 도움이되지 않습니다.

1

외부 테이블과 외부 테이블을 연결하는 두 개의 팔레트 (및 새 번호)의 위치를 ​​추적하는 새 테이블을 만들어야하는 이유는 무엇입니까? 원래 테이블?

이렇게하면 작동하지 않을 것이며 그렇지 않으면 중복 데이터의 악몽이 될 것입니다.

+0

설명하기가 어렵지만 같은 테이블에 있어야합니다. 같은 테스트 결과가 나온 두 개의 다른 숫자가 될 것입니다. L20444와 L20444B는 두 개의 다른 레코드이지만 테스트 결과는 동일합니다. 나는 명확하게 설명하고 있는지 모르지만 그것은 내 상사가 원하는 것입니다. 이게 도움이 되길 바란다. –

+0

답변을 주셔서 감사 드리며 중복으로 어떤 내용을 말하고 있는지 정확하게 볼 수 있습니다. 나는 그런 식으로하고 싶지만, 등은 코너에 반대하고, 그렇지 않으면 나는 상사에 의해 기분 상할 수 없다. 감사하지만 크게 감사드립니다. –