今日から、指定した月の月末までの日付範囲を
取得する方法ありますでしょうか?
月末を取得する方法は↓を使えばできそうなのですが。
http://www.futomi.com/subroutine/getlastday.html
日付範囲を取得する方法が思いつきません。
今日~9月末までの日付を配列で取得したい。
↓
[返却データ] 8/6 /8/7・・・9/29/ 9/30
No.1ベストアンサー
- 回答日時:
あんまり考えずに作ったんで分かりにくい部分があるかもしれませんが、一応。
# 今日から指定月の末日までの日付(m/d)のリストを返す
sub getDateList_Custom { # year, month -> @date
my @date;
my ($ey, $em) = @_;
my ($sd, $sm, $sy) = (localtime)[3..5];
for (my $tm = ($sy+1900)*12+$sm; $tm <= $ey*12+$em-1; $tm++) {
my $cy = int($tm / 12);
my $cm = $tm % 12 + 1;
push @date, map "$cm/$_", $sd .. getLastDay($cy, $cm);
$sd = 1;
}
return @date;
}
# 月末日を返す
sub getLastDay { # year, month -> day
return (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)[$_[1] - 1]
+ ($_[1] == 2 && isLeap($_[0]));
}
# うるう年か調べる
sub isLeap { # year -> bool
return $_[0] % 4 == 0 && ($_[0] % 400 == 0 || $_[0] % 100 != 0);
}
各関数の使い方は、
sub 関数名 { # 引数リスト -> 戻り値
のように書いておきました。
year には4桁の西暦を、month には 1 ~ 12 を指定してください。
質問のURLの GetLastDay ように、必要とするモジュールや西暦の制限はありませんが、月の値の範囲や過去かどうかのチェックは行っていないので、必要なら加えてください。
また、インデントを見やすくするため全角スペースを使っているので、コピペする場合はタブなどに変換してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- 法学 根抵当権分割譲渡登記 債権の範囲について 1 2023/02/06 10:59
- 財務・会計・経理 もう一度減価償却について質問です。 (pc11月31日に、利用開始して1月末決算) 決算終了後の減価 2 2023/04/12 15:08
- 法学 会社法166条 但し書きについて 5 2022/12/10 07:01
- Excel(エクセル) 条件付き書式 ある範囲で色がついているセルと同行の別のセルに色を付けたい 4 2022/04/20 07:04
- Excel(エクセル) 単価シートから単価をエクセル関数で自動取得する方法 1 2023/07/02 22:00
- 会社・職場 有給を取得したいと考えているのですが、取りづらい状況で取得しようか悩んでいます。 6月末に引っ越しを 4 2022/06/07 14:35
- バイク免許・教習所 ゴールド免許について 1 2023/03/17 23:11
- 会計ソフト・業務用ソフト 固定資産管理で貸し出したマンションの登録操作について【弥生の青色申告】 2 2023/03/07 11:05
- 投資・株式の税金 一般口座で同一銘柄の総平均法のことで 1 2023/02/27 22:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
前日の日付取得するには?
-
Perlでsprintf("%02d",$month)...
-
1桁の日付に0を付ける
-
Application.ScreenUpdating = ...
-
JSONで文字列が長い時
-
formで特定のinputを送信しない...
-
<SELECT>タグの折り返し
-
16進の10進変換について
-
実行時エラー 3020の対策
-
文字の横にプルダウンを表示さ...
-
デ-タテ-ブルの内容での更新...
-
セレクトメニューで2つの項目...
-
数値英単語変換
-
セレクトボックスのselected属...
-
複数列を持ったリストボックス...
-
selectタグ内の特定のoptionの...
-
【メモリ不足で落ちる(python)】
-
STLのlistで重複するものだけを...
-
【至急!!!】python言語で本を見...
-
パイソンのクラスについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Perlでsprintf("%02d",$month)...
-
1桁の日付に0を付ける
-
日齢計算プログラム
-
Perlの日付の比較に関して
-
当日の日付をプルダウンメニュ...
-
Cookieの有効期限について
-
CSVファイルに出力
-
日付の差分の求め方(日、分)
-
うるう年の出し方
-
Schemeのプログラミング うる...
-
Perlで60進数を作りたい
-
PHPのstrtotimeのようなものあ...
-
2つの日付・時間の差分を求め...
-
a shower.
-
日付範囲をの連番と月末を取得
-
体重が3kg増える/減る の英語...
-
C言語でのPICプログラミング
-
前日の日付取得するには?
-
ソースの詳細を教えてください。
-
PerlからMysqlに接続してデータ...
おすすめ情報