• ベストアンサー

エクセル2003と2007のソート機能違い?

2007では下記の関数で実行することができるのですが 2003ではデバッグになってしまします。 エクセル初心者のため解読できずお手上げです。 2003でも2007と同じような動作をするためにどこをどのように変えればいいのでしょう? 知恵をお貸しください。 Worksheets("命令データ").Activate Worksheets("命令データ").Range("並べ替え") _ .Sort Key1:=Range("BY10"), Order1:=xlAscending

質問者が選んだベストアンサー

  • ベストアンサー
  • kybo
  • ベストアンサー率53% (349/647)
回答No.2

提示のコードには、Exce2003でエラーとなる原因の部分はありません。 おそらく、このコードを実行中のブックの方の問題だと思われます。 エラーとなるのであれば、「命令データ」という名前のシートがない。 「並べ替え」という名前を付けた範囲がない。 「並べ替え」という名前を付けた範囲の先頭行にBY10がない。 などが考えられます。 まず、「並べ替え」という範囲が、挿入→名前→定義の中にあるかどうか確認します。 次に、表がExcel2007で使用中のものとまったく同じかどうか確認しましょう。 コードの意味は以下です。これらのコードはExcel2007であっても同じです。 '、「命令データ」という名前のシートをアクティブにする Worksheets("命令データ").Activate ’「並べ替え」という範囲をBY10の列を昇順で並べ替える Worksheets("命令データ").Range("並べ替え") _ .Sort Key1:=Range("BY10"), Order1:=xlAscending

honyonyon
質問者

お礼

返事が遅くなってしまい、申し訳ありません。詳しく説明してくださったkvboさんをベストアンサーにさせていただきました♪ 早速Excei2007と並び替えの範囲を比べてみたところ並び替えの範囲が違っていました(> <)ありがとうございました。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

Range("並べ替え")では実際の並べ替えのセル範囲を例えばRange("BA10:BZ100")のようにすればよいでしょう。

honyonyon
質問者

お礼

ご回答ありがとうございます(0U0)。

関連するQ&A