• ベストアンサー

ACCESSでの改行コード

ACCESSでの改行コードの入力方法を確認させてください。 ACCESSのテーブルにテキスト型のフィールドを用意し、一つのフィールドに改行が入ったデータを入力したいと考えています。 以下の方法を試してみましたが、改行コードが入っていないように思えます。 1.エクセルで一つのセルで、ALT+ENTERで文字列を入力し、テーブルにデータをインポート。 2.上記エクセルのデータをCSVで保存したものをテーブルにインポート。 これら2つのデータをテーブルで確認すると、改行はされていないですし、テーブルのデータをエクスポートしたものも改行はされていませんでした。 フィールドの設定で何か必要なんでしょうか? それとも、テキスト型のフィールドには改行コードを持てないんでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.2

> 改行コードが入っていないように思えます。 No.1の方の回答にもある通り、Excelのセル内とAccessのフィールド内とでは、 改行コードが違います。 ただ、Excelの改行コード自体は、インポートの際に取り込まれていますので、 Accessにてクエリ等を使用して変換してやれば、改行表示されるようになります。 例えば、Excelからのインポートデータが保存されているテーブルを「テーブル1」、 改行コードが入ったフィールドを「フィールド1」とすると、以下のSQL文で改行 コードを変換できます(添付画像は同じもののデザインビュー): Update テーブル1 Set フィールド1 = Replace([フィールド1],Chr(10),Chr(13) & Chr(10)); ※Chr関数は、引数で指定したコードに対応する文字を返す関数です。   「Chr(10)」はラインフィード(=Excelのセルでの改行コード)を、   「Chr(13) & Chr(10)」はキャリッジリターン&ラインフィード(=同・Access)を  それぞれ表します。 ※Replace関数は、第1引数で指定した文字列の中から第2引数で指定した  文字列を探し、あった場合は第3引数で指定した文字列に置換する関数です。  但し、Access2000では、クエリ上では使えなかったと記憶しています。  この場合は、標準モジュールでユーザー定義関数を作成してやれば、  その関数を使用することで同様の処理が行えます。 一例(Replace関数の省略可能な引数を全て省略したもの): Public Function Replace2(sExp As String, sFnd As String, sRpl As String) As String   'Replace2関数で指定した引数をそのままReplace関数に渡し、   '戻り値をそのままReplace2関数の戻り値にします。   Replace2 = Replace(sExp, sFnd, sRpl) End Function

mielq
質問者

お礼

お礼が遅くなってすいません。 回答ありがとうございました。 uqdate文に関数の説明までつけていただき助かりました。 通常の文字ならば、コードでなくとも比較できるから… と考えてましたが、いざ、改行を…となると、コードでなければ処理出来ないので、私自身がフリーズしてました。 まだまだ精進しなければ。 ありがとうございました。

その他の回答 (1)

  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.1

accessではctrl+enterで改行を入れることができます。 この場合、cr+lfの2バイトが入力されます。 excelのセル内での改行はlfの1バイトのみだったと思います。 エクセルでの改行をインポートするためには、 テキストファイルとして開いて、対象となる箇所のlfをcrlfと置き換える(crをいれる)必要があります。 cr=キャリッジリターン(Carriage Return) lf=ラインフィード(Line Feed) NL(NewLine)ともよばれる もともと、タイプライター的な考え方が 電報とか、ファックスに受け継がれ、 そのまま、コンピュータに使われているのかな?

参考URL:
http://ja.wikipedia.org/wiki/%E6%94%B9%E8%A1%8C%E3%82%B3%E3%83%BC%E3%83%89
mielq
質問者

お礼

お礼が遅くなって、すいません。 回答ありがとうございました。 ExcelとACCESSで見た目は一緒でもコードが違うんですね。 なんで、某MSさんは、そんな風に… このような疑問は、私自身、意外とないがしろにしてきたので、勉強になりました。 ありがとうございます。

関連するQ&A