• ベストアンサー

エクセルからアクセスへのエクスポート

エクセルのセルに 【1】コメント1 【2】コメント2 と記載しているものをアクセスに エクスポートすると、レコードが 【1】コメント1【2】コメント2 となってしまいます。 つまり、エクセルでAlt+Enterで改行を行ったものが、 アクセスにエクスポートした時点で無効になってしまいます。 アクセスの方でCtrl+Enterで改行が可能なのですが、 数が多いため効率が悪いです。 何かよい方法はないのでしょうか?

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

取りあえずインポートしてあるとして・・ テーブル名が、T1 フィールド名が、F1 とすると更新クエリで行います 下記SQL文のテーブル名、フィールド名を実際のものに置き換え クエリのSQLビューに貼り付けて一旦閉じて後、再度開いて下さい。 UPDATE T1 SET T1.F1 = Replace([F1],Chr(10),Chr(13) & Chr(10)); これでExcelの改行コードが変換されます。 テーブルを開いて行の高さを大きくとって確認下さい。 ※バックアップは取ってからお試しを

apache6
質問者

お礼

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

その他の回答 (1)

noname#140971
noname#140971
回答No.1

[イミディエイト] ? 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

apache6
質問者

お礼

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

関連するQ&A

  • AccessからEXCELへのエクスポート・・・みたいな・・・・

    accessからexcelへのデータエクスポートなのですが・・・ excelへの指定されたセルへのエクスポートならわかるのですが・・・ accessのデータ量(レコード数)が変化するので・・・その方法がわかりません・・・ 教えてください・・・。

  • ACCESSのデータをExcelにエクスポート

    ACCESSのデータをExcelにエクスポートした際に、セル内に余計な改行が入ってしまう。 12345-001 14532-001 といった数字が入っているセルがACCESS上では、ちゃんと改行もされず入力されているのですが、 EXCELにエクスポートすると-001というところがすべて改行されてしまっています。 改行されないように何か方法はありますでしょうか?

  • エクセルで Alt+Enter を入力すると新しい

    エクセルで セルを入力状態にせず、Alt+Enter を入力すると新しいファイルが作成されます。 調べてもAlt+Enter はセル内改行としか出てこず、新規作成はCtrl+N のはずです。入力状態にし忘れるたびに新しいファイルが立ち上がってくるのは煩わしいのですが、直し方はありますか?

  • Excelのセル内の行数を返す数式

    Excelのセル内の行数を返す数式はあるでしょうか。 一つのセルを編集中に[alt]+[enter]キーでセル内の改行ができますが、その改行した数を返す式はあるでしょうか。 なければいい手はないでしょうか

  • ACCESSからEXCELにエクスポートしたい!

    かなり困っています... ACCESSからEXCELにデータをエクスポートしたいのですが、ACCESS側の テーブルの中身すべてをEXCELに吐き出すのではなくて、1レコードづつ エクスポートしたいのです。 やりたいことは... ACCESS側のテーブルをEXCELにエクスポートする際、あらかじめ、テーブルの 一つのフィールド(部門コード)を昇順に並べておいて、エクスポートしていきながら、部門コードが変わったら、それまでの部門の金額の合計を出し、その合計もエクスポートして、次の部門に進み、最終的に金額の総合計をだそうと考えています。 この部分をVBAで組もうと考えているのですが... エクセルのレイアウトを簡単に書くと 部門 100      名称    金額            aaa  1000      bbb 500 合計         1500 部門 200      名称    金額            ccc  700      ddd 400 合計         1100 こんな感じです ちなみにOS WIN98 ACCESS2000,EXCEL2000です 皆様、よろしくお願いします。

  • AccessのマクロでExcelにエクスポートしたい

    レコード数が5万程度あるクエリを マクロでExcelにエクスポートしたいのですが、 「出力」を選ぶと、「出力する行が多すぎて、指定した出力形式またはMicrosoft Accessの制限を越えています。」のエラーメッセージが表示されてしまいます。 マクロではなく、普通にエクスポートする際は、 Excelのバージョンを選択できるので、正常処理できるのですが、マクロの場合はどうすればいいのでしょうか? 宜しくお願いします。

  • エクセルのセル内での数字の並び替え

    こんにちは。 エクセルについて質問です。一つのセルの中に10桁の数字がいくつかあります。 これを同じセル内で縦に並べることは可能でしょうか? ALT + ENTERで数字を一つずつ改行するよりも何かもっと効率的な方法はあるのか、何方か教えていただけますか? (例えばマクロとかアクセスで) 数字は常に10桁なのですが、行によっては9個以上あることもあります。 例: セルA1 0011005408 8701005438 8721005627 8731005602 8741005539 8861005557 8701005441 8721005629 8861005559 ↓ これを、同じセル内で 0011005408 8701005438 8721005627 8731005602 8741005539 8861005557 8701005441 8721005629 8861005559 どうぞよろしくお願いします。

  • Access Excelにエクスポートすると、「0」が消える

    AccessからExcelにエクスポートすると、「0」が消え、空白セルになるのですが、報告書の体裁として「0」という数字を残したいのです。 クエリでカウントして「0」を表示させることは出来たのですが、このクエリをエクスポートし、そのExcelファイルを開くと、「ファイルエラー:表示形式の設定が失われた可能性があります。」と表示され、0の部分は空白セルになってしまいます。 どのように解決すればよいでしょうか? マクロで”空白なら「0」を表示”と作ればよいのでしょうか?

  • Excel(エクセル)のセル内の改行がAlt+Enterでできなくなりました。

    いろいろ調べてみたのですがどうしてもわからないので教えてください。 エクセルのセル内の改行をAlt+Enterキーで、この前までは改行できていたのですが、急に使えなくなってしまいました。 Altキーが無効になっているのかと思い、ユーザ補助のキーボードの設定を見てみたのですが、見てもわかりませんでした。 直す方法などを教えてください。 尚、Windows XP Excel2000を使用しています。 よろしくお願い致します。

  • ACCESS エクスポートについて

    ACCESSのエクセルへのエクスポートについて お世話になりあます。 既存エクセルにACCESSのDoCmdを使用してエクスポートしようと考えています。 エクスポート先は既存エクセル(セルに数式あり)です。 DoCmd.TransferSpreadsheet acExport, SpreadsheetType, TableName, FileName , True,SheetName という分を作り実行しましたが、「ワークシートのセルが削除できません」と出てしまい エクスポートできません。 ヘルプを見ると数式が含まれていると出来ないと書いてありました。 数式を消さないと出来ないのでしょうか。 お手数ですが、分かる方おられましたら教えて下さい。

専門家に質問してみよう