次の方法で共有

エクセルのオートシェイプをセルに合わせるVBA Script

Anonymous
2020-01-23T07:07:15+00:00

以下のようなコードを実行しても意図したとおりセル内にオートシェイプを配置することができません。

コードの実行後にオートシェイプとセルのプロパティを調べると値が一致していないことも確認しました。

なぜでしょうか?

(office2010 ではできていたと思います。)

set myShape= selection.shaperange(1)

set myCell=myShape.TopLeftCell

with myShape

    .lockAspectRatio=msoFalse

    .Width=myCell.Width

    .Height=myCell.Height

    .Left=myCell.Left

    .Top=myCell.Top

end With

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

3 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2020-01-23T08:22:38+00:00

    自己解決できたので報告します。

    2つ解像度の異なるディスプレイを「表示画面を拡張する」状態で使っています。

    メインディスプレイでエクセルを表示している状態でコードの実行を行うと意図した動作となりますが、

    メインディスプレイではない方でエクセルを表示している状態でコードの実行を行うとオートシェイプが

    セルとズレてしまうことがわかりました。

    できれば表示ディスプレイがどちらであってもコードが正しく実行されるようにエクセルが更新されることを望みますが、

    このことをMicroSoftに伝えるにはどうしたらよいでしょうか?

    この回答は役に立ちましたか?

    4 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
  2. Anonymous
    2020-02-26T01:36:57+00:00

    バージョンによって違うかもですが、「ファイル」タブ(?)の左下の方に

    「フィードバック」というのがあり提案や不満点を送ることが

    一応できるようになっています

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2020-01-23T07:33:16+00:00

    VBA専用のフォーラムがあるため、並行してご投稿してみてください。

    https://social.msdn.microsoft.com/Forums/ja/hom...

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません