スプレッドシートで曜日を自動入力!関数の使い分けと土日色分け術
スプレッドシートで曜日を自動入力!関数の使い分けと土日色分け術を徹底追究! 知っておきたい トピックの裏側を分かりやすく展開します。
Q1:TEXT関数で「=TEXT(A2, "aaa")」と入力したのに「aaa」という文字がそのまま表示されてしまいます。
A1:数式を入力したセル自体の表示形式が「書式なしテキスト」になっている可能性があります。対象セルを選択し、上部メニュー「表示形式」>「数字」>「自動」に変更した上で、再度セルをダブルクリックしてEnterキーを押してください。
Q2:曜日を英語(Sun, Mon, Tue...)で自動表示させたい場合はどうすればいいですか?
A2:TEXT関数を使用する場合、フォーマット引数に「ddd」または「dddd」を指定します。例えば =TEXT(A2, "ddd") で「Mon」、=TEXT(A2, "dddd") で「Monday」が出力されます。
Q3:土日判定のWEEKDAY関数で、月曜始まり(月曜=1、日曜=7)にすることはできますか?
A3:可能です。WEEKDAY関数の第2引数に「2」を指定してください。=WEEKDAY(A2, 2) と記述することで、月曜日が「1」、土曜日が「6」、日曜日が「7」として返されるため、=WEEKDAY($A2, 2)>=6 という1つの条件式で土日両方をまとめて判定できます。
Q4:日付を入力していない空欄セルに「土」や「Sat」といった曜日が勝手に表示されてしまいます。
A4:スプレッドシートは空のセルを「数値の0」として認識し、シリアル値0に該当する「1899年12月30日(土曜日)」を返してしまうためです。数式を =IF(A2="", "", TEXT(A2, "aaa")) のようにIF関数で囲み、参照元が空欄の場合は空白を返すガード処理を入れてください。