|
▼タケル さん:
こんばんは
アップされたサンプルデータも、まだ見ていませんし、コードも、ざらっと眺めただけですが、
ループ構文の書き方としては、大いに改善すべき点はあるとして、
まず、ほんとうに『型が違います』というエラーでしたか?
1004 で、『不適切です』といったエラーではなかったですか?
> Sheets(1).Range(Cells(i, "D"), Cells(i + Y - 1, "D")).Copy Sheets(2).Range(Cells(m, 4), Cells(m, 4 + Y))←「型が違います」と表示され処理ができない.
これはSheets(1)のD列の『縦』の領域を、Sheets(2)のD○から右の『横』の領域にコピペしようとしていますね。
コピーの後のペースト操作で行列を入れ替えというのがありますね。
それをシートの上で実行して、それをマクロ記録してみてください。
PasteSpecial で Transposeが指定されたコードが生成されるはずです。
それと、なぜ
Application.DisplayAlerts = False
が、あるのでしょう?
ざっと見る限り、これが必要なコード実行は見あたりませんが?
|
|