はちょうどあなたが始めるために、あなたが請求書シートのセルB11
にCharlie P
のような名前を持っており、あなたの請求書の行が空白行14を残して、B15
で開始したとします。また、あなたのタイムシートが名前timeSheet
を持ち、あなたのイメージのようなレイアウトを持っているとします。
これらのの配列式を使用することができます。表示されている行14にそれぞれを入力し、Ctrl+Shift+Enter
を押します。その行をコピーして、特定の行数だけペーストします。
Formula for Date Column @ B14:
=IFERROR(INDEX(TimeSheet!$C$7:$C$999,MATCH(1, (TimeSheet!$A$7:$A$999& " "&
TimeSheet!$B$7:$B$999=$B$11)*(TimeSheet!$C$7:$C$999>B14),0)),"")
Formula for Service Column @ C14:
=IFERROR(INDEX(TimeSheet!$E$7:$E$999,MATCH(1,(TimeSheet!$A$7:$A$999& " " &
TimeSheet!$B$7:$B$999=$B$11)*(TimeSheet!$C$7:$C999=B15),0)) & " - " &
INDEX(TimeSheet!$E$7:$E$999,MATCH(1,(TimeSheet!$A$7:$A$999& " " &
TimeSheet!$B$7:$B$999=$B$11)*(TimeSheet!$C$7:$C$999=B15),0)), "")
Formula for Hours Column @ D14:
=IFERROR(INDEX(TimeSheet!$G$7:$G999,MATCH(1, (TimeSheet!$A$7:$A$999& " " &
TimeSheet!$B$7:$B$999=$B$11)*(TimeSheet!$C$7:$C$999=B15),0)),"")
これが始まります。あなたはさらに調整することができますが、基本的にインボイスシートの他のフィールドはひどく正解です。つまり、total paid = total hr * rate/hr
などです。
これは数式で実現可能です。数式は、IFERROR(INDEX(MATCH ...))のような十分な数の行を請求書に書く必要があり、タイムシートから適切な行を取得します。 Totalフィールドは、請求書で簡単に計算されます。私はそれがピボットテーブルで行えるかどうかも疑問です。 –
IFERROR(Invoice(Charlie))のような何か?私はそれをどのようにフォーマットするかについてはあまりよく分かりません。また、名前の順番はタイムシートによって異なりますので、名前がタイムシート上の位置を変えてもその式は機能しますか?あなたのご意見ありがとうございます – vgplayer54