我有一个公式来计算年度的第一个星期五,它可以正常工作。 我知道公式是如何得到答案的,但是,我似乎找不到公式背后的原因。公式是:
=DATE(YEAR(TODAY()),1,8)-WEEKDAY(DATE(YEAR(TODAY()),1,2))
这使我们得到2020/01/08-5 = 2020/01/03,这是年度的第一个星期五。但是,为什么公式选择8和2作为日期呢? 有人可以解释原因。
答案 0 :(得分:1)
该公式的第一个显而易见的部分是C:\Users\Andrej>flutter doctor -v
[√] Flutter (Channel stable, v1.17.1, on Microsoft Windows [Version 10.0.18363.836], locale mk-MK)
• Flutter version 1.17.1 at C:\Flutter\flutter
• Framework revision f7a6a7906b (8 days ago), 2020-05-12 18:39:00 -0700
• Engine revision 6bc433c6b6
• Dart version 2.8.2
[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at C:\Users\Andrej\AppData\Local\Android\sdk
• Platform android-29, build-tools 29.0.3
• Java binary at: C:\Users\Andrej\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\192.6392135\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.
[√] Android Studio (version 3.6)
• Android Studio at C:\Users\Andrej\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\192.6392135
• Flutter plugin version 45.1.1
• Dart plugin version 192.8052
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[!] VS Code (version 1.45.1)
• VS Code at C:\Users\Andrej\AppData\Local\Programs\Microsoft VS Code
X Flutter extension not installed; install from
https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[√] Connected device (1 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
! Doctor found issues in 1 category.
会给您一个月的第八天,这不能是第一个星期五,因为前7天中的一个必须是星期五。
我的猜测是,第二部分有一些争执。 X <- read.csv(url("https://raw.githubusercontent.com/hkil/m/master/z.csv"))
energy <- jsonlite::fromJSON(URL)
# Plot
sankeyNetwork(Links = energy$scid, Nodes = energy$group, Source = 'source',
Target = 'target', Value = 'value', NodeID = 'name',
units = 'TWh', fontSize = 12, nodeWidth = 30)
# Colour links
energy$links$energy_type <- sub(' .*', '',
energy$nodes[energy$links$source + 1, 'name'])
sankeyNetwork(Links = energy$links, Nodes = energy$nodes, Source = 'source',
Target = 'target', Value = 'value', NodeID = 'name',
LinkGroup = 'energy_type', NodeGroup = NULL)
会给您从一个月的第一天到上一个星期日的天数。但是,如果您要寻找上一个星期六,则需要DATE(YEAR(TODAY()),1,8)
或WEEKDAY(DATE(YEAR(TODAY()),1,1))
。
最后,每月{1}的星期几WEEKDAY(DATE(YEAR(TODAY()),1,1)) + 1
是每月8号之前的星期几。