• 締切済み

excelVBAについて。

Sub sample064() ActiveSheet.Shapes.Range(_ Array(″img01″,″img02″,″img03″)_ ).Align msoAlignTops,False End Sub の所のFalseの所が何を意味するのかが分かりません。 教えて頂けると幸いです。

みんなの回答

  • NuboChan
  • ベストアンサー率47% (785/1650)
回答No.3

>trueは、どんな時に使えるのでしょうか? 回答を理解されていますか? 先に「エクセルの学校」でも同じ質問をされて 同じくEXCELでは、TRUEは利用でき無いと 回答受けていますが。。。。 (「エクセルの学校」では途中で進行が止まって放置状態) https://www.excel.studio-kazu.jp/kw/20241020203153.html PowerPoint のVBAではTrueが利用できるようですが 門外漢なので詳細は判りません。 わたしでは、これ以上  お役に立てそうにないのでこれで最後にします。

  • NuboChan
  • ベストアンサー率47% (785/1650)
回答No.2

この VBA コードにおける False パラメータの意味について Align メソッドの構文 ShapeRange.Align(AlignCmd, RelativeTo) このメソッドには2つのパラメータがあります AlignCmd: 整列の種類を指定します(この場合は msoAlignTops で上端揃え) RelativeTo: 整列の基準を指定します RelativeTo パラメータの意味 False を指定することで、選択された図形群全体の範囲内で整列が行われます 具体的には、 False: 選択された図形群の中で最も上にある図形に合わせて他の図形が整列されます。 True: ワークシート全体を基準にして整列されますが、Excel VBA では使用できません。    Excel VBA では RelativeTo パラメータに True を使用することはできません。これは Excel の仕様による制限です。 したがって、 sample064では、 "img01", "img02", "img03" という名前の3つの図形を選択し、それらの上端を揃えるように整列させています。 整列の基準は、これら3つの図形の中で最も上にある図形になります。

zasx1097
質問者

補足

trueは、どんな時に使えるのでしょうか?

  • MT765
  • ベストアンサー率57% (2080/3618)
回答No.1

AlignメソッドでmsoAlignTopsを使用して上端を揃える時に、Falseの場合はシート全体に対して揃える、Trueの場合は他のオブジェクトに対して相対的にそろえる、という違いとなります。 Shapes.Range(Array("図形名1", "図形名2", ...)).Align AlignType, RelativeTo でAlignTypeがmsoAlignTops、RelativeToがFalseになっているということです。

zasx1097
質問者

補足

Trueについて、詳しく教えて頂けると幸いです。