アプリ版:「スタンプのみでお礼する」機能のリリースについて

表1には売上金額が日付入りで顧客毎に記載されてます。
これを合計金額として表2に出したいのですが条件があります。
その条件が
・顧客毎の合計
・今月以前は合計に含まない
・表1は日々更新される


これを更新入力は手作業で行いますが、そうすると同時に上記の条件を満たし自動的に表示されるようにしたいのですがどうすればいいか教えてください。

A 回答 (2件)

表1を提示していただけないと具体的な回答は難しいと想います。


ピボットテーブルは試して見られましたか。
表1
 A   B   C
日付 顧客名 金額
・・・とあるならば
表1
 A   B   C  D
作業列 日付 顧客名 金額
と1行列を挿入して、A列に =TEXT(B2,"yymm") と入れて下までコピィしておけば
年と月が表示されますので、ツールバーのデータ=>ピボットテーブルと・・・
のウィザードからご希望の表が出来ると想います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!

何とかできました!!

お礼日時:2008/11/29 13:32

気軽に着手して、はまってしまいました。

もっと簡単な解があると思いますが、ご参考まで。
Accessで試してから、ADOに載せ替えたのですが、こんなサブクエリを使わないと本当に出来ないのか、質問したいところです。
元データ 売上げ履歴.xlsのSheet1
......................A...............B...............C
..1................日付.........顧客.....売上げ
..2.....2008/10/22...............a................1
..3.....2008/10/23...............a...............2
..4.....2008/10/24...............b...............3
..5.....2008/10/25...............c...............4
..6......2008/11/26...............a............100
..7......2008/11/27...............b...........200
..8......2008/11/28...............a...........300
..9......2008/11/29...............c...........400
10......2008/11/30...............b...........500

実行結果
...............A....................B
..1...............a................400
..2...............b................700
..3...............c................400

Sub test()
Dim CN As Object, RS As Object
Dim mySQL As String
Const adOpenStatic As Long = 3
Const adLockReadOnly As Long = 1

On Error GoTo errorHandle
Set CN = CreateObject("ADODB.Connection")
Set RS = CreateObject("ADODB.Recordset")
CN.Provider = "Microsoft.Jet.OLEDB.4.0"
CN.Properties("Extended Properties") = "Excel 8.0"
CN.Open "C:\Documents and Settings\?????\My Documents\売上げ履歴.xls"
mySQL = "SELECT Alias.顧客,Sum([Sheet1$].売上げ) FROM ((select 顧客,日付,売上げ from [Sheet1$] where 日付>=datevalue(Format(Now(),'yyyy/mm') & '/01')) as Alias) GROUP BY Alias.顧客;"
RS.Open mySQL, CN, adOpenStatic, adLockReadOnly
Range("a1").CopyFromRecordset RS
Set RS = Nothing
Set CN = Nothing
Exit Sub
errorHandle:
MsgBox "接続に失敗しました", vbCritical
Set CN = Nothing
End Sub
同じブック内でのADO接続はトラブルがあると聞いているので、別ブックにしてあります。集計先のブックがアクティブになった時に実行されるイベントマクロにでも組み込んでおけば、使いたい時には最新化されるでしょう。(当方xl2000です)
    • good
    • 0
この回答へのお礼

回答ありがとうございます!
結構難しい問題でしたね…
早速こちらでも試して見ます!!

お礼日時:2008/11/29 15:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!