Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1887 / 9994 ←次へ | 前へ→

【11389】Re:フォームで抽出したデータをExcel出力
回答  VBA初心者  - 10/1/15(金) 17:33 -

引用なし
パスワード
   ▼小僧 さん:
 こんにちは。
>不必要な引用は避ける用にしましょう。
 申し訳ございません。不必要な引用は今後気をつけます。

>>クエリ式'登録日 'の構文エラー:演算子がありません。」というメッセージ
>>が表示されます。  
 strSQL = strSQL & " , QH_COMM AS 事業所 "
の「& " ,」の間を半角スペース一つにしたらできました。

>VBA初心者さんの環境で Excel2007 を使われていないでしょうか?
申し遅れました。Excel2007を使っています。
「xlsWkb.SaveAs xlsFileName, FileFormat:=56」としたら問題なくできました。

>Ctrl + G キーを押しイミディエイトウィンドウを出現させ、
>そこに
>? acSpreadsheetTypeExcel8  
 イミディエイトウィンドウで見て納得できました。
表示だけはしていたのですが、使いこなせてなく宝の持ち腐れでした。
ありがとうございます。

また、下記のコードの意味が曖昧です。お時間のあるときご教授を
お願いします。


> Set xlsApp = CreateObject("Excel.Application")
>    xlsApp.Visible = True
    エクセルのアプリケーションをセットする。
 
>  Set xlsWkb = xlsApp.workbooks.Add
>    With xlsWkb.Sheets("Sheet1")
    sheet1を作業領域にする
  
>    For i = 0 To RS.Fields.Count - 1
>      .Range("A1").Offset(0, i).Value = RS.Fields(i).Name
>    Next i
     A1セルをフィールドにする...みたいな記述と考えましたが
     よくわかりません。ご教授をお願いします。
    
>    .Range("A2").CopyFromRecordset RS
     A2セルからレコードデータをセットする。
>    .Columns("A:K").AutoFit
     A〜Kセルを自動的にデータをシート内にフィットさせる。
>    End With
  
>  xlsWkb.SaveAs xlsFileName, FileFormat:=56
   Excel2000形式で保存する。
>  xlsWkb.Close: Set xlsWkb = Nothing
    クローズ
>  xlsApp.Quit: Set xlsApp = Nothing
    処理を抜ける。

以上、お手数ですが、よろしくお願い致します。


>▼VBA初心者 さん:
>こんにちは。
>
>メールのやりとりだと問題ないのですが
>無料で貸して使わせて頂いている掲示版ですので
>不必要な引用は避ける用にしましょう。
>
>> いろいろなサイトから探してみました。
>
>先に提示させて頂いたURLに
>
>> h tp://msdn.microsoft.com/en-us/library/bb225982.aspx
>
>Value 8 がMicrosoft Excel 97 format、Microsoft Excel 2000 format
>となっていますね。
>
>>クエリ式'登録日 'の構文エラー:演算子がありません。」というメッセージ
>>が表示されます。
>
>こちらの掲示板の仕様で
>半角スペースが続くと全角スペースに
>置換されてしまう場合がある模様です。
>
>VBエディタにペーストしたタイミングで
>全角スペースがあるようでしたら
>半角スペースに置き換えて下さい。
>
>> エラーメッセージが表示されてしまいます。
>
>こちらで再現しなかったので
>色々Webを調べてみたのですが…。
>
>VBA初心者さんの環境で Excel2007 を使われていないでしょうか?
>その場合は通常開くExcelの拡張子が xlsx になる筈ですので
>
>xlsFileName = "C:\" & Format(Date, "yyyy_mm_dd") & "ホストデータ.xlsx"
>
>にすればエラーが出なくなるかと思われます。
>
>
>また、拡張子 xls で保存されたいのであれば
>
>xlsWkb.SaveAs xlsFileName, FileFormat:=56
>
>の様に記述してみて下さい。
>
>
>以下補足です-------------------------------------------------------------
>
>以前に提示させて頂いた回答で
>
>> DoCmd.TransferSpreadsheet acExport, 8, "Q_Rireki", xlsFileName, True
>
>とありましたが、
>
>DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "Q_Rireki", xlsFileName, True
>
>の様にAccessの定数を使うのが一般的かと思われます。
>
>Ctrl + G キーを押しイミディエイトウィンドウを出現させ、
>そこに
>? acSpreadsheetTypeExcel8
>
>と入力し、Enterキーを押してみて下さい。
>
>8 という結果が返って来たかと思われます。
>
>acSpreadsheetTypeExcel8 という定数を AccessVBAにおいて
>数値に変換すると 8 という値になるという意味です。
>次に
>
>? xlExcel8
>
>と入力するとどうなるでしょうか。
>通常は何も値を返さないかと思われます。
>
>今度は Excelを起動し、VBエディタのウィンドウにイミディエイトウィンドウを表示させ
>(Excel2007の場合は開発タブをリボンに表示させる必要があった気がします)
>
>? xlExcel8
>
>と入力すると 56 という値が返ります。
>
>先のコードにある
>
>> FileFormat:=56
>
>はこの数値を指します。
>
>
>Excelへの参照設定を行うと
>AccessからExcelの定数を使う事も可能です。
>(Excel 参照設定 でWeb検索するとやり方等も探せるかと思われます。)
>
>ただし、Ac2007、Ex2007 で作ったプログラムを
>Ac2003、Ex2003 の環境で実行するとエラーが出る事がありますので
>注意して下さい。

2,005 hits

【11370】フォームで抽出したデータをExcel出力 VBA初心者 10/1/12(火) 17:04 質問[未読]
【11374】Re:フォームで抽出したデータをExcel出力 小僧 10/1/13(水) 12:23 回答[未読]
【11375】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/13(水) 13:51 回答[未読]
【11376】Re:フォームで抽出したデータをExcel出力 小僧 10/1/13(水) 14:45 回答[未読]
【11381】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/14(木) 10:38 回答[未読]
【11384】Re:フォームで抽出したデータをExcel出力 小僧 10/1/15(金) 10:20 回答[未読]
【11386】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/15(金) 14:19 回答[未読]
【11387】Re:フォームで抽出したデータをExcel出力 小僧 10/1/15(金) 15:04 回答[未読]
【11389】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/15(金) 17:33 回答[未読]
【11390】Re:フォームで抽出したデータをExcel出力 小僧 10/1/15(金) 18:11 回答[未読]
【11392】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/15(金) 18:31 回答[未読]
【11395】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/19(火) 13:42 回答[未読]
【11397】Re:フォームで抽出したデータをExcel出力 小僧 10/1/20(水) 16:50 回答[未読]
【11404】Re:フォームで抽出したデータをExcel出力 VBA初心者 10/1/21(木) 11:48 お礼[未読]

1887 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078197
(SS)C-BOARD v3.8 is Free