[[20040927155947]] 『シートを末尾に移動』(ちづ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シートを末尾に移動』(ちづ)

 またまた教えてください。

 Sheets("入力シート").Select
    Sheets("入力シート").Copy After:=Workbooks("移動先.xls").Sheets(6)
                              ==========
                                ↑ココ

 マクロの記録で、「シートの移動またはコピー」→(末尾へ移動)
 にしたのですが、移動先が固定されてしまいました。
 シート数が増えるため、常に末尾へ移動させたいのですが
 どのような構文が必要なのでしょうか。

 アドバイスを宜しくお願いいたしますm(_ _)m。

 Countプロパティでシート数を数えてみては如何ですか?
Worksheets.Count
(ケン)


 ケンさん、早速ありがとうございます。
 VBAを勉強しはじめたばかりなので、よろしければ根気よく教えてください。
 Worksheets.Countを初めて使ってみました。

    For i = 1 To Worksheets.Count

     Sheets("入力シート").Copy After:=Workbooks("移動先.xls").Worksheets(i + 1)

 Next i

 自分なりに考えて作ってみましたが、やっぱりマクロを走らせるとうまく末尾に 
 いってくれません。
 ヒントでもいいので、再度アドバイスをいただけますか? (ちづ)

  Sheets("入力シート").Copy After:=sheets(sheets.Count)

   (INA)

 変数を使い
shcut = Workbooks("移動先").Sheets.Count
Sheets("入力シート").Copy After:=Workbooks("移動先.xls").Sheets(shcut)
こんな感じでよいと思います。
(ケン)


 お礼が遅くなりましたm(_ _)m

 あらためまして・・・
 INAさん、ケンさんありがとうございました!
 ケンさんの構文で見事末尾に移動させることができました。

 ループ処理なんてまったくいりませんでしたね・・・ホント恥ずかしい・・・。
 他の方が作られたVBEを拝見すると、「なるほど!」と理解できるの
 ですが、自分で考えるとそれこそ悩みの無限ループに陥りそうです。

 INAさんが教えてくださったVBEですと同じBOOKの末尾に
 追加されますね。でも、コレも勉強になります。
 いつもありがとうございます。

 何事も実践・・・。またお世話になると思いますが、
 よろしくお願いいたしますm(_ _)m。  (ちづ)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.