2017-06-19 6 views
0

これは私の最初の質問です。あなたが仕事で私の主要な仕事を見ている可能性があります物事を照会するものではありません:PowerQueryは、日付に応じて値を返します。

私は現在のところ、マージするテーブルを作成しています(これが正しい単語であるかどうかはわかりません!)2つのテーブルのデータは、負荷の起源と材料の種類に応じてミネラルパーセンテージと密度を示します。

マイquury出力は次のようになります。

let 
    Source = Table.NestedJoin(LoadTrak_2100rows,{"Load Origin", "Material"},Schedule,{"Name", "Material"},"NewColumn",JoinKind.LeftOuter), 
    #"Expanded NewColumn" = Table.ExpandTableColumn(Source, "NewColumn", {"Waste tonnes", "Total Ore Tonnes", "Dil cu_pct", "Dil au", "Dil ag", "Dil fe_pct", "Dil zn_pct", "Density", "Activity"}, {"NewColumn.Waste tonnes", "NewColumn.Total Ore Tonnes", "NewColumn.Dil cu_pct", "NewColumn.Dil au", "NewColumn.Dil ag", "NewColumn.Dil fe_pct", "NewColumn.Dil zn_pct", "NewColumn.Density", "NewColumn.Activity"}), 
    #"Reordered Columns" = Table.ReorderColumns(#"Expanded NewColumn",{"Record", "Dir.", "Operator", "Truck ID", "Load (m3)", "Truck Operator", "Crew", "Shift", "Material", "Load Origin", "Dumped At", "NewColumn.Dil cu_pct", "NewColumn.Dil au", "NewColumn.Dil ag", "NewColumn.Dil fe_pct", "NewColumn.Dil zn_pct", "NewColumn.Density", "Day", "Shift Time", "Calc Shift"}), 
    #"Removed Blank Rows" = Table.SelectRows(#"Reordered Columns", each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null}))), 
    #"Renamed Columns" = Table.RenameColumns(#"Removed Blank Rows",{{"NewColumn.Dil au", "Diluted Au g/t"}, {"NewColumn.Dil ag", "Diluted Ag g/t"}, {"NewColumn.Dil cu_pct", "Diluted Cu %"}, {"NewColumn.Dil fe_pct", "Diluted Fe %"}, {"NewColumn.Dil zn_pct", "Diluted Zn %"}, {"NewColumn.Density", "In Situ Density"}, {"NewColumn.Waste tonnes", "Scheduled Waste Tonnes"}, {"NewColumn.Total Ore Tonnes", "Scheduled Ore tonnes"}, {"NewColumn.Activity", "Activity"}}) 
in 
    #"Renamed Columns" 

私のミネラル含有量は、(各月には独自のワークブックを持つことになります)、月を通じて変化しない場合、これは大丈夫です。悲しいかな、ミネラルの含有量は負荷の起源と日付に依存します。

LoadTrak_2100rowsテーブルには、各行に日付があります(各負荷には行があります)。スケジュールテーブルには、ミネラル値と開始日と終了日の行があります。例は次のとおりです。

最後に私の質問です。値を返すには

"Dil cu_pct", "Dil au", "Dil ag", "Dil fe_pct", "Dil zn_pct", "Density" LoadTrak_2100rowsの日付は、スケジュールに定義されている開始日と終了日になりますか?

私は通常、生活のためのハンマーで岩を打つので、これで私と一緒にご負担ください、どんな助けも大歓迎です!

マット


私は、サンプルファイルを添付する方法を考え出す(すみません!)が、ここで説明しようとする試みであることはできません。私は質問の目的のために2つのテーブルを本質的に掘り下げました(私はおそらくこれで始めるべきでした!)。

基本的に私のスケジュール表には、次のようになります。 Schedule

そして、私のトラック何台分、私は望んでいますこれは何 Loads

ように見えるログの負荷がログインしてスケジュール銅%を相関します出力されます。私は現在、Cu%が1ヶ月を通して変化しない限り、この罰金を科すことができます。しかし、いくつかの地域では、Cu%は月に変わり、私はこれを反映させるために出力をしたい。

もう一度お手伝いをしていただきありがとうございます。申し訳ありませんが、ファイルを添付することはできません。本当に可能かどうかは分かりません。 2つのフォローアップを追加するために元の質問からイメージを削除しなければなりませんでした。まだ画像を投稿することができず、2つのリンクに限定されています。

マット

+0

サンプルエクセルファイルに、あなたにとって重要ではないデータを追加できますか? –

+0

私は喜んではいますが、可能かどうかわかりません。私はどのように投稿にファイルを添付する方法を指示する場所を見つけることができません!とにかく私はこれが助けてくれることを願っています: –

+0

それで何もしていないようです。私は試してみましょう。 –

答えて

0

、あなたのテーブルを結合した後、あなたは、負荷の日付に対応するスケジュールのレコードに新しい列を追加することができます。今すぐ

let 
    Source = Table.NestedJoin(Loads,{"From", "Material"},Schedule,{"Location", "Material"},"NewColumn",JoinKind.LeftOuter), 
    #"Added Custom" = Table.AddColumn(Source, "Schedule", (Load) => Table.SelectRows(Load[NewColumn], each [From] <= Load[Timestamp] and [To] >= Load[Timestamp])), 
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"NewColumn"}) 
in 
    #"Removed Columns" 

あなたが元のように進むことができますこの列を展開してクエリを実行します。

+0

こんにちはマルセル、私の遅い返信のお詫び(私は過去6日間の仕事のために離れています)。私はこれを試してみて、私がどうやって行くのか教えてくれます。再度、感謝します。マット –

+0

こんにちはマルセル、助けてくれてありがとう。残念ながら、 "トークン・コンマが期待されました"というエラーが表示されます。 "表示エラー"をクリックすると# "追加されたカスタム"が強調表示されますが、それ以上のものは見つかりません。エクセルのような段階的なエラー訂正機能はありませんので、私はちょっと困っています。 MicrosoftのWebサイトで各機能の定義が見つかりましたが、機能の仕組みは実際には説明されていません。あなたの助けをたくさんありがとう、私は本当にそれを感謝します! –

関連する問題