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

[OSのVER]:WindowsXP or Windows2000
[AccessのVER]:Office2003 or OfficeXP or Office2000

こんにちは。

過去ログを一通り見てみましたが
該当する記事がないため質問させていただきます。

レコード件数13000件ほどの結果が返るストアドの結果をExcelに出力するために、
『DoCmd.OutputTo』を用いているのですが、Excelに出力される件数が
なぜか10000件ぴったりになってしまいます。
どこかの設定で直るものなのでしょうか?

下記のようなコードで呼び出しています。
---------------------------------------------
DoCmd.OutputTo acOutputStoredProcedure, "EXEC [ストアド名] '" & パラメータ1 & "', '" & パラメータ2 & "'", acSpreadsheetTypeExcel9
---------------------------------------------


よろしくお願いいたします。

A 回答 (3件)

関係していそうな情報のURLですが、レジストリを変更するので、充分検討ください。



参考URL:http://support.microsoft.com/default.aspx?scid=k …
    • good
    • 0
この回答へのお礼

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

これはクライアントごとに設定する必要があるのですよね。。。?できればレジストリの変更は避けてやりたいのですが、、

お礼日時:2005/04/04 17:33

outputToは一旦クリップボードに貼り付けるようですね。


単純にテーブルデータのコピペでも2万レコードまでいっぺんに貼り付けられないことがあります。
今回の場合には、全体のサイズ(項目数や容量)が大きく1万レコードが限界だったのかもしれません。
それにしてもぴったり1万とは!???

ここは確実な方法として、TransferSpreadsheet メソッドを使用されてはどうでしょうか?

もしくはExcelとリンクするか。
    • good
    • 0
この回答へのお礼

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

たぶんですが、他のサイトでも質問を投げたところ、
『たぶん、ツール(T)→オプション(O)→詳細→クライアントサーバーの設定(既定の最大レコード数)』
という答えを頂きました。
これのとおりやってみると、実件数を出力することができました。
とはいえ、クリップボードを使用しているとなると、限界がありますね。
はじめは『TransferSpreadSheet』を使用していたんですが、ストアドの結果を出力する必要があるために、一度テーブルに落とさなければいけないので、OutputToを用いることにしたのです。『TransferSpreadSheet』を使用してストアドの結果を出力することって可能なのでしょうか??

お礼日時:2005/04/04 17:43

TransferSpreadsheetでは一旦テーブルに落とさねばならないでしょうね。



outputToの規定の最大レコード数は97の場合デフォルトで65000だったと思いますが。
2003で設定変更できましたっけ???
    • good
    • 0

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