- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Access フォーム上でクエリによるcsv出力)
Access フォーム上で障害履歴をクエリでcsv出力する方法
このQ&Aのポイント
- Accessで障害履歴を管理するDBを作成し、フォーム上で障害内容を起票して障害履歴テーブルに保存します。
- 毎月、指定した月の障害をクエリで抽出し、csvにエクスポートするために、フォーム上でボタンを作成します。
- エクスポートする際には、フォーム内で指定した年月を読み取り、自動的にファイル名を生成してcsv出力します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> 各行が折返して全体表示がONに 改行されているフィールドがあるという事でしょうか たとえばそれがTestというフォールドでしたら クエリで新しいフィールドのフィールド名に NEW_Test: Replace(Replace([Test],Chr(10),""),Chr(13),"") としてTestを表示から外して実行してみてください。 NEW_Testがフィールド名になるので適宜変更してください。
その他の回答 (3)
- kkkkkm
- ベストアンサー率66% (1719/2589)
回答No.3
No2のおまけの続きです。 年月かどうかを判別させたい場合は 「指定月」テキストボックスの「定型入力」はNo2のままで「書式」を yyyy/mm にして クエリの条件を Like Format([Forms]![フォーム名]![指定月],"yyyy/mm") & "/*" にして試してみてください。
- kkkkkm
- ベストアンサー率66% (1719/2589)
回答No.2
No1のおまけです。 「指定月」テキストボックスの「定型入力」に 0000/00;0; としておくと /を入力しなくて済みますし6桁の数値入力が必須になります。 ただし年月かどうかは関知しません。
- kkkkkm
- ベストアンサー率66% (1719/2589)
回答No.1
フォーム内にたとえば「指定月」という名前にテキストボックスを作成し クエリの条件に Like [Forms]![フォーム名]![指定月] & "/*" として 「指定月」テキストボックスに 2021/04 と入力してからボタンクリックでクエリが実行されるようにして試してみてください。
補足
ありがとうございます。クエリは無事できました! csv出力するコードも以下で出来ましたが、csv出力された 各行が折返して全体表示がONになった状態で出力されるため、csvを開いたさいに見た目が悪かったです。 csv出力する際に折り返して全体表示をOFFにした状態で出力するコードはありますでしょうか。 Private Sub CSVエクスポート_Click() Dim strPath As String Dim strTblName As String Dim strmsg As String strPath = CurrentProject.Path & "\" strTblName = "Q_障害テスト" strmsg = "csvファイルへ出力します。" & Chr(13) & _ "よろしければ、OKをクリックして下さい。" If MsgBox(strmsg, vbOKCancel) = vbOK Then DoCmd.TransferText acExportDelim, , _ strTblName, strPath & "Q_障害テスト" & " .csv", True End If Exit Sub ErrorTrap: If Err.Number = 3044 Then ' MsgBox "パス指定が誤っています。", vbCritical Else MsgBox "予期せぬエラーが発生しました。", vbCritical End If End Sub