0

Excel 2007 ワークブックに画像があり、その上にいくつかのテキスト ボックスがあります。画像とテキストは、私が置いた VBA コードで約 5 分ごとに変わります。

画像オブジェクトが背面に移動したため、テキスト ボックスが上部に表示されるはずですが、何らかの理由で表示されません。

Excel 2003 では正常に動作しますが、2007 では動作しません。

誰でもその理由を知っていますが、最も重要なのは、バグのように見えるものを修正する方法はありますか?.

代わりに([挿入]> [画像]から)画像を挿入しようとしましたが、それは機能します(テキストは画像の上にあります)が、それは異なるタイプのオブジェクトであり、VBAコードをこのタイプの画像オブジェクト。

フォーラムで見つけた次のコードを試しましたが、画像に「Image_2」という名前を付けることができないため、何も起こりません。ランダム セレクター (photo_array(rrr)) を使用して、画像とテキストを自動的に変更します。

前もって感謝します

            strPic = "Image_2"
            Set shp = WS.Shapes(strPic)

            'Capture properties of exisitng picture such as location and size
            With shp
                t = .Top
                l = .Left
                h = .Height
                w = .Width
            End With

            WS.Shapes(strPic).Delete

            Set shp = WS.Shapes.AddPicture(ThisWorkbook.Path & "\images\" & photo_array(rrr), msoFalse, msoTrue, l, t, w, h)
            shp.Name = "Image_2"  ' strPic
            shp.ScaleHeight Factor:=1, RelativeToOriginalSize:=msoTrue
            shp.ScaleWidth Factor:=1, RelativeToOriginalSize:=msoTrue
4

1 に答える 1

0

新しい画像を追加し続けるため、デフォルトで の一番上に配置されていZOrderます。

最後に次の行を追加してみてください。

shp.ZOrder msoSendToBack

これにより、写真が元の位置に戻るはずです... 後ろに。

于 2012-10-08T13:15:59.090 に答える