|
▼小僧 さん:
こんにちは。お忙しい中ご教授ありがとうございます。
>Dim xlsFileName As String
> xlsFileName = "D:\" & Format(Date, "yyyy_mm_dd") & "ホストデータ.xls"
>
>が正しいですね。
ありがとうございました。解決しました。
> DoCmd.TransferSpreadsheet acExport, 8, "Q_Rireki", xlsFileName, True
の記載にてファイル名やデータ出力形式など思うように出力できましたが、
DoCmd.OutputTo ObjectType:=acOutputQuery _
, ObjectName:="Q_Rireki" _
, OutputFormat:=acFormatXLS _
, OutputFile:=xlsFileName _
, AutoStart:=True
のように「OutputTo」メソッドを利用した場合はフィールド名やレコードが
エクセルのセル内に綺麗に収まり画面にデータが出力されます。
TransferSpreadsheetを使っても同じように出力できますでしょうか。
また、DoCmd.TransferSpreadsheet acExport, 8,の記述にて参考にしている
サイトが「8」のところが「9」となっていたりしているのもあり、エクセル
のバージョンによっての記載なのでしょうか。
「8」がexcel97、「9」がexcel2000などのようにわかれているのでしょうか。
インターネットなどで検索しても見つからず、困っております。
> DoCmd.TransferSpreadsheet acExport, 8, "Q_Rireki", xlsFileName, True
クエリ名が「Q_Rireki」のものをxlsFileNameで、ワークシートの最初の行を
フィールド名として使い、エクセル形式で出力する。
→ ここまでは解釈できたのですが「acExport, 8,」の部分が解釈できません。
お忙しい中恐縮ですがご教授をよろしくお願いします。
>▼VBA初心者 さん:
>こんにちは。
>
>> Const xlsFileName As String = "D:\xlsFileName"としようとしても
>> 二重定義になりエラーになります。
>
>Const句は記述を消して、Dim で宣言して下さい。
>
>>> xlsFileName = Format(Date, "yyyy_mm_dd") & "ホストデータ.xls"
>
>申し訳ありません。ファイル名だけでパスを記述するのを忘れておりました。
>
>Dim xlsFileName As String
> xlsFileName = "D:\" & Format(Date, "yyyy_mm_dd") & "ホストデータ.xls"
>
>が正しいですね。
>
>
>>上手く出力できません。
>
>どの様にうまく行かないのかを記載して頂けると
>回答が付きやすくなりますよ^^
>
>上記のファイルパスの問題でうまく行っていないのであれば
>
>>> DoCmd.TransferSpreadsheet acExport, 8, "Q_Rireki", "D:\xlsFileName", True, ""
> DoCmd.TransferSpreadsheet acExport, 8, "Q_Rireki", xlsFileName, True
>
>で良さそうですね。
|
|