実現したいこと
PowerQueryで氏名を半角カタカナからひらがなに変換したい。
発生している問題・エラーメッセージ
たとえば、
「ヤマダ タロウ」を「やまだ たろう」に変換したい場合に、以下の2点を試しているのですが
「やまた゛ たろう」になってしまい、「た」と「゛」が別のものでデータが出てきてしまいます。
試したこと
以下に共通しているのは、半角カタカナ→ひらがなへ変換できるようにリストを作成しています。
↓半角カナ→ひらがなリスト
let BinaryText = "RdTHkQJBFAPQXOZMRhS5wOC9924t3nvbBEMApLCLWqo5PunX9Enj9zuv+9DxOc9QyAn43lpDLjWCwtQGilBjKEptoRg1geLUDkpQUyhJ7aEUdYDS0sv0EGQYHKGspDrH4ATlJdUFBmeoKKkuMbhAZUl1hcEVqkqqawxuUF1S3WBwh5qS6hYDA7Ul1R0GD6grqe7ZwAShvqT6g0EI+pRUf/FzS+ibtQv9SDr+ZRCGBpLqIYMINJJUjxlEoQkVg6ZUHJpRCWhOJaEFlYKWkh5ZeUEfwZpBGtpIut96gb3fMchAe0n3By+w90cGWegk6f7sBfb+wiAHXSXd37zA3t8Z5CFDFaAHVXzLDVIliFM2ZUhTnkGcsqlAmvIc4pRNFdKUFxCnbGoQp2zqEKdsGhCnbJoQp2xaEHds2pDd8TNsX+CITQfKs1tBBQo/J1cLHkCcr+lC//MN/AE=", 置換リスト= Json.Document( Binary.Decompress( Binary.FromText(BinaryText), Compression.Deflate ) ) in 置換リスト
Table.Combine関数を使って、以下の列追加を行いました。
①
= Table.AddColumn(追加されたカスタム, "カナ氏名変換", each Text.Combine(List.ReplaceMatchingItems(Text.ToList([カナ氏名]), #"半角カナ→ひらがなリスト")))
②
= Table.AddColumn(追加されたカスタム1, "カスタム.1", each List.Accumulate(Table.ToRows(テーブル),[カナ氏名],(x,y)=>Text.Replace(x,y{0},y{1})))
いずれの結果も、問題点で記載した「やまた゛ たろう」になってしまいます。
ここからさらに、if文などで「た゛」→「だ」にする処理もできるのかな?とも思うのですが
あまりスマートではないと思い、どなたかご教示いただけますと幸いです。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/11/13 03:26