Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Microsoft 365)
Power Query カスタム関数
投稿日時: 24/02/05 08:56:04
投稿者: chibikko

Power Queryのカスタム関数で下記関数を作成したのですが、なぜかの年だけが結果表示されません。
 
修正箇所がわからず悩んでいます。
 
 
let
    ソース = (日付 as date) =>
    let
        Year = Int64.From(Date.ToText(日付, "yyyy"))
 
    in
 
Text.Middle("申酉戌亥子丑寅卯辰巳午未",Number.Mod(Year,12)+1,1)
 
in
   ソース
[/b]

回答
投稿日時: 24/02/05 09:39:11
投稿者: んなっと

Text.Middle("申酉戌亥子丑寅卯辰巳午未",Number.Mod(Year,12)+1,1)
 ↓
Text.Middle("申酉戌亥子丑寅卯辰巳午未",Number.Mod(Year,12),1)
 
Text.Middleのインデックスは1からではなくて0から始まるので、
最初の文字 申 は インデックス 0
最後の文字 未 は インデックス 11 で指定します。
 
12で割った余りも0から11までを繰り返すので、そのまま引数に使えばうまくいきます。
余計な +1 をすると1から12を繰り返してしまいます。

投稿日時: 24/02/05 09:43:26
投稿者: chibikko

んなっと様
 
ご指摘の箇所を修正した所、「未」も表示されるようになりました。
 
ありがとうございました。