advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 779 for シリアル値 とは (0.011 sec.)
シリアル値 (1875), とは (29348)
[[20200518105423]]
#score: 8288
@digest: ffe684c6385d19968bca8ece55442397
@id: 83600
@mdate: 2020-05-18T08:17:33Z
@size: 4825
@type: text/plain
#keywords: 三太 (43139), 大( (35939), 大= (19867), 値日 (8868), 後者 (6600), 付毎 (6003), 間帯 (5961), 精度 (5878), (三 (4754), arg2 (4464), 列10 (4113), endrow (4063), 付+ (3806), arg1 (3699), 値→ (3436), 2020 (3178), 付部 (3066), 数部 (3002), format (2931), 行di (2852), 列c (2536), 時刻 (2035), シリ (1926), 月) (1851), 者が (1808), が大 (1790), 対象 (1674), 象の (1673), ト検 (1546), ル値 (1526), (ok (1460), value (1284)
『日付の比較』(三太郎)
EXCELのVBAにて集計を行っています。 例えば本日の日付(2020/5/18)を対象に 以下の時間帯で集計を行う場合、 10:00〜10:30 〇〇件 10:30〜11:00 〇〇件 対象が0件になってしまいます。 対象のデータは"yyyy/m/d h:mm"でデータが格納されています。 10:00を日付にすると1900/1/0になるのが原因なのでしょか? 時間帯を対象の日付毎に合わせてから集計を行うのが大変なので、 時刻のみで集計を行いたいのですが可能でしょうか? < 使用 Excel:Excel2013、使用 OS:Windows7 > ---- シリアル値 日付 でネット検索してみてください。 (OK) 2020/05/18(月) 11:11 ---- >時間帯を対象の日付毎に合わせてから 意味不明です。 (OK) 2020/05/18(月) 11:13 ---- 訂正: 対象が0件になってしまいます。 ↓ 処理件数が0件になってしまいます。 >時間帯を対象の日付毎に合わせてから →10:00を2020/5/18 10:00とやらないと正しい処理件数になりません。 (三太郎) 2020/05/18(月) 11:22 ---- 再掲です。 >シリアル値 日付 >でネット検索してみてください。 (OK) 2020/05/18(月) 11:35 ---- 10:00:00 シリアル値→0.416666667 2020/5/18 10:00:00 シリアル値→43969.41667 (OK) 2020/05/18(月) 11:57 ---- 時間帯と対象のデータをシリアル値に変換してから比較するという事でしょうか? (三太郎) 2020/05/18(月) 12:11 ---- どういう集計方法で集計したのか説明がないと こちらは何が問題なのか分からないです。 読み返したら、手掛かりはありましたね。 ↓ >EXCELのVBAにて集計を行っています。 なら、そのコードをアップしてください。 (半平太) 2020/05/18(月) 12:20 ---- 現在のコードです。 この処理を行う前に時間帯に対象のデータの日付を付けています。 (Sheet1) 時間帯 B列 C列 B列 C列 10:00 10:30 → 2020/5/18 10:00 2020/5/18 10:30 10:30 11:00 → 2020/5/18 11:00 2020/5/18 11:30 Sub 集計() Dim LastRow As Long '時間帯の最終行 Dim Endrow As Long '対象のデータの最終行 Dim r As Range Dim c As Range Dim ws1 As Worksheet Dim ws2 As Worksheet Set ws1 = Worksheets("Sheet1") '集計を行うシート Set ws2 = Worksheets("Sheet2") '対象のデータがあるシート Worksheets("Sheet1").Select LastRow = ws1.Range("B" & Rows.Count).End(xlUp).Row Endrow = ws2.Range("B" & Rows.Count).End(xlUp).Row For Each c In ws1.Range("B5:B" & LastRow) For Each r In ws2.Range("B2:B" & Endrow) If r.Value >= c.Value And r.Value < c.Offset(0, 1).Value Then c.Offset(0, 2).Value = c.Offset(0, 2).Value + 1 End If Next Next End Sub (三太郎) 2020/05/18(月) 12:45 ---- 再び訂正すみません。 B列 C列 B列 C列 10:00 10:30 → 2020/5/18 10:00 2020/5/18 10:30 10:30 11:00 → 2020/5/18 11:00 2020/5/18 11:30 ↓ B列 C列 B列 C列 10:00 10:30 → 2020/5/18 10:00 2020/5/18 10:30 10:30 11:00 → 2020/5/18 10:30 2020/5/18 11:00 (三太郎) 2020/05/18(月) 12:47 ---- まず注意すべきことは、時刻データには2進数誤差が含まれていることです。 このため「日付+時刻」と「単なる時刻」を比べる場合、 そもそも日付部分(=整数部分)が余分である上に、さればと 「日付+時刻」から日付を取って時刻部分(小数部分)同士で比較できるかと言うと、 そうでもないのです。 何故なら、日付部分でデータ精度が食いつぶされているので、 残った小数部分の精度は、純然たる時刻の精度より劣るのです。 なので、比較は同じ精度にしてから実施するのが安全です。 以下は一案です。 > If r.Value >= c.Value And r.Value < c.Offset(0, 1).Value Then ↓ If Format(r.Value, "h:nn") * 1 >= Format(c.Value, "h:nn") * 1 And _ Format(r.Value, "h:nn") * 1 < Format(c.Offset(0, 1).Value, "h:nn") * 1 Then (半平太) 2020/05/18(月) 13:19 ---- 頂いたコードを追加してみましたがエラーが出てしまい、出来ませんでした。 エラー: 「実行時エラー 13 型が一致しません」 (三太郎) 2020/05/18(月) 14:05 ---- 参考HPです。 http://www.asahi-net.or.jp/‾ef2o-inue/vba_k/sub04_200.html (OK) 2020/05/18(月) 14:16 ---- If (後者が大(c.Value, r.Value) = True Or 後者が大(c.Value, r.Value) = "") And 後者が大(r.Value, c.Offset(0, 1).Value) Then Function 後者が大(arg1, arg2) If Format(arg1, "yyyy/m/d") < Format(arg2, "yyyy/m/d") Then 後者が大 = True: Exit Function If Format(arg1, "yyyy/m/d") > Format(arg2, "yyyy/m/d") Then 後者が大 = False: Exit Function If Format(arg1, "h:n") < Format(arg2, "h:n") Then 後者が大 = True: Exit Function If Format(arg1, "h:n") > Format(arg2, "h:n") Then 後者が大 = False: Exit Function End Function (mm) 2020/05/18(月) 15:46 ---- 下記処理はここに入れればいいのでしょうか? > If r.Value >= c.Value And r.Value < c.Offset(0, 1).Value Then ↓ If (後者が大(c.Value, r.Value) = True Or 後者が大(c.Value, r.Value) = "") And 後者が大(r.Value, c.Offset(0, 1).Value) Then 実行してみましたが、0件でした。 (三太郎) 2020/05/18(月) 17:17 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202005/20200518105423.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97041 documents and 608209 words.

訪問者:カウンタValid HTML 4.01 Transitional