- ベストアンサー
マクロの修正点について
- Excel2003で作成したマクロで、結合セルの問題が発生しています。
- 結合セルを解除してマクロを実行すると表が乱れるため、他の修正点を探しています。
- マクロの内容を示すファイルがオンラインストレージにアップロードされています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
なぜ、A1からになっているのですか? A2からではないのですか? Range("A2:E347").Sort Key1:=Range("A3"), Order1:=xlAscending, Header:= _ xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin, DataOption1:=xlSortNormal #1の方と違うのは、 Header:= xlYes という点です。明らかに、項目が存在するなら、「Header :=xlYes」です。 ただし、2行目に結合セルがない場合に限りますが。
その他の回答 (1)
- bin_go
- ベストアンサー率25% (2/8)
Range("A1:E347").Sort Key1:=Range("A3"), Order1:=xlAscending, Header:= _ xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin, DataOption1:=xlSortNormal この部分のrangeを Range("A3:E347").Sort Key1:=Range("A3"), Order1:=xlAscending, Header:= _ xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin, DataOption1:=xlSortNormal A3からにしたらいけそうですが。
お礼
ご回答いただきましてありがとうございます。 お礼が遅くなりまして申し訳ありませんでした。 ご教示いただきました通り、書き換えて実行してみました。 すると、1~2行目は確かに動くことがなくて良かったのですが、 昇順に並び替えてるにも関わらず、表がメチャメチャになるほど並び順が狂ってしまいました。 おそらく原因は、表の至る所に空白セルがあることではないかと推測しています。 それについては私の方でもう少し表の構造を考えていかなくてはならないようです。 今回の質問を通じて、新たな問題が見つかったのでそれはまた後日試行錯誤してみます。 ありがとうございました。
お礼
ご回答いただきましてありがとうございます。 お礼が遅くなりまして申し訳ありませんでした。 先日も誠にありがとうございました。 ご教示いただきましたVBAが非常に使いやすく稼動しております。 ありがとうございます。 話しを戻しますが、 なぜA1からになってるかは、正直理由が私にも分かりません。 というのは、マクロの機能を使って作成したら、このようなVBAの内容になったという感じです。 ご教示いただきました通り、書き換えて実行してみました。 1の方にも書きましたが、やはり空白セルがあると、うまく並び替えられないようです。 もう少し表の構造を見直してみます。 ありがとうございました。