次の方法で共有

2007で使えたマクロが2013では使えなくなりました。

Anonymous
2014-04-01T10:00:55+00:00

Excel2007までは、以下の処理で、貼り付けた写真枚数を一枚ずつセルの位置に合わせて移動できたのですが

 2013では一枚だけしか処理してくれません。

    ans = Application.Dialogs(xlDialogInsertPicture).Show

     If ans Then

         Selection.ShapeRange.LockAspectRatio = msoFalse

         Selection.ShapeRange.Height = 277 - 3

         Selection.ShapeRange.Width = 370 - 5

         Selection.ShapeRange.Rotation = 0#

        i = 1

        For Each sh In Selection.ShapeRange   ←貼り付けられた写真が2007では

                                 すべて選択されていると認識していますが

                                 2013ですと一枚しか選択されていない状態

                                 になってしまうのか、この部分をどう訂正

                                 するべきか教えてください。

            If sh.Type = msoPicture Then

                f_open(i) = sh.AlternativeText

                sh.Cut

                Cells(start_r + (i - 1) * 14, 3).Select

                ActiveSheet.Paste

             End If

            i = i + 1

        Next

     End If

張り付けた写真が数枚でも、1枚だけ処理をして、for Next

を抜けてしまいます。

Selection.ShapeRange の前に、写真のすべて選択の記述を書き込めばと思うのですが

どういう記述にするのかわかりません。よろしくお願いいたします。

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

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

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

質問作成者が受け入れた回答

Anonymous
2014-04-02T03:31:19+00:00

BANSUI さん、アドバイスありがとうございます。

azm_tka さん、こんにちは。

マイクロソフト コミュニティをご利用いただき、ありがとうございます。

Excel 2007 で使用できていたマクロが Excel 2013 では思い通りの動作にならないということですね。

azm_tka さんが書かれているように、マクロのコードに修正や工夫が必要なのかもしれないですね。

修正方法について情報を探してみたのですが、参考となりそうな情報は見つけられませんでした。。

マクロや VBA の質問については専門の VBA フォーラムがあるので、こちらのフォーラムにも投稿し情報を集めてみてはいかがでしょうか。

経験をお持ちの方から専門的なアドバイスも集まりやすくなると思います。

Visual Basic for Application (VBA)

投稿される場合は、こちらのスレッドに書き込んでいただいたように、作成コード全文を書いて投稿するとよいと思います。

よろしければ活用してみてくださいね。

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

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

質問作成者が受け入れた回答

Anonymous
2014-04-01T10:30:21+00:00

下記サイトの『Microsoft Excel でマクロを使えるようにする』をご覧下さい。

http://iinamotto.com/2013/04/597.html

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

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

1 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2014-04-02T06:15:00+00:00

    大沢  さま

    お手数をおかけいたしまして申し訳ありませんでした。

    さっそくVBAフォーラムに質問を転送いたします。

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

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