- ベストアンサー
accessで項目内の文字を自動改行させたい方法とは?
- accessで項目内の文字を自動改行させる方法について教えてください。
- ふりがなと名前を別枠に入力し、ふりがなの直後に改行を入れた形のデータを自動作成する方法はありますか?
- 作成したデータをcsvファイルにエクスポートする際、改行の表現をExcelと同じ形式にする方法を教えてください。
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
#7です。一応確認のため同じデータを、 Excelでデータ作成→CSVに変換→メモ帳で確認 クエリをCSVにエクスポート→メモ帳で確認 クエリをExcelに出力→CSVに変換→メモ帳で確認 で確認しています。メモ帳で確認すると以下のような 形式になります。 "すずき はなこ↑鈴木 花子" "たなか たろう↑田中 太郎"
その他の回答 (8)
- layy
- ベストアンサー率23% (292/1222)
2のエクスポートはおそらく "xx組","すずきはなこ 鈴木花子" のようなイメージになります。このままでは1行目末尾と2行目先頭の「"」が中途半端になりますから、これでいいのか疑問が残ります。 EXCELと同じとはいうけど やりたいのは "xx組","すずきはなこ" "鈴木花子" ではないでしょうか。 「ふりがな」と「名前」2項目が1レコードにあるものをテーブル作成クエリで「ふりがな」だけ出力し、さらに追加クエリで「名前」だけ出力する。そうやって2レコードを作り上げるのがいいのでは?。 エクスポートはどうさせてますか。テーブルを選んでメニューから選んでいるとかマクロになっているとか、できたファイルはEXCELで使うとか。
お礼
エクスポートは、データを表示した後、メニューから選んでいます。 いずれはマクロにしたいのですが、まだそこまでの技術がなくて・・・ csv保管したファイルはwebで取り込みするだけなので、excelで使用する予定はありません。 独学でやっているのですが、奥が深くて難しいですね。 さらに勉強したいと思います。 回答ありがとうございました。
- piroin654
- ベストアンサー率75% (692/917)
テーブル2になっていましたが、テーブル1でした。 SELECT [ふりがな] & Chr(10) & [名前] AS ふりがなと名前 FROM テーブル1; #2のSQL文は改行の参照用として、#6はエクスポート用 としてということになりますか。
- piroin654
- ベストアンサー率75% (692/917)
SELECT [ふりがな] & Chr(10) & [名前] AS ふりがなと名前 FROM テーブル2; これでCSVにエクスポートすればExcelでの改行と同じ 形式になると思います。 Chr(13)を取り除く関数を作成して気がついたのですが、 関数は必要なかったみたいです。
- nicotinism
- ベストアンサー率70% (1019/1452)
ありゃ! やっちゃいました。 ありがとうございます>#4さん。
- piroin654
- ベストアンサー率75% (692/917)
#3さんの回答の中で、 >(クエリをデータシートビューで見ても改行されていません) とありますが、たぶん表示されたままを見たらそのように 見えますが、表示されているデータのフィールドを縦に 広げるとちゃんと改行されたデータが出てきます。
- nicotinism
- ベストアンサー率70% (1019/1452)
テキストボックス内(セル内)改行は Accessは、Ctrl+Enter→chr(13) & Chr(10) 一方Excelは、Alt+Enter→chr(10) なのでクエリのフィールドに、ふりがな、名前、ふり付名前:ふりがな & Chr(10) & 名前 としたものを作成し、このクエリからCSV形式でエクスポート処理します。 (クエリをデータシートビューで見ても改行されていません) これをExcelで開いてCSV形式で上書き保存します。 これで多分?お望みの形になっていると思います。 AccessでもExcelでも改行された状態にしたい場合は、#1さん、#2さんの回答のとおりです。 ふり付名前:ふりがな & chr(13) & chr(10) & 名前 この場合はCSVファイルに余計な改行コードが含まれてしまいます。二律背反ですね。 どちらをとるか・・ なお、 AccessのCSVは文字列は必ずダブルクォーテーション(")で括りますが Excelの場合は、シンプルなテキストなら、" 無しです。 しかし、その中に改行コードが有る場合など(書式?がある?場合)には、" が付きます。 また、Accessは数値であれば一切 " が付きませんが Excelは例えば位取りのカンマが有る場合など(書式?がある?)にも " が付きます。 なので、最終的にはExcelからCSV形式で出力しないと 『全く同じ形式にしたい』は不可能と思います。 改行コードはどうしたもんでしょうかね。→上司に相談 詳しくは検証していませんが、概ね間違いではないと思います。 回答しようと思ったら、話がどんどん進んでる。(^^ゞ ならExcelのVBAですかね。 手作業なら A列にふりがな、B列に名前なら、C列に=A1 & "@" & B1 としといて、C列を選んで、Ctrl + C 、次にAlt + E、さらに、SV。(値のみのコピペ) C列は選んだままにしておいて、編集→置換。 検索する文字列に、@ 置換後の文字列には、Ctrl + J 全て置換で、改行されます。Excel2003までならこれでOKなのだが。 あとはCSVで・・・ サーバーが間違いなく読んでくれるか?
お礼
丁寧に回答くださりありがとうございます。 chr(13) をつけるかつけないかでしょうか。 accessからcsv保管して完了にしたいので(何も手を加えずにそのままwebでインポート) 見た目をあきらめるかどうするか・・・少し考えます。 もし、excelで手作業する場合ですが、 置き換え後の文字列に「Ctrl + J 」を指定した時、うまく改行されませんでした。 (単純に「@」→「Ctrl + J 」の文字に置き換わっただけでした) 私のやり方がおかしかったのでしょうか。。 もしもこのメッセージをまだ見ていらしたら教えていただけるとうれしいです。
- piroin654
- ベストアンサー率75% (692/917)
たとえば、テーブル1に「ふりがな」と「名前」の フィールドがあるとします。この二つのフィールドを 改行コードを入れて結合したデータを表示するには、 以下のクエリを作成すれば結合したデータが表示されます。 SELECT [ふりがな] & Chr(13) & Chr(10) & [名前] AS ふりがなと名前 FROM テーブル1; CSVにエクスポートするには、このクエリを開いて データを表示し、ツールバーのファイルより エクスポートを選択し、適当なフォルダを 選択し、名前を適当にたとえばmyFile.csv などとし、すべてを保存を選択し、あとは 区切り記号付き、カンマを選択して完了 させればCSVファイルにエクスポートされます。
補足
1番の質問は解決しました!ありがとうございます。 ただ、2番の質問のエクスポートなのですが、csv保存されたデータをメモ帳で開くと ふりがなと名前の間が改行された状態になってしまいます。 (excelで作成したときは「ふりがな↑名前」となるのですが・・・) excelでcsv保管した場合と同じ形にしたい理由は、今までexcelで作成していたデータを accessに移行した為で、このcsvファイルをwebのシステムにアップロードするからです。 (webシステムには決まった形でアップロードしないとうまく取り込めないので) excelのvbaなら可能でしょうか? 初心者なのでどうプログラミングすればいいのかわからないので困っています。 もしご存知でしたら教えていただけませんか?
- layy
- ベストアンサー率23% (292/1222)
1について、 文字列の連結に「&」を使っていると思います。 「ふりがなの項目」&「名前の項目」 やりたい改行ですが、表現するものがあります。 「CHR(13)」&「CHR(10)」 なので 「ふりがなの項目」& CHR(13)& CHR(10)&「名前の項目」 とすることで実現します。
補足
できました。ありがとうございます!
お礼
調べて何度も回答くださりありがとうございます。 教えてくださった方法でcsv保存できていました! 他の項目の調整がまだできてないので、webへのアップロードは試していませんが たぶん大丈夫だと思います。 ありがとうございました!