現在コードを細かく見たり、作成する時間が持てない状況です。 申し訳ありませんが、以下のようなこちらの考えを書かせていただくだけになるかと思います。 お作りになっているコードがファイル名の書き出しや、リネームといった作業を行うようになっているので、 「セルA7〜A100のデータを手動で並び替え」は無駄なことと思います。 コードの中にこの並べ替えを書く必要があると思います。 マクロの流れとしては 分割ソフトで作成されたPDFファイルがフォルダに保存される これを順次読み出し、A7以降にファイル名を書き出す。<--- ここでは順番がおかしくなる。 ここで、A7以降を並べ替える。<--- ここで昇順の並べ替えを行う 並べ替えた順番でファイルを呼び出して、ファイルのリネームを行う。 といった処理にしたらよいのでは・・・と思います。
> 実際には1_○×△.pdf、2_○×△.pdf、・・・50_○×△.pdfのようなものになりますが 後ろの _○×△ は共通のようですので i&"_○×△" でファイル名になります。 いや、_○×△ は共通ではないというのなら、この方法は使えません。 他の方法を考えることになると思います。 と、書きましたが、 もしかして、セルA7〜A100 とセルB7〜B100 の名前の並びが変になっているのが問題なのですか? そうであれば、A列を並べ替えればよいと思いましたがいかがでしょう? (Excelの並べ替えで1〜50まで昇順に順番に並べられるので)
>それをフォルダ1にあるExcelファイルネームを付けようとするのですが、 >フォルダ2のpdfファイルを読み込む際、 >1、2、3・・・の順ではなく、1、10、11・・・19、2、20、21・・・ >というような順番で読み込んでしまい、 >Excelとの並びが合わなくなってしまいます。 >結果、2.pdfに付けたいファイルネームが10.pdfに付いてしまいます。 これが問題なら、読み込み方を変えればよいのでは? Dir関数で読み込んでいるからそのようになっているのなら 他の方法を考えて、ファイル名は1〜10の順番になっているので その番号を指定して Fot i=1 to 10 とすれば順番になるので、この i をファイル名に使えばよいのでは? for 〜 Next からは 該当番号がなくなって時に Exit で抜ければよいと思います。