シェイプを回転しようとしています。以下は関連するスニペットです。VBA ShapeRange.Rotationプロパティがランダムに動作を停止します
Sheets("Sheet1").Shapes.Range(Array("Down Arrow 8")).Select
Selection.ShapeRange.Rotation = 90 + Sheets("Sheet2").Range("H8")
私の問題は、最後の行がランダムに動作し、ランダムにしないことです!私はそれを(文字列の代わりに)数値として持っていましたが、これは動作しません!それは正常に働いて、その後、私はマクロにいくつかの変更を加え、それは有用にエラー438を返しました - オブジェクトはこのプロパティまたはメソッドをサポートしていません。私は(コードを変更することなく)デバッグなどをしながら作業し始めました。その後、私はいくつかの変更を加え、それは動作を停止し、それは良いために働くことを停止したようだ。私は文字通り、記録されたマクロからこのコードをコピーしました。
私は何をしようとしている:それは私のコードを変更せずに動作する理由 を私は本当に理解していないどのような変数を宣言し、変数
を使用して文字列 に値を変換するために、CStr関数()を使用しています彼らはコードを変更せずに作業を停止します(関連する行)
Selectionではなく実際のShapeオブジェクトを使用します。選択が必ずしもシェイプになるとは限りません。 – Comintern