Excel (一般機能) |
|
(Windows 11 Home : Excel 2021)
クエリでの加工の仕方
投稿日時: 25/09/24 15:10:57
投稿者: toma100
|
|---|---|
|
こんにちは、よろしくお願いいたします。
|
|
|
|
投稿日時: 25/09/24 17:46:26
投稿者: sk
|
|---|---|
引用: これらの[コメント]列の見出しは実際に同じ列名なのでしょうか。 もしそうであるならば、その範囲はまだテーブルに変換されていない ( 1 つのテーブルにおいて同名の列を 2 つ以上設けることはできないので) ということになるはずですが、テーブルに変換せずにそのままの状態で扱う 必要があるのでしょうか。 |
|
|
|
投稿日時: 25/09/24 20:45:26
投稿者: toma100
|
|---|---|
|
sk様
|
|
|
|
投稿日時: 25/09/26 08:03:46
投稿者: んなっと
|
|---|---|
引用: 可能かもしれませんが、申し訳ないのですが操作方法の説明が面倒です。 アンピボット →0からの[連番0]、1からの[連番1]追加 →マージ →[連番1]の奇数行削除 →不要な列削除 |
|
|
|
投稿日時: 25/09/26 08:11:31
投稿者: んなっと
|
|---|---|
|
let
|
|
|
|
投稿日時: 25/09/26 08:12:05
投稿者: んなっと
|
|---|---|
|
srt = Table.Sort(exp2,{{"連番2", Order.Ascending}, {"連番1", Order.Ascending}}),
|
|
|
|
投稿日時: 25/09/26 14:32:08
投稿者: んなっと
|
|---|---|
|
ちなみに、これでいいのなら...
|
|
|
|
投稿日時: 25/09/26 22:01:09
投稿者: sk
|
|---|---|
引用: ・それぞれの[質問n]列と[列n]列は1対1の関係にある(重複も抜けもない)。 ・対になっている列同士の名前の末尾には同じ添え字( 1, 2, 3 ... n )が付加されている。 ・[名前]列の値は必ずしもユニークではない。 というテーブルが存在していると仮定した場合。 引用: (操作例) --------------------------------------------------------------------------------- 1. そのテーブルのいずれかのセルを選択する。 2. [データ]タブ -> [データの取得と変換]グループ -> 「テーブルまたは範囲から」を クリックし、Power Query エディターを起動する。 3. 自動作成されたクエリ(既定ではそのテーブルと同名)が選択された状態で、 [列の追加]タブ -> [全般]グループ -> [インデックス列]をクリックする (ドロップダウンした場合は、[0 から]または[1 から]をクリックする)。 4. [インデックス]列が選択された状態で Ctrl キーをクリックしながら [名前]列をクリックし、それら 2 つの列のみを範囲選択する。 5. [変換]タブ -> [任意の列]グループ -> [列のピボット解除]をドロップダウンし、 [その他の列のピボット解除]をクリックする。 (この時、[インデックス]列および[名前]列以外の全ての列が [属性]列と[値]列に変換される) 6. [属性]列のみを選択し、[変換]タブ -> [テキストの列]グループ -> [列の分割]をドロップダウンし、[数字以外から数字による分割]をクリックする。 (この時、[属性]列が[属性.1]列と[属性.2]列に分割される) 7. [属性.1]列の名前を[項目名]に、[属性.2]の名前を[質問番号]に変更する。 (列名の変更はその列見出しを左マウスダブルクリックするか、 列見出しを右マウスクリックしてポップアップメニューを表示し [名前の変更]をクリックするか、いずれかの操作によって行なう) 8. [クエリの設定]ウィンドウ(右側)より、そのクエリを任意の名前 (ここでは[ピボット解除クエリ]とする)に変更する。 9. [クエリ]ウィンドウ(左側)よりそのクエリを右マウスクリックして ポップアップメニューを表示し、[参照]をクリックして 新しいクエリを作成する。 10. 作成されたクエリの[項目名]列のフィルターボタンをクリックし、 [項目名]列の値が"質問"であるレコードのみを抽出する。 11. 上記 7 と同様の操作により、[値]列の名前を[回答]に変更する。 12. [クエリの設定]ウィンドウ(右側)より、そのクエリを任意の名前 (ここでは[回答抽出クエリ]とする)に変更する。 13. [クエリ]ウィンドウ(左側)より[ピボット解除クエリ]を選択、 右マウスクリックしてポップアップメニューを表示し、 [参照]をクリックして新しいクエリを作成する。 14. 作成されたクエリの[項目名]列のフィルターボタンをクリックし、 [項目名]列の値が"列"であるレコードのみを抽出する。 15. 上記 7 と同様の操作により、[値]列の名前を[コメント]に変更する。 16. [クエリの設定]ウィンドウ(右側)より、そのクエリを任意の名前 (ここでは[コメント抽出クエリ]とする)に変更する。 17. ここまでの状態で[ホーム]タブ -> [閉じる]グループ -> [閉じて読み込む]を ドロップダウンし、[閉じて次に読み込む]をクリックする。 18. Excel 上で[データのインポート]ダイアログが表示されたら、 [接続の作成のみ]を選択して[OK]ボタンをクリックする。 19. [クエリと接続]ウィンドウより[回答抽出クエリ]をマウス右クリックして ポップアップメニューを表示し、[結合]をクリックする。 20. [マージ]ウィンドウが表示されたら、[回答抽出クエリ]と結合するクエリとして [コメント抽出クエリ]を選択し、そのプレビューを表示させる。 21. [回答抽出クエリ]のプレビュー上の[インデックス]列を左マウスクリックする。 22. [コメント抽出クエリ]のプレビュー上の[インデックス]列を左マウスクリックする。 23. Ctrl キーを押しながら、[回答抽出クエリ]のプレビュー上の [質問番号]列を左マウスクリックする。 23. Ctrl キーを押しながら、[コメント抽出クエリ]のプレビュー上の [質問番号]列を左マウスクリックする。 24. それぞれの列見出しの右側に表示されているキー番号( 1, 2 )が 一致していることを確認し、[OK]ボタンをクリックする。 (この時、Power Query エディターを起動して新しいクエリが作成される) 25. [コメント抽出クエリ]列の展開ボタンをクリックし、 [元の列名をプリフィックスとして使用します]をオフにした状態で [コメント]列のみを展開する。 26. [質問番号]列を選択し、[変換]タブ -> [任意の列]グループ -> [データ型]を ドロップダウンし、[整数]を選択する。 27. [インデックス]列のフィルターボタンをクリックし、[昇順に並べ替え]をクリックする。 28. [質問番号]列のフィルターボタンをクリックし、[昇順に並べ替え]をクリックする。 29. [インデックス]列を左マウスドラッグして最も左側の列になるようドロップする。 30. [クエリの設定]ウィンドウ(右側)より、そのクエリを任意の名前 (ここでは[マージクエリ]とする)に変更する。 --------------------------------------------------------------------------------- とりあえず、ここまでの時点において必要とされる形に データが変換されているかどうかをご確認下さい。 |
|
|
|
投稿日時: 25/09/27 05:48:22
投稿者: んなっと
|
|---|---|
|
もう少し簡単にできました。
|
|
|
|
投稿日時: 25/09/27 10:17:59
投稿者: toma100
|
|---|---|
|
んなっと様、sk様
|
|
|
|
投稿日時: 25/09/30 08:23:55
投稿者: toma100
|
|---|---|
|
んなっと様へ
|
|



