• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelVBA Deleteの引数省略について)

ExcelVBA Deleteの引数省略について

このQ&Aのポイント
  • ExcelVBAにおけるDeleteメソッドの引数を省略した場合のシフト方向について、説明が矛盾しているため、正しい挙動を知りたい。
  • 一部のサイトでは、【行数 = 列数】の場合は上方向にシフトし、【行数 < 列数】の場合は左方向にシフトすると説明しているが、別のサイトでは【行数 = 列数】の場合は左方向にシフトし、【行数 < 列数】の場合は上方向にシフトすると説明している。
  • 正確な挙動を知りたいが、引数を省略しないようにすることを推奨されるため、ハッキリとした回答が欲しい。

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

  • ベストアンサー
  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.2

>>B1:D4は、横長なので、上方向になるはず…。<< エクセルでデータを扱うときの範囲はセル範囲で考えてください。縦長です。 横はB,C,Dの3つ 縦は1,2,3,4の4つ ですから左シフトします。 お書きになっている通りですが、他のデータの位置を考えると引数を省略しないのが確実です。 Range("b5:f8").Delete 'Shift:=xlShiftUp 'xlShiftToLeft

cat-cat14
質問者

お礼

回答ありがとうございます! ほんとですね!!縦長でした!!! 納得です。 省略はしないよう心がけます、ありがとうございました!!

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

エクセル2007でしたが、以下の通りの振る舞いでした。 行≦列ならば上方向(横長) 行>列ならば左方向(縦長)

cat-cat14
質問者

お礼

回答ありがとうございました! ExcelのVerも書かずにすみませんでした^^; 無事解決しました。ありがとうございます。

関連するQ&A

専門家に質問してみよう