카탈로그로 사용하기 위해 pdf로 저장되는 ppt가 있습니다. 고유 한 제품 ID를 기반으로 텍스트 모양의 이름을 지정하고 액세스 데이터베이스에 대한 연결을 기반으로 텍스트 모양을 업데이트 할 수 있기를 바랍니다. 모양을 명명하고 입력 상자 (테스트 용)를 사용하여 vba로 값을 업데이트 할 수 있지만 모든 모양을 반복하고 고유 ID 기준과 일치하는 모양 텍스트를 업데이트하는 방법을 파악할 수 없습니다. 아래는 입력 상자에서 이름 바꾸기 및 업데이트를 테스트하기 위해 사용하는 것입니다.Powerpoint VBA Update Shape from
하위 UpdateShape() 희미한 oShape 모양으로
Dim objName
On Error GoTo CheckErrors
If ActiveWindow.Selection.ShapeRange.Count = 0 Then
MsgBox "You need to select a shape first"
Exit Sub
End If
objName = ActiveWindow.Selection.ShapeRange(1).Name
objName = InputBox$("Assign a new name and value to this shape", "Update Shape", objName)
If objName <> "" Then
ActiveWindow.Selection.ShapeRange(1).Name = objName
ActiveWindow.Selection.ShapeRange(1).TextFrame.TextRange.Text = objName
End If
Exit Sub
CheckErrors : 있는 MsgBox 프로그램 Err.Description
최종 하위
내가 생각하고있는 것은 이름을 할 수있는 카탈로그 창조자입니다 셰이프는 카탈로그에 넣는 이미지를 기반으로합니다. 가격 책정은 카탈로그를 작성할 고객을 기준으로 데이터베이스에서 가져옵니다. vba가 데이터베이스 레코드를 반복하고 모양 ID와 일치하는 제품 ID를 기반으로 판매 가격을 반환하고 싶습니다.
내가 ("MySlide로")을 설정 oShape = ActivePresentation.Slides를 사용하여 시도했다. 모양 ("은 myShape")와 oShape.TextFrame.TextRange.Text = "OBJNAME"
그러나 나는 텍스트를 얻을 수 없다 업데이트 및 "MySlide"대신 변수를 사용하는 방법을 알아낼 수 없습니다.
테이블의 이름은 tblProduct입니다. 제품 id 필드의 이름은 productid입니다. 판매 가격 필드의 이름은 saleprice입니다.
도움을 주셔서 감사합니다.
덕분에
스티브, 이것은 정확히 내가 한 것입니다! 나는 그것을 내 변수와 함께 작업한다. 각 필드를 업데이트하기 위해 레코드를 반복하는 액세스 쿼리를 열려고합니다. 내 질문에 답할 시간을내어 주셔서 감사합니다. – user3737686
내 병합 추가 기능의 또 다른 판매에서 자신을 이야기 했나요? ;-) –