PowerPoint2013Functionプロシージャを利用して2次元配列に画像の位置やサイズを格納しておいて、一気にExcelに書き出す形のPowerPointマクロをご紹介しました。今回はFunctionプロシージャを使わないで、ループ処理の中で配列のサイズ変更を繰り返しながらデータを格納して、Excelのワークシート関数TRANSPOSE関数を利用して、一気に書く出すマクロをご紹介します。[スポンサードリンク]配列とTRANSPOSE関数を使って画像の位置とサイズをExcelに出力するサンプルマクロ以下のようなマクロで、画像の位置とサイズをExcelに出力することができます。"画像がないため処理を終了します。12次元配列のデータを残しつつサイズを変更しています。n)ここで重要なのは、サイズを変更しているのが2次元配列の第2次元であるということです。Applications)の多次元配列で要素数を変更できるのは、最後の次元だけですから、これではダメです。2次元配列の第1次元のサイズを変更しようとしているからです。n)というコードは、表の行数を5行で固定しておいて、列を増やすイメージです。配列のサイズを拡大したら、スライド番号・上端からの距離・左端からの距離・高さ・幅を格納します。P2CMとなっていて大きく異なる部分です。"幅"2次元配列のデータを一気に書き出しています。.WorksheetFunction.Transpose(arr())この部分もこのマクロの重要なポイントです。配列の行・列を入れ替えるために、Excelのワークシート関数・TRANSPOSEを利用しています。TRANSPOSE関数は、セル範囲の行・列変換だけでなく、配列の行・列変換も行うことができます。True.Range("A1").CurrentRegion.EntireColumn.AutoFitExcelを表示しています。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。