dポイントプレゼントキャンペーン実施中!

エクセルのセルに

【1】コメント1
【2】コメント2

と記載しているものをアクセスに
エクスポートすると、レコードが

【1】コメント1【2】コメント2

となってしまいます。

つまり、エクセルでAlt+Enterで改行を行ったものが、
アクセスにエクスポートした時点で無効になってしまいます。

アクセスの方でCtrl+Enterで改行が可能なのですが、
数が多いため効率が悪いです。

何かよい方法はないのでしょうか?

A 回答 (2件)

取りあえずインポートしてあるとして・・


テーブル名が、T1
フィールド名が、F1
とすると更新クエリで行います
下記SQL文のテーブル名、フィールド名を実際のものに置き換え
クエリのSQLビューに貼り付けて一旦閉じて後、再度開いて下さい。

UPDATE T1 SET T1.F1 = Replace([F1],Chr(10),Chr(13) & Chr(10));

これでExcelの改行コードが変換されます。
テーブルを開いて行の高さを大きくとって確認下さい。
※バックアップは取ってからお試しを
    • good
    • 0
この回答へのお礼

ありがとうございます。
この方法で問題が解決いたしました。

お礼日時:2007/03/15 17:32

[イミディエイト]


? CnnExecute("UPDATE Table1 SET Field_1=Replace(Field_1, '【2】', Chr$(13) & Chr$(10) & '【2】')")
True

ID_______Field_1
1__________【1】コメント11
___________【2】コメント2
2__________【1】コメント11
___________【2】コメント2
3__________【1】コメント11
___________【2】コメント2

と、CnnExecute関数を用いて一気に修正することが可能です。
[イミディエイト]ウィンドウで実行します。

Public Sub ErrMessage(ByVal CnnErrors As ADODB.Error, ByVal strSQL As String)
   MsgBox "ADOエラーが発生しましたので処理をキャンセルします。" & Chr$(13) & Chr$(13) & _
      "・Err.Description=" & CnnErrors.Description & Chr$(13) & _
      "・Err.Number=" & CnnErrors.Number & Chr$(13) & _
      "・SQL State=" & CnnErrors.SQLState & Chr$(13) & _
      "・SQL Text=" & strSQL, _
      vbExclamation, " ADO関数エラーメッセージ"
End Sub

Public Function CnnExecute(ByVal strSQL As String) As Boolean
On Error GoTo Err_CnnExecute
   Dim isOK As Boolean
   Dim cnn As ADODB.Connection
  
   isOK = True
   Set cnn = CurrentProject.Connection
   With cnn
     .Errors.Clear
     .BeginTrans
     .Execute strSQL
     .CommitTrans
   End With
Exit_CnnExecute:
On Error Resume Next
   cnn.Close
   Set cnn = Nothing
   CnnExecute = isOK
   Exit Function
Err_CnnExecute:
   isOK = False
   If cnn.Errors.Count > 0 Then
     ErrMessage cnn.Errors(0), strSQL
     cnn.RollbackTrans
   Else
     MsgBox "プログラムエラーが発生しました。システム管理者に報告して下さい。(CnnExecute)", _
        vbExclamation, " 関数エラーメッセージ"
   End If
   Resume Exit_CnnExecute
End Function
    • good
    • 0
この回答へのお礼

ご回答ありがとうござます。
こちらの方は多少難しかったので、
今回はANo.2の方で解決しました。

お礼日時:2007/03/15 17:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!