
No.6
- 回答日時:
日付の関数でWEEKDAY関数が見つかったが、曜日でなく数字だったから質問、と察します。
このWEEKDAY関数結果からさらにCHOOSE関数使うと月火水と変換できます。
CHOOSE(WEEKDAY(求めたい日付),日,月,火・・)という感じです。
CHOOSE関数は、ヘルプやネットでもWEEKDAYの曜日変換説明と合わせて掲載される事多いです。こちらも覚えた方が良いと思います。CHOOSE関数を学習して下さい。
どれを使ったらダメという訳でないので参考に。
No.5
- 回答日時:
range("B1") = weekdayname(weekday(range("A1")),true)
なんてやり方もありはしますが,format(range("A1"),"aaa")の方が手っ取り早いですね。
range("B1") = range("A1")
range("B1").numberformatlocal = "aaa"
あるいはそもそも
range("A1").numberformatlocal = "m/d(aaa)"
のようなやり方で済ませてしまう場合も多いです。
#余談
しばしばweekday関数(VBAであれワークシートの関数でアレ)で曜日の数字を計算する事を,「曜日を表示する」と勘違いしている人を見かけます。
WEEKDAY関数で1,2,3を計算したセルに曜日を表示する書式を付けると,たまたま正しい曜日の文字を表示してしまうのが勘違いの主な原因ですが,WEEKDAY関数はあくまでも曜日に対応する1,2,3…の数字を計算するだけのものです。
「正しい」使用例: =CHOOSE(WEEKDAY(TODAY()),"月","月","火","水","木","金","金")
正しい使用例: セルには年/月/日の日付をそのままにしておき,書式で aaa や aaaa の表示をつける
正しい使用例: =TEXT(TODAY(),"aaa") などで,実文字としての曜日の文字を計算させる
No.3
- 回答日時:
どうしてもWeekday関数を使いたければ
Sub Sample01()
If IsDate(Range("A1").Value) Then
Select Case Weekday(Range("A1").Value)
Case 1
Range("B1").Value = "日曜日"
Case 2
Range("B1").Value = "月曜日"
Case 3
Range("B1").Value = "火曜日"
Case 4
Range("B1").Value = "水曜日"
Case 5
Range("B1").Value = "木曜日"
Case 6
Range("B1").Value = "金曜日"
Case 7
Range("B1").Value = "土曜日"
End Select
End If
End Sub
Sub Sample02()
Dim myAr()
myAr = Array("日", "月", "火", "水", "木", "金", "土")
If IsDate(Range("A1").Value) Then
Range("B1").Value = myAr(Weekday(Range("A1").Value) - 1)
End If
End Sub
のようになりますね。
ご覧になってお分かりのようにWeekday関数は1から7までの数値を返しますので、その数値を日本語に変換してあげる手間がかかります。その点、
Range("B1").Value = Format(Range("A1").Value, "aaa")とした方が、日本語変換はFormatで簡単にできちゃいますから楽ですよね。
No.2
- 回答日時:
まずは、VBAを使わずに、B1に
=A1
と入力して、B1の表示形式を aaa にしてみてください。
それで何が起きるのかが判れば、#1の回答の意味も少しは解ると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ExcelにてA1セルに1、B1セルに月と入力した際に、A列に日付、B列に曜日が入力される様になる為 1 2023/03/02 06:47
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Excel(エクセル) Excleマクロ セル値の代入と文字列の結合について 3 2022/10/05 16:47
- Excel(エクセル) Excelで小数表記をそのまま角度表記にしたい 5 2022/04/04 12:34
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Excel(エクセル) Excelで祝日を除く1回目の金曜日を返す 3 2023/01/31 16:07
- Visual Basic(VBA) 昨日、質問した件『VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカ 4 2022/04/07 14:39
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelに入力した個々の日付の数...
-
入力後に日付順になるように自...
-
日付だけを変更して印刷(Excel)
-
Excelで半年後の日付を計算したい
-
エクセル関数で日付かどうかの...
-
【マクロ】A列にある、日付(本...
-
日誌を作るため印刷時に日付を...
-
前々回の質問で大喜びのtoday()...
-
エクセルで数字列の間に『/』を...
-
31:30:00が1900/1/1 7:30:0
-
ファイルのオープン時に今日の...
-
エクセルで日付入力欄を作成し...
-
エクセルでENTERを押すと数式が...
-
アクロバットでスタンプを作る...
-
エクセル表からある項目と同じ...
-
Excelで、年だけの「西暦」から...
-
Excelで8/26等の日付を全てその...
-
Excelの最終行に上行書式などを...
-
事業所郵便番号をダウンロード...
-
☆Excelエクセルで入力した日の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】A列にある、日付(本...
-
Excelに入力した個々の日付の数...
-
日付だけを変更して印刷(Excel)
-
Excelで半年後の日付を計算したい
-
エクセルでENTERを押すと数式が...
-
31:30:00が1900/1/1 7:30:0
-
入力後に日付順になるように自...
-
Excelで8/26等の日付を全てその...
-
エクセルで数字列の間に『/』を...
-
エクセル 当番表の作り方 エク...
-
エクセルで日付入力欄を作成し...
-
ファイルのオープン時に今日の...
-
エクセル関数で日付かどうかの...
-
エクセルで1年後の月末を表示さ...
-
EXCELで直近の日付を抽出する関数
-
エクセル グラフ 軸の日付表記...
-
excelで月末日を判定したい
-
WORDで翌日や翌々日の日付を表...
-
ワード差込について
-
日付の照合でFALSEになります。
おすすめ情報