2016-06-25 1 views
0

카메라 도구를 사용하여 이미지를 사용하여 다른 데이터 표를 표시하려고합니다. 나는 새로운 범위 형상 수식을 변경하고, 데이터는 다른에있을 때 자동으로 업데이트되지 않는 한 그때 형상 스케일 업데이트 Excel 카메라 도구 - 이미지 크기를 100 %로 조정하십시오.

  1. 코드 아래의 작동 시험 삼아

    , 시트

    2.이 버튼을 두 번 클릭하면 작동합니다. 첫 번째 클릭으로 소스가 변경되지만 다시 두 번 클릭하여 100 %로 재설정하십시오.

왜 이런 생각입니까?

Private Sub CommandButton1_Click() 

Shapes("Display").DrawingObject.Formula = "=Pivots!AS2:BB10" 
Shapes("Display").DrawingObject.ShapeRange.ScaleWidth 1, msoTrue 
Shapes("Display").DrawingObject.ShapeRange.ScaleHeight 1, msoTrue 

End Sub 

Private Sub CommandButton2_Click() 

Shapes("Display").DrawingObject.Formula = "=Pivots!AS13:BA27" 
Shapes("Display").DrawingObject.ShapeRange.ScaleWidth 1, msoTrue 
Shapes("Display").DrawingObject.ShapeRange.ScaleHeight 1, msoTrue 

End Sub 

답변

2

DoEvents 이런 일이 일어날 때 시도 마법의 주문과 같다. 대개는 도움이되지 않지만 이번에는 도움이됩니다!

Private Sub CommandButton1_Click() 

Shapes("Display").DrawingObject.Formula = "=Pivots!AS2:BB10" 
DoEvents 
Shapes("Display").DrawingObject.ShapeRange.ScaleWidth 1, msoTrue 
Shapes("Display").DrawingObject.ShapeRange.ScaleHeight 1, msoTrue 
End Sub 

Private Sub CommandButton2_Click() 

Shapes("Display").DrawingObject.Formula = "=Pivots!AS13:BA27" 
DoEvents 
Shapes("Display").DrawingObject.ShapeRange.ScaleWidth 1, msoTrue 
Shapes("Display").DrawingObject.ShapeRange.ScaleHeight 1, msoTrue 
End Sub 
+0

나는 이미 그것을 시도했지만, 스케일링이 '밀려나'야한다고 생각하는 코드의 네 번째 줄로 넣었지만, 지금은 나에게도 의미가 있고 효과가있다! 덕분에 –

+0

나는 똑같은 짓을했으나 어떻게 든 정확한 위치를 파악할 수있었습니다. 다행히 도울 수있어. –